Two numbers, not one
Every game on this site prints its house edge, and most of the arithmetic on the Journal starts from that figure: 1% of the stake, per bet, on average. The word doing the work in that sentence is *average*. One bet never costs 1%. On dice at roll under 50 it costs the whole stake or returns 98% profit, and the 1% is what those two outcomes come to when weighted by their chances. A player sees the outcomes. The average is something only a very long record can show, and this article is about how long.
Two numbers describe a bet, not one. The first is the expected result per unit staked: at roll under 50 the win chance is 4,999 ÷ 9,999 and the payout ×1.98, so the expected return is 0.49995 × 1.98 = 0.98990, an edge of 1.01 cents on the dollar. The second is the standard deviation of one roll’s result, the typical distance of a single outcome from that average. For a ×1.98 coin flip it is √(0.49995 × 1.98² − 0.98990²) = 0.990, 99 cents on the dollar. The swing is 98 times the cost.
| SETTING | WIN CHANCE | PAYS | EDGE PER ROLL | STANDARD DEVIATION | SWING ÷ EDGE |
|---|---|---|---|---|---|
| Under 90 | 89.999% | ×1.10 | $0.0100 | $0.330 | 33 |
| Under 50 | 49.995% | ×1.98 | $0.0101 | $0.990 | 98 |
| Under 10 | 9.991% | ×9.90 | $0.0109 | $2.969 | 273 |
| Under 2 | 1.990% | ×49.50 | $0.0149 | $6.913 | 466 |
Win chances are the true counts over 9,999 results and the edge is the true return of each setting, which is why the under-2 row costs 1.49% rather than 1%: 0.99 ÷ 0.02 = 49.5 lands exactly, but 199 of 9,999 is 1.990%, not 2%. Standard deviation = √(chance × payout² − return²). Calculation for this article.
That last column is the whole story. A number that is 98 times bigger than the thing you are trying to measure hides it completely in any single roll, and the only way to shrink it is to roll many times, because averages are steadier than the things averaged. How much steadier is the oldest result in probability, and it is not generous.
The square-root rule and the 40,000-roll crossing
Over N independent rolls, the expected loss is N times the edge: it grows in a straight line. The standard deviation of the total is the per-roll figure times √N: it grows too, but only with the square root. Ten times the rolls means ten times the expected loss and about three times the swing. So the ratio of loss to swing, the thing that decides whether the edge is visible, grows as √N, and it crosses any threshold you name at a definite count.
| ROLLS | EXPECTED LOSS | STANDARD DEVIATION | LOSS ÷ SWING | CHANCE OF BEING AHEAD |
|---|---|---|---|---|
| 1 | $0.01 | $0.99 | 0.01 | 49.99% |
| 10 | $0.10 | $3.13 | 0.03 | 37.7% |
| 100 | $1.01 | $9.90 | 0.10 | 46.0% |
| 1,000 | $10.10 | $31.31 | 0.32 | 36.3% |
| 10,000 | $101 | $99 | 1.02 | 15.4% |
| 40,000 | $404 | $198 | 2.04 | 2.0% |
| 100,000 | $1,010 | $313 | 3.23 | 0.06% |
| 1,000,000 | $10,099 | $990 | 10.2 | ≈ 0 |
“Ahead” means more money than you started with. The chance is the exact binomial sum over 4,999 ÷ 9,999 (a normal approximation gives 45.9%, 37.4%, 15.4%, 2.1% for the 100-, 1,000-, 10,000- and 40,000-roll rows). Ten rolls looks worse than 100 because five wins of ten pays ×1.98 × 5 = 9.90, which is behind; it takes six. Calculation for this article; 10,000 simulated 100-roll sessions averaged −$1.03 with a standard deviation of $10.06 and 46.1% ahead, and 400 sessions of 40,000 rolls averaged −$374 with 1.8% ahead.
Read down the last column. After a hundred rolls, 46 players in a hundred are up: the game is, for practical purposes, a fair coin with a tiny tilt nobody could detect. After a thousand, still more than a third. The expected loss does not reach one standard deviation until about ten thousand rolls, where 15% are still ahead, and does not reach two, the conventional line for “this is not noise”, until roughly forty thousand. The exact crossing for two standard deviations is (2 × 0.990 ÷ 0.0101)² = 38,439 rolls; for a clean ×2 limbo target with its 1% edge exactly it is 39,996. Call it forty thousand.
The rule is general. Write σ for the standard deviation of one bet per unit staked and e for the edge; the expected loss clears k standard deviations after N = (k × σ ÷ e)² bets. The ratio σ ÷ e is the only input, and the table above shows it is never small: for the gentlest setting on the site it is 33, which squared and times four is still over four thousand bets.
Every setting has its own number
Because the swing depends on the payout and the edge does not, every target hides the edge for a different length of time. On limbo the arithmetic is clean enough to write in one line: the win chance is 0.99 ÷ T and the payout T, so the variance per unit is 0.99T − 0.9801, and the two-standard-deviation crossing is 4 × (0.99T − 0.9801) ÷ 0.0001 = 39,600 × T − 39,204 rounds. A target of ×2 gives 39,996; every extra ×1 of target adds 39,600 rounds of invisibility.
| GAME · SETTING | WIN CHANCE | SWING PER $1 | ROUNDS TO 2σ | ROUNDS TO 1σ |
|---|---|---|---|---|
| Dice · under 90 (×1.10) | 89.999% | $0.33 | 4,347 | 1,087 |
| Limbo · ×1.10 | 90% | $0.33 | 4,356 | 1,089 |
| Limbo · ×1.50 | 66% | $0.71 | 20,196 | 5,049 |
| Dice · under 50 (×1.98) | 49.995% | $0.99 | 38,439 | 9,610 |
| Limbo · ×2 | 49.5% | $1.00 | 39,996 | 9,999 |
| Limbo · ×5 | 19.8% | $1.99 | 158,796 | 39,699 |
| Dice · under 10 (×9.90) | 9.991% | $2.97 | 297,223 | 74,306 |
| Limbo · ×10 | 9.9% | $2.99 | 356,796 | 89,199 |
| Dice · under 2 (×49.50) | 1.990% | $6.91 | 866,756 | 216,689 |
| Limbo · ×100 | 0.99% | $9.90 | 3,920,796 | 980,199 |
| Limbo · ×1,000 | 0.099% | $31.45 | 39,560,796 | 9,890,199 |
| Limbo · ×10,000 | 0.0099% | $99.49 | 395,960,796 | 98,990,199 |
Rounds to kσ = (k × swing ÷ edge)², using each setting’s true edge. The dice rows use the true win counts over 9,999 results and the floored multipliers, which is why under 10 needs fewer rounds than limbo ×10: its edge is 1.09%, not 1%. Calculation for this article.
The ×100 row deserves a second look, because it is the one that sounds wrong. Four million rounds is not a misprint. Across 100 rounds of limbo at ×100 the expected loss is $1 and the standard deviation is $99; 26% of players are ahead, and 63% have seen at least one win. Across a million rounds, 15% are still ahead. The win is rare, but when it comes it is a hundred units at once, and a result that lumpy takes a very long record to average. A high target is not a worse price. It is the same price, hidden for longer.
| ROUNDS | EXPECTED WINS | EXPECTED LOSS | STANDARD DEVIATION | CHANCE OF BEING AHEAD |
|---|---|---|---|---|
| 100 | 0.99 | $1 | $99 | 26.1% |
| 1,000 | 9.9 | $10 | $313 | 40.4% |
| 10,000 | 99 | $100 | $990 | 43.3% |
| 100,000 | 990 | $1,000 | $3,131 | 36.7% |
| 1,000,000 | 9,900 | $10,000 | $9,900 | 15.5% |
| 4,000,000 | 39,600 | $40,000 | $19,801 | 2.2% |
Exact binomial over 0.99% up to 100,000 rounds, normal approximation beyond. At 100 rounds a single win returns exactly the 100 staked, so “ahead” needs two. Calculation for this article.
What forty thousand rolls is in hours
The price of an hour priced dice at one bet every four seconds, 900 an hour, and a more human one every twelve, 300 an hour. At those paces the crossing counts turn into calendars.
| SETTING | ROUNDS | AT 900 AN HOUR | AT 300 AN HOUR |
|---|---|---|---|
| Dice · under 90 | 4,347 | 4.8 h | 14.5 h |
| Dice · under 50 | 38,439 | 43 h · 5.3 eight-hour days | 128 h · 16 days |
| Limbo · ×10 | 356,796 | 396 h · 50 days | 1,189 h · 149 days |
| Limbo · ×100 | 3,920,796 | 4,356 h · 545 days | 13,069 h · 1,634 days |
Eight-hour days of nothing but this one setting at this one pace. Calculation for this article.
No player keeps that record. Sessions are short, settings change, and a week’s dice is interleaved with crash and mines, each with its own swing. The player’s view of a 1% edge is therefore permanent fog: a run of sessions that is up, a run that is down, and no single number anywhere that says which way the floor tilts. That is not a flaw in the player’s attention. It is what 98 to 1 looks like from the inside.
The house is in a different position for one reason only: it adds everyone up. A thousand players who each roll forty times have rolled forty thousand times between them, and the house’s ledger for that day sits at 2.04 standard deviations below zero, exactly as the table says, before any one of those thousand has seen anything. The law of large numbers is not on the house’s side because the house is clever. It is on the side of whoever makes the most bets, and the house makes all of them.
What the number is for
Three things follow from a forty-thousand-roll fog, and none of them is “the edge is small enough to ignore”.
- A session proves nothing about a game. Being up after a hundred rolls happens to 46 players in a hundred on a 1% game; being down after a hundred would happen to more than half on a game with no edge at all. Neither is evidence that the game is generous, rigged, hot or cold. The gambler’s fallacy is this fog read as a signal.
- The swing is the thing to size for. Over a session of N bets the amount you should expect to be up or down by, two sessions in three, is the standard deviation times √N times the stake: $9.90 for 100 rolls at $1 on under 50, $99 for 100 rounds at ×100. If that figure is a large share of the bankroll, risk of ruin is the article, and it is not reassuring.
- The edge is the thing to price for. It cannot be seen, but it can be read: it is in the engine, in the multiplier, in the published return, and over the only timescale that matters to a house it is the whole of the result. The cost of an evening is edge × stake × bets, whatever the evening looked like.
The fog is real and it is symmetric. It hides the edge from a winning player and from a losing one alike, and it hides a fair game and an unfair one equally well over any stretch a person can play. The way out is not a longer record. It is a published number and a round you can recompute, which is the part of this a hash can cover.
Feel the swing, read the priceRoll under 50 pays ×1.98 on 4,999 of 9,999 results; the fairness panel shows the committed seed and the 1% is in the multiplier, not in the fogDice →
How many bets does it take to see the house edge?
For a ×1.98 coin-flip bet with a 1% edge, the expected loss exceeds two standard deviations of the swing after about 40,000 bets (exactly 38,439 on dice at roll under 50, 39,996 on limbo at ×2). After 100 bets 46% of players are still ahead; after 10,000, 15%.
What is the formula for how many bets until the edge shows?
N = (k × σ ÷ e)², where σ is the standard deviation of one bet per unit staked, e the house edge per unit, and k the number of standard deviations you want the expected loss to clear. For σ = 0.99 and e = 0.0101 with k = 2, N is about 38,000.
Does a higher multiplier hide the house edge longer?
Yes. The edge is the same but the swing grows with the payout. On limbo the two-standard-deviation crossing is 39,600 × target − 39,204 rounds: about 40,000 at ×2, 357,000 at ×10 and 3.9 million at ×100.
If I am ahead after 1,000 bets, does that mean the game is fair or favourable?
No. On a 1% game 36% of players are ahead after 1,000 coin-flip bets, and on a game with no edge at all half are behind. A thousand results cannot distinguish a 1% edge from zero; the edge is read from the engine and the multiplier, not from a session.
Why does the casino see the edge when players cannot?
Because it counts every player’s bets together. A thousand players making forty bets each are forty thousand bets in the house ledger, past the two-standard-deviation crossing, on a day when no single player has made enough bets to see anything.
How big a swing should I expect in a session?
About the per-bet standard deviation times the square root of the number of bets times the stake, two sessions in three: $9.90 over 100 rolls at $1 on dice under 50, $31 over 1,000, $99 over 100 rounds of limbo at ×100.
- Betkyo engine source, house service: OriginalBaseDiceService.kt — 9,999 equally likely results, win chance and multiplier derivation ((1 − house edge) ÷ win chance, floored to two decimals), strict comparison
- Betkyo engine source, client: curve100() in _shared/rng.ts and demoLimboBet() in _shared/demoLocal.ts — limbo outcome 0.99 ÷ (1 − u), win chance 0.99 ÷ target, payout stake × target
- Calculation for this article: per-setting expected return and standard deviation per unit staked (√(chance × payout² − return²)); crossing counts (k × σ ÷ e)² for k = 1 and 2; exact binomial chance-of-being-ahead sums for dice under 50 (4,999 ÷ 9,999, ×1.98) up to 100,000 rolls and limbo ×100 (0.99%) up to 100,000 rounds, normal approximation beyond; cross-checked by simulation — 10,000 sessions of 100 rolls (mean −$1.03, SD $10.06, 46.1% ahead) and 400 sessions of 40,000 rolls (mean −$374, SD $199, 1.8% ahead)
- Pace figures (900 and 300 bets an hour) from the Journal’s “The price of an hour” article



