Skip to main content

Random and game tools

Online Dice Roller

A ready-to-use dice tray for board games and tabletop RPGs. Choose the dice, set the quantity, then roll again as often as you need.

Find another tool

This tool needs JavaScript. If the controls don’t appear, check your connection, enable JavaScript and reload this page.

By customlogic.com.au

How to use this tool

1. Choose a preset or select a die type and quantity. Add another group to mix types, or choose Custom sides for a nonstandard die.

2. Press Roll dice to reveal every face and the total. The modifier is added once. Tap individual dice to hold them, then roll only the unheld dice.

3. Copy or print the current roll. Recent rolls stay in page memory only; changing the dice setup clears the tray but keeps that short history.

How the random choice works

Each unheld die is drawn independently from the integers 1 through its number of sides. The tool uses browser cryptographic random values and rejection sampling to avoid modulo bias. Held dice retain their values. The modifier is applied once to the sum.

Worked example

For 2d6 + 3, faces of 2 and 5 give a total of 10. Holding the 5 means only the other die is drawn on the next roll. Two dice do not produce uniform totals: 7 has more possible combinations than 2 or 12.

Questions and assumptions

Scope and assumptions

This tool uses numeric faces starting at 1. A d100 means 1–100, not a pair of displayed percentile dice. It does not apply game-specific rules such as advantage, exploding dice or automatic success thresholds. Results are immediate; there is no animation that changes the draw.

Can a result be predicted or proved?

The browser supplies cryptographic random values, with no fallback to Math.random. If that source is unavailable, the tool reports an error. Repeated outcomes can happen naturally. A locally editable page and its printout are not independent proof of a draw; no signed server record is created.

Sources and further reading

Built and maintained by Custom Logic. Page updated .