Every Monopoly player works it out eventually: 7 shows up constantly, and 12 almost never does. Then someone at the table insists the dice are weighted.

They are not. A 7 is exactly six times more likely than a 12, and that ratio comes from nothing but counting. Both dice are perfectly fair — the lopsidedness appears the instant you add them together.

This matters beyond board games. If you build a game, balance a homebrew rule, or reach for two dice when you wanted a flat spread, the curve is either doing your work for you or quietly ruining it. Here is exactly what it looks like, for every combination the tool supports.

One Die Is Perfectly Flat

Start with the baseline, because everything else is a departure from it. Rolling a single die gives one outcome per face, each equally likely:

Math.floor(Math.random() * sides) + 1

Six faces, six outcomes, 16.67% each. There is exactly one way to roll a 4 on a d6 — the die shows 4. Nothing about a single die favours the middle, which is why one d6 averages 3.5 and a d20 averages 10.5, sitting right between their extremes with no bump anywhere.

Statisticians call this a uniform distribution. Every value has the same weight, and the graph is a straight flat line. Hold on to that picture, because two dice destroy it.

Why Two Dice Bend Into a Curve

Roll two dice and you are no longer asking "which face?" — you are asking "which pair of faces?", then collapsing that pair into a sum. Two dice give 6 × 6 = 36 equally likely pairs, but only 11 possible totals. Thirty-six things do not divide evenly into eleven boxes.

Count the ways to reach each total and the reason becomes obvious. A total of 12 needs 6+6 and nothing else — one pair out of 36. A total of 7 can be made six different ways: 1+6, 2+5, 3+4, 4+3, 5+2, 6+1.

Total on 2d6Ways to make itProbability
21   (1+1)2.78%
325.56%
438.33%
5411.11%
6513.89%
7616.67%
8513.89%
9411.11%
1038.33%
1125.56%
121   (6+6)2.78%

Six ways versus one way. That is the entire explanation — 16.67% against 2.78%, a factor of six, and no weighted dice required.

Seven wins because it is the only total reachable from every single face. Whatever the first die shows, there is always exactly one value on the second die that completes a 7. No other total can say that: if the first die rolls a 1, there is no way to reach 8.

Why 1+6 and 6+1 count separately This is the step people argue about. The two dice are physically distinct objects, so 1+6 and 6+1 are genuinely different outcomes — they just happen to produce the same total. Counting them once would mean claiming the dice can somehow tell they are being added, and the maths would stop matching what actually lands on the table.

2d6 Is Not a d12

Both cover roughly 2 to 12, so they get swapped for one another constantly. They behave nothing alike.

Two d6 addedOne d12
Possible results2 to 12 — eleven outcomes1 to 12 — twelve outcomes
Can roll a 1?No — the floor is 2Yes
Chance of the highest2.78%8.33%
Chance of the middle16.67% at 78.33%, same as any face
ShapePeaked — results clusterFlat — every result equal
Average7.006.50

Swapping one for the other changes the feel of a game completely. On 2d6 a maximum roll is a genuine event at 2.78%; on a d12 it lands three times as often. And 2d6 cannot produce a 1 at all — a whole outcome quietly disappears.

The practical rule: adding dice makes results predictable, adding sides makes them swingy. If you want reliable, middling outcomes with rare extremes, add dice. If you want every result to feel possible, use one bigger die.

Three Dice Make It Steeper

Add a third d6 and the curve sharpens. Now there are 6 × 6 × 6 = 216 combinations sharing 16 totals, and the extremes get squeezed harder:

Total on 3d6CombinationsProbability
3 (minimum)1 of 2160.46%
610 of 2164.63%
925 of 21611.57%
10 and 1127 of 216 each12.50% each
1225 of 21611.57%
1510 of 2164.63%
18 (maximum)1 of 2160.46%

