Dice Roller
runs in your browserRoll any dice in standard notation: 3d6+2, d20, 4d6kh3 for an ability score, advantage and disadvantage. Fair rolls, in your browser.
Add 3 dice of 6 and then add 2. That gives 5 to 20, averaging 12.5.
about this tool
Dice notation, which is smaller than it looks
3d6+2 is the whole language: how many dice, how many sides, and what to add.
The count can be left off, so d20 is one twenty-sided die. Terms can be added
together, so 2d6+1d4+3 rolls two six-sided dice, one four-sided die, and adds
three. A term can be subtracted, so 1d8-1d4 is a real thing you can write.
Dice from d2 up to d1000 all work, which covers the polyhedral set and the
percentile die, and a few that only exist in software.
Keeping and dropping
The part that trips people up is the suffix. 4d6kh3 rolls four dice and
keeps the highest three, which is how a Dungeons & Dragons ability score is
usually made. The other three are kl to keep the lowest, dh to drop the
highest and dl to drop the lowest.
Advantage is 2d20kh1 and disadvantage is 2d20kl1, both on the buttons. The
die that lost is shown struck through rather than removed, because seeing the
roll you did not get is half the point of rolling with advantage.
A suffix that keeps every die or drops every die is refused rather than
ignored. 4d6kh4 keeps all four, which changes nothing, and is almost always a
typo for 4d6kh3.
Why the randomness is the product
A die is the one tool where being nearly right is worthless, so two things are done properly.
The source is crypto.getRandomValues, the same one the browser uses for
keys, rather than Math.random, which browsers are free to implement however
they like.
The face is then taken by rejection sampling rather than a remainder. This
sounds like pedantry and is not. A 32-bit number is not a multiple of six, so
turning one into a die face with value % 6 hands the low faces a few extra
chances: across the byte range it is 43 outcomes for each of the first four
faces against 42 for the last two. Taking the range properly means discarding
the values in that short tail and drawing again, which costs an occasional
extra draw and nothing else.
What it does not do
There is no saved history, no account and no dice tray shared between players. Nothing is stored on your device, which is the site's rule everywhere, so the last twelve rolls are on screen until you leave and then they are gone. Copy them if they matter.
Rolls are not verifiable by anyone else either. If you need a roll a suspicious opponent can check, you need a scheme where both sides commit to a value first, and a web page cannot give you that on its own.
If you only need a number in a range rather than dice, that is a simpler job than this one, and a two-way decision is simpler still.
questions
- What does 3d6+2 mean?
- Roll three six-sided dice, add them together, then add two. The number before the d is how many dice, the number after it is how many sides, and anything after that is added or subtracted from the total.
- How do I roll with advantage?
- Write 2d20kh1: roll two twenty-sided dice and keep the highest one. Disadvantage is 2d20kl1, keeping the lowest. Both are on the buttons, and the die that was set aside is shown struck through rather than hidden, so you can see the roll you did not get.
- How do I roll an ability score?
- Write 4d6kh3, which rolls four six-sided dice and keeps the best three. That is the usual method, and it averages about 12.2 rather than the 10.5 you would get from 3d6.
- Are these rolls actually random?
- They come from the browser’s cryptographic random source, not the ordinary one, and the face is taken without the rounding bias that makes a naive roller favour its low numbers. The difference is small but real, and it is the only thing a dice roller has to get right.
- Can I keep my roll history?
- The last twelve rolls stay on screen and can be copied, but nothing is stored between visits. This site saves nothing on your device at all, so a refresh starts a clean table.