Index / Chance
Dice Roller
Any number of dice with any number of sides, in the usual notation. Every roll comes with the exact odds of the total it produced, worked out from the whole distribution rather than estimated.
Dice
Written
3d6, d20,
2d10+5, or several at once:
4d6+1d8-2. Any number of sides, not just the ones that
exist as a solid.
Common dice
Ready
--
Possible range
--
Average roll
--
This roll
Rolls so far
Where the numbers come from
The randomness is the browser's cryptographic generator,
Taking a random 32-bit number modulo 6 is not fair, and this page does not do it. 232 is not a multiple of 6, so the low faces would come up very slightly more often — about one part in 700 million for a d6, but a clean multiple of 3 for a d3. Instead the generator draws again whenever the number lands in the short remainder at the top of the range: for a d6 that is the last four values of 4,294,967,296. That is rejection sampling, and it makes every face exactly equally likely rather than nearly so.
The odds are exact, not simulated. The distribution of the total is built by convolving the dice one at a time, which gives the probability of every reachable total. “Better than 82.4% of rolls” is a fact about the dice, not an estimate from a sample. For very large pools the page says it has stopped rather than showing an approximation.
The average of a die with s sides is (s+1)/2, so a d6 averages 3.5 and 3d6 averages 10.5. That figure is arithmetic, not a measurement, and it does not change however unlucky the last ten rolls were.
Every roll is independent. A run of low numbers does not make a high one more likely afterwards, and nothing on this page carries state from one roll to the next. The history below is a record, not an input.
What this page does not do: keep the highest or lowest of a pool (
crypto.getRandomValues, and the page says underneath which
generator it used. If it is missing — which no current browser is
— the page falls back to Math.random and says so
rather than pretending.
Taking a random 32-bit number modulo 6 is not fair, and this page does not do it. 232 is not a multiple of 6, so the low faces would come up very slightly more often — about one part in 700 million for a d6, but a clean multiple of 3 for a d3. Instead the generator draws again whenever the number lands in the short remainder at the top of the range: for a d6 that is the last four values of 4,294,967,296. That is rejection sampling, and it makes every face exactly equally likely rather than nearly so.
The odds are exact, not simulated. The distribution of the total is built by convolving the dice one at a time, which gives the probability of every reachable total. “Better than 82.4% of rolls” is a fact about the dice, not an estimate from a sample. For very large pools the page says it has stopped rather than showing an approximation.
The average of a die with s sides is (s+1)/2, so a d6 averages 3.5 and 3d6 averages 10.5. That figure is arithmetic, not a measurement, and it does not change however unlucky the last ten rolls were.
Every roll is independent. A run of low numbers does not make a high one more likely afterwards, and nothing on this page carries state from one roll to the next. The history below is a record, not an input.
What this page does not do: keep the highest or lowest of a pool (
4d6kh3), exploding dice, or rerolls. It says so when you
type one rather than quietly ignoring the part it does not understand.