The board games come out over the summer holidays in January, and at least one die always turns out to be missing. Or the dice bag is still at home and you need a d20 halfway through a club games night. This free online dice roller for New Zealand throws whatever you do not have to hand. Set how many dice to throw in Dice — anything from 1 to 20 — set how many faces each one has in Sides, and press Generate. The page opens on two ordinary six-sided dice, so a first throw is one click away. Every die is shown on its own and the total of the throw appears underneath, so 3d6 needs no mental arithmetic.
Every roll is made by your browser through the Web Crypto API (crypto.getRandomValues), which provides cryptographically strong random values from your system's own source of randomness, rather than by a JavaScript pseudo-random function such as Math.random(). Turning a raw 32-bit value into a face number is where dice rollers quietly go wrong: taking the value modulo the number of faces is the obvious approach and the biased one, because unless the number of faces divides evenly into 2^32, the lowest faces come up slightly more often than the rest. That flaw is called modulo bias, and it is measurable rather than theoretical. This roller instead discards any value beyond the largest exact multiple of the number of faces and draws again — a technique called rejection sampling. It costs a few extra draws and buys an exact guarantee instead of an approximate one. Your throws are never sent to our server, so we never see or log them, and once the page has loaded they keep working even if the connection drops.
Two fields do all the work, and they map straight onto the dice notation games already use. Dice is how many dice you throw at once, from 1 to 20. Sides is how many faces each of them has, from 2 to 1000 — enough for a d2 coin flip, the full role-playing set of d4, d6, d8, d10, d12 and d20, the percentile d100, and whatever a game invents beyond them. Anything written as NdM is those two fields: 2d6 is Dice 2 and Sides 6, a single d20 is Dice 1 and Sides 20. Rolling 3d6 for a character's stat? Set Dice to 3, Sides to 6, press Generate, and the three faces arrive together with their total. Two switches change how the result looks rather than what it is. Animated 3D Dice, on by default, tumbles a cube for each die before it settles — switch it off and the numbers appear immediately as a plain list. Random color gives every die a colour of its own instead of the standard red, and it shows only while Animated 3D Dice is on, because a plain list has no dice to colour. Pips are drawn for a six-sided die; every other kind shows the rolled number on the face, since there is no dot pattern for a seventeen.
Under the result sits the line that saves the arithmetic: Σ is the total of every die in the throw, beside how long the roll took and a note that it was produced locally. Copy All puts the result on your clipboard and Save to File writes it into a text file — both give you the individual faces, one per line, rather than the sum, so a log of what was rolled stays a log of what was rolled. History keeps your last 10 throws in your own browser: click one to bring it back on screen, total included, copy or delete a single entry, or clear the lot whenever you like. Clear empties the result box and leaves your settings alone.
Are virtual dice better than real ones? On fairness, yes, and the reason is physical. An ordinary moulded die has its pips drilled out and painted, and a drilled pip removes material, so the six face — with six hollows in it — ends up very slightly the lightest and the face opposite very slightly the heaviest. Casino precision dice exist because of exactly that: their pips are filled flush with material of the same density, their edges are cut square rather than rounded off, they are machined to a fraction of a millimetre, and they are still retired after a few hours of play. The dice in a games box are none of those things, and they get worse with time — a chipped corner, an edge rounded by years of shaking, a die dropped onto a duvet instead of tumbled across a table is not really being randomised at all. A virtual die has no geometry to be wrong, no wear and no throwing technique to argue about, and it behaves the same on the ten-thousandth throw as on the first. What it cannot do is sit in your hand. The honest summary is that this roller wins on fairness and loses on ceremony.
A fair die is not the same thing as a fair total. Every face of one die is equally likely, but the moment you add dice together the sums stop being equal, and this catches people out constantly. Two six-sided dice land in 36 equally likely combinations; six of them add up to 7, while exactly one adds up to 2 and one to 12 — so a 7 turns up six times as often as a 12 on perfectly fair dice. Adding a third die tightens the pattern further, which is why 3d6 clusters around the middle and why designers reach for it when a value is meant to be ordinary more often than extreme. One six-sided die averages 3.5, so 2d6 averages 7 and 3d6 averages 10.5, and that arithmetic is usually more useful at the table than any single probability. None of it is bias: it is simply what adding dice does, and it is the reason a game asks for 2d6 rather than a d12 when the two cover the same range.
Dice have no memory. Four sixes in a row do not make a fifth six less likely, a die that has not shown a 1 all evening is not owed one, and no face ever becomes "due" — each throw is independent of every throw before it, and dice cannot know what they did a minute ago. The instinct that insists otherwise is the gambler's fallacy, and it is the same instinct that makes us poor at inventing dice rolls ourselves: asked to write down a plausible run of throws, we avoid repeats, alternate high and low, and spread the numbers far more evenly than chance ever does. Genuine randomness produces clumps, streaks and long gaps instead. A sequence that looks suspiciously tidy is more likely to have been made up by a person than thrown.
Why choose this dice roller?
- Browser-only rolling: dice are thrown on your device and never sent to our server
- Web Crypto API randomness: cryptographically secure, not Math.random()
- No modulo bias: rejection sampling keeps every face equally likely
- Any die a game asks for: 1 to 20 dice at once, from a d2 up to a d1000
- The total counted for you: Σ adds the whole throw, so 3d6 needs no arithmetic
- Animated 3D dice, or the animation switched off for an instant plain list
- A colour per die, so several dice are easy to tell apart at a glance
- History and Save to File: keep a copy of every throw
- Unlimited and free: no sign-up, no usage limits, nothing on our servers
Dice turn up wherever a game needs a number nobody chose. At a club games night or in the back of a games shop, players make an attack roll on a d20, throw 3d6 for a stat and a d100 for a percentile check — and the table whose dice bag is still at home plays on regardless. The summer holidays do the same thing to a board game taken up to the bach: the dice have gone missing, so set Sides to 6, Dice to 2, and carry on. Play-by-post groups and tables meeting over a video call roll on one shared screen, so that everybody watches the same faces land at the same moment. Back at school in February, a Year 5 class runs the classic experiment on squared paper: throw 2d6 60 times, tally the totals, and let the shape appear on the board. Designers work out whether a mechanic is as swingy as it feels before anything goes to print. And plenty of throws settle nothing more than who goes first, who puts the kettle on, or which of two plans wins — the roll-for-it decisions people have been making with dice for several thousand years.
This roller has a few honest limits worth knowing. One throw uses one kind of die: the value in Sides applies to every die in it, so a d20 and a d6 together take two throws rather than one. There are no modifiers, no advantage or disadvantage, no exploding dice and no notation box — you get faces and their total, and whatever a rule adds on top is yours to add. Σ counts every die in the throw, while Copy All and Save to File record the individual faces rather than the sum. The animation is always a six-sided cube whatever the number of faces, because it is decoration: the face it settles on is the throw the engine has already made. Rolls are local to your device, so a table with players in two islands still needs one person to roll and share the screen — this roller produces a throw you can explain, not a throw a third party can certify. And a die drawn from a cryptographically secure source is still just a fair die: it has no connection to any lottery or casino draw and gives nobody an edge. Inside those limits the guarantee is a strong one — every face of every die has exactly the same chance, on every single throw.