Dice Roller

How to use it

  1. Tap a quick button (d4 through d100, 2d6, 3d6, 4d6kh3, advantage and disadvantage) or type any dice expression and press Roll or Enter.
  2. The total appears with every die shown; dice that were dropped by a keep or drop rule are struck through.
  3. Below, the odds panel shows the range, average, standard deviation and a chart of every possible total; enter a target to see the chance of rolling at least that much.

How it works

Each die draws a 32-bit value from crypto.getRandomValues and keeps it only if it falls below the largest multiple of the number of sides, then takes the remainder; values above that line are discarded and redrawn, which removes the small bias a plain remainder would have. The exact odds are calculated separately: plain dice by convolution, keep and drop terms by going through every possible outcome, and subtraction by reversing a term’s distribution.

What we tested

On October 14, 2026 we compared the calculator’s odds for 14 expressions (including 4d6kh3, 4d6dl1, advantage, disadvantage, 5d4kl2, d20−d6 and 2d10dh1) with an independent Python enumeration in exact fractions: every probability matched to within 2.8e-17. We rolled d2, d6, d7, d20 and d100 600,000 times each through the page’s own function (chi-square 2: 0.65, 6: 3.21, 7: 0.5, 20: 8.87, 100: 112.95, all far below the 0.1% critical values), and 200,000 rolls each of 3d6, 4d6kh3 and 2d20kh1 matched their exact odds (chi-square 15.38, 12.38 and 11.14). A deliberately broken “drop lowest” rule failed the test. In Chromium: a d20 button rolled a number from 1 to 20; typing 4d6kh3 and Enter rolled four dice with one struck through and showed an average of 12.2446; 2d6+3 showed range 5 to 15, average 10 and a 58.33% chance of at least 10; advantage (2d20kh1) showed 51.00% for 15 or more with a 20-bar chart; an unfinished expression showed a message; recent rolls were listed; 3d6 rolled on a 390 px phone with no errors.

RollFact from the exact odds
3d6A total of 10 has probability 1/8
4d6kh3 (stats)Average 12.2446
2d20kh1 (advantage)15 or more: 51% (a single d20: 30%)

Sources

Checked on .

Frequently Asked Questions

How do I write dice notation?+
NdS means N dice with S sides: 3d6 is three six-sided dice, d20 is one twenty-sided die and d% is a d100. Add or subtract numbers and other dice (2d6+3, 1d8+1d6). Add kh or kl to keep the highest or lowest dice, or dh and dl to drop them: 4d6kh3 rolls four dice and keeps the best three.
How do I roll with advantage or disadvantage?+
Advantage is 2d20kh1 (roll two d20s, keep the higher); disadvantage is 2d20kl1. Advantage raises the chance of rolling 15 or more from 30% on a single d20 to 51%.
What is the average of 4d6 drop the lowest?+
12.2446, compared with 10.5 for a plain 3d6, which is why it is a common way to roll character stats. The odds panel shows the full distribution for any expression.
Are these rolls fair?+
Yes. Each die uses your browser’s cryptographic random generator with rejection sampling, which discards the few raw values that would make some faces more likely, so every face has exactly the same chance. Our tests on 600,000 rolls of several dice found no imbalance.
How are the exact odds worked out?+
Plain dice are combined by convolution, adding one die’s probabilities to the next. For keep and drop rolls the calculator goes through every possible outcome when there are no more than two million of them; for 3d6 the chance of a total of exactly 10 is 1/8.
Is anything recorded?+
No. Rolls happen in your browser and the history disappears when you leave the page.

Built by Derek Giordano · Part of Ultimate Design Tools

Privacy Policy · Terms of Service