An 18 on 3d6 is a 1-in-216 event. Rolling 16 or higher — the whole top band — happens only 4.63% of the time, about one roll in 22. Meanwhile 10 and 11 together take up a quarter of all outcomes.

This is why 3d6 has survived as a character-generation method for fifty years. It hands out ordinary results almost always and exceptional ones just rarely enough to be memorable.

The d20 Stays Flat On Purpose

Against all that, a single d20 is deliberately boring: twenty faces, 5% each, no curve at all. A 20 is exactly as likely as an 11.

That flatness is a design decision, not an oversight. When a rule says "roll 15 or higher", a flat die makes the answer instantly readable — 6 of 20 faces succeed, so 30%. On any curve you would need a table to know what a target number means.

TargetFaces that succeedChance on a flat d20
5 or higher16 of 2080%
11 or higher10 of 2050%
15 or higher6 of 2030%
18 or higher3 of 2015%
20 exactly1 of 205%

Every row is just "faces that work, divided by twenty". That readability is the d20's whole job.

What Advantage Actually Buys You

Rolling two d20s and keeping the higher one — advantage, in tabletop terms — is where flat and curved meet. Keeping the better of two rolls is not a curve on the sum, but it is very much not flat either.

The average jumps from 10.5 to 13.825. Disadvantage, keeping the lower, drops it to 7.175 — the same 3.325 in the opposite direction. What is more interesting is that the benefit is not constant:

TargetNormalAdvantageDisadvantageAdvantage gains
5+80%96.00%64.00%+16.00 pts
11+50%75.00%25.00%+25.00 pts
15+30%51.00%9.00%+21.00 pts
18+15%27.75%2.25%+12.75 pts
20 exactly5%9.75%0.25%+4.75 pts

Advantage is worth most on a coin-flip roll and least on the extremes. At an 11+ target it turns a 50/50 into a 75% shot — a full 25 percentage points, the biggest swing available. On an easy 5+ check it adds 16 points, and on a natural 20 it not quite doubles a small number, 5% to 9.75%.

The reason is simple once you see it: advantage only changes the result when the two rolls straddle the target. On a near-certain or near-impossible check, both dice usually land on the same side of the line and the second roll changes nothing.

Rolling advantage here Pick D20, set the count to 2, roll, and take the higher of the two faces — the tool shows them side by side, so you do not need a separate mode. Ignore the Total for this one: advantage cares about the individual dice, not the sum. Take the lower value instead and you have rolled disadvantage.

Rolling Dice on CodBolt

  1. Open the Dice Roller and pick your die: D4, D6, D8, D10, D12 or D20.
  2. Set how many dice to roll, up to 10 at once. Three D6 gives you the 3d6 curve above; two D20 gives you advantage.
  3. Roll. Each die is drawn independently, so the faces are what matter — the Total underneath is the sum, and that is the number the curve applies to.
  4. Check the recent-rolls list. It records the individual faces as well as the total, like D6: 4+3+6 = 13, so a result stays verifiable after the dice have moved on.
  5. Switching die type clears the previous result, so what is on screen always belongs to the die you have selected.

Nothing leaves your device. The roll is computed inside the page itself, so there is no server in the loop that could log it, replay it, or nudge a face on the way back.

Feels like the dice hate you? Long runs of terrible rolls are ordinary, and they turn up far more often than anyone expects. Exact figures for how frequently streaks appear in a genuinely fair sequence are in the coin flip fairness guide. Separately, if you need values that never come up twice, dice are simply the wrong instrument — they have no memory of the last face — and the guide to repeated numbers covers what to use instead.
Other ways to decide For a straight two-way call, Flip a Coin is quicker than a die. For any range that is not a standard die size — 1 to 37, say — use the Random Number Generator. And to choose between names rather than numbers, Random Picker takes the list directly — though a repeated name is a doubled chance. All of them sit under Random Tools.
Try it now — CodBolt Dice Roller

D4 through D20, up to 10 dice at once, with running totals and roll history. Free and 100% private.

Open Tool