Dice Roller

Roll dice with any number of sides. Set Sides from 2 to 100 and Rolls from 1 to 1000; the output panel fills with that many results, one integer per line, drawn uniformly from 1 to Sides inclusive. Useful for tabletop games (d20, d6, d4) and any picks-from-N decision. For pure 50/50 outcomes see coin flip.

Input
Line 1:1 LF cloud_done Saved locally
Result Dice Roll
0 lines 0 chars

Custom dice for any face count

A die with N sides produces an integer from 1 to N inclusive on each roll, with every value equally likely. The roller draws each integer via floor(random() * sides) + 1, which is the standard formula. Each roll is independent of the previous one, so the same number can come up several times in a row.

Sides ranges from 2 to 100, covering the standard tabletop set (d4, d6, d8, d10, d12, d20) and well beyond. Rolls ranges from 1 to 1000 for bulk runs.

For pure binary outcomes use the coin flip instead. For arbitrary integer ranges (negatives, zero-inclusive, capped at any max) use the random number generator.

How to use dice roller

  1. 1Open the tool. The input panel can be left empty.
  2. 2Set Sides in the option panel (default 6, range 2-100).
  3. 3Set Rolls from 1 to 1000.
  4. 4The output panel fills with that many integers, one per line.
  5. 5Click Copy to grab the list.

Keyboard shortcuts

Drive TextResult without touching the mouse.

Shortcut Action
Ctrl FOpen the find & replace panel inside the input Plus
Ctrl ZUndo the last input change
Ctrl Shift ZRedo
Ctrl Shift EnterToggle fullscreen focus on the editor Plus
EscClose find & replace, or exit fullscreen
Ctrl KOpen the command palette to jump to any tool Plus
Ctrl SSave current workflow draft Plus
Ctrl PRun a saved workflow Plus

What this tool actually does

Any face count from 2 to 100

Sides can be any integer from 2 (a coin-style die) up to 100 (a percentile die plus some). The standard tabletop set (4, 6, 8, 10, 12, 20) all work, as do unusual values like 7 or 13.

Inclusive range 1 to N

Each roll is an integer from 1 to Sides, both endpoints reachable, with equal probability for every value.

Bulk rolls up to 1000

Rolls ranges from 1 to 1000. Each roll is independent; expect repeats and short runs of the same value.

Plain integer output

Each line is one whole number, no decoration. Easy to sum, average, or paste into a spreadsheet.

Browser-only

Computed via Math.random(). No upload. Suitable for casual gaming and fixtures; not cryptographic.

Worked example

Ten rolls of a six-sided die (default settings). Expect short runs of the same value; over many rolls the average converges to (N+1)/2, here 3.5.

Input
Sides: 6 - Rolls: 10
Output
4
6
2
6
1
3
5
3
6
2

Settings reference

Option Effect on output
Sides Number of faces per die. Default 6, minimum 2, maximum 100.
Rolls How many rolls to emit. Default 10, minimum 1, maximum 1000. One per line.
Range Inclusive on both ends: every roll is between 1 and Sides.
Distribution Uniform across the range.
Independence Each roll is independent.
Random source Math.random().

FAQ

Can I roll multiple dice at once and sum them?
Not in one click. Set Rolls to the dice count, copy the result, and sum it in a spreadsheet. Or run the random number generator with Min equal to dice count and Max equal to dice count times sides for a rough single-roll proxy.
Why does the same number keep coming up?
Each roll is independent. Short runs of the same number are normal; over hundreds of rolls every value will appear roughly 1/Sides of the time.
Can I use modifiers like d20+5?
Not directly. Roll the die at Sides 20, copy the result, and add the modifier in a spreadsheet or by hand.
Is this random good enough for tabletop?
For casual games, yes. Math.random() produces uniformly distributed values in [0, 1); the floor-and-add-1 step preserves that uniformity. For competitive play, use physical dice or a vetted RNG.
Is the output sent anywhere?
No. The rolls happen in your browser. Nothing leaves the page.