Skip to the tool

Dice roller

MDV Tools

Tap a die to throw it, tap again to add another, or write the roll in dice notation.

Runs on this device Works offline
tap a die or press roll
How this works

Every face comes from crypto.getRandomValues, the same source the browser uses for keys, not from Math.random. A 32-bit draw that falls in the leftover tail past the last whole multiple of the die's size is thrown away and drawn again, so on a d20 each face has exactly one chance in twenty — no face is favoured by the arithmetic. That makes these dice fairer than most plastic ones, which is not saying much: a moulded die with a bubble in it can lean towards one face for years.

The notation is the one tables use. 3d6 is three six-sided dice added up; 1d20+1d4+3 mixes dice and a flat bonus; d% is a d100. kh keeps the highest and kl the lowest, so 2d20kh1 is advantage and 2d20kl1 disadvantage; dl and dh drop instead of keep, so 4d6dl1 is the usual way to roll an ability score. Any die from d2 to d1000 works, up to a hundred dice at once. Dropped dice are still drawn, dashed, because a roll you cannot see is a roll you cannot check. A natural 20 or a natural 1 on a kept d20 is called out.

The odds are worked out exactly, not simulated: the page builds the full probability of every total by adding the dice one at a time, and for keep and drop it walks every possible throw — up to two million of them, which covers everything a table usually rolls. Past that it gives the range and, where there is a formula, the average, and says it did not work out the rest. "Chance of this or higher" is the number to compare with a target: 11 or more on a d20 is 50%, and with advantage it rises to 75%.

Nothing is kept. The earlier rolls live in this tab and are gone when it closes; the page makes no network requests, and the Dark button keeps its own setting in this browser's local storage.