Skip to content

Online dice roller with full notation

Roll any dice notation — 3d6+2, 1d20, 4d6kh3 — with animated results, keep-highest support, roll history and a live distribution of the totals you rolled.

  • Runs in your browser
  • Nothing you enter is sent
  • Free, no account
Dice notation
NdX with modifiers — 3d6+2, 1d20-1, 4d6kh3 to keep the highest three.

Valid. Range 5 to 20, average 12.5.

Every die uses crypto.getRandomValues with rejection sampling, so all faces are exactly equally likely — no modulo bias, and nothing derived from the clock.

Result
Press Roll (or Enter in the notation box) to throw the dice.

How to use the dice roller

  1. Type dice notation, or tap one of the presets.
  2. Press Roll, or just hit Enter in the notation box.
  3. To roll the same expression many times, set the × field — the outcome distribution chart appears underneath with the mean and standard deviation of the batch.

Individual dice are shown, dropped dice are struck through, and the last forty rolls stay in the history so you can settle an argument about what you actually rolled.

Dice notation

Notation Meaning Range
d20One twenty-sided die1–20
3d6Three six-sided dice, summed3–18
3d6+2Three d6 plus a flat 25–20
1d20-1A d20 with a −1 penalty0–19
2d8+1d6+3Mixed dice pools added together6–25
4d6kh3Roll four d6, keep the highest three3–18
2d20kh1Advantage: roll two d20, keep the higher1–20
2d20kl1Disadvantage: keep the lower1–20
1d100Percentile die1–100

Up to 500 dice per term and 1,000 sides per die, with as many terms as you need. Anything the parser cannot read is explained in plain English rather than silently ignored.

Where the randomness comes from

Every die reads fresh entropy from crypto.getRandomValues, the browser's cryptographically secure random number generator, which is seeded by the operating system. It is not Math.random, and it is not seeded from the clock.

Raw random values are then mapped onto the faces with rejection sampling: values that fall in the incomplete final block of the 2³² range are discarded and redrawn. Taking a simple remainder instead would make the low-numbered faces very slightly more likely — the classic modulo bias. For a d6 the bias is far below any human's ability to notice, but there is no reason to accept it when discarding a value costs nothing.

Why 3d6 is not the same as 1d18

Both range from 3 to 18, but they behave completely differently. A single die is flat: every face is equally likely. Summing several dice produces a bell-shaped distribution, because there are many more ways to make a middling total than an extreme one.

Total on 3d6 Ways to roll it Probability
3 or 1810.46%
4 or 1731.39%
5 or 1662.78%
6 or 15104.63%
7 or 14156.94%
8 or 13219.72%
9 or 122511.57%
10 or 112712.50%

All 216 combinations add up: a 10 or an 11 is twenty-seven times as likely as a 3. Roll a batch of a few hundred here and the chart draws that curve in front of you.

Averages worth knowing

Dice Average Notes
1d42.5Any single die averages (sides + 1) ÷ 2
1d63.5
1d84.5
1d105.5
1d126.5
1d2010.5
3d610.5Same average as 1d20, far tighter spread
4d6 keep highest 3≈12.24The classic ability-score roll
2d20 keep highest≈13.83Advantage — worth roughly +3.3 on average
2d20 keep lowest≈7.17Disadvantage

Keep-highest and keep-lowest have no simple closed-form average, which is why the tool shows the exact range for them but leaves the expected value to a batch simulation. Roll 4d6kh3 a thousand times here and the mean settles very close to 12.24.

Uses beyond tabletop games

  • Board games where the dice have gone missing
  • Classroom probability lessons — batch a thousand rolls and show the distribution forming
  • Random selection when a coin flip has too few outcomes
  • Simulation and playtesting of homebrew game mechanics

Privacy

No server sees your rolls. The history lives in the page and is gone when you close the tab or press Clear.

Questions

What dice notation does it understand?

NdX with any number of terms and modifiers: 3d6+2, 1d20-1, 2d8+1d6+3. It also supports keep-highest and keep-lowest — 4d6kh3 rolls four six-sided dice and keeps the best three, and 2d20kh1 is advantage.

Are the rolls actually random?

They use crypto.getRandomValues, the browser's cryptographically secure generator, with rejection sampling so there is no modulo bias. Nothing is seeded from the clock and every face is exactly equally likely.

How do I roll with advantage or disadvantage?

Advantage is 2d20kh1 (roll two, keep the highest) and disadvantage is 2d20kl1. Both are one tap away in the preset row, and the dropped die is shown struck through so you can see the full roll.

Why does 3d6 produce far more 10s and 11s than 3s?

Because there are 27 ways to roll 10 with three dice and only one way to roll 3. Summing dice produces a bell-shaped distribution — roll a batch and the outcome chart on this page shows the shape emerging.