What the data says. In 100,000,000 simulated spins of a fair European wheel, red came up 48.649% of the time (expected 48.649%), a flat bet on red returned -2.703% (expected -2.703%), the longest run of one colour was 25 spins, one number once went 677 spins without appearing, and the "hottest" number of any 100-spin block appeared in the next 100 spins 2.704% of the time, which is 1 in 37. Hot numbers do not stay hot. Cold numbers are not due. The edge is exactly where the formula puts it.
Method
100,000,000 independent draws from the integers 0–36 using NumPy's default generator (PCG64) with seed 20261024, so the run is reproducible. Red = the 18 standard red numbers; zero counts as a loss for red. Runtime 10.2 seconds. The per-number frequencies are published as CSV and the summary as JSON; the generating script is printed at the end of this page.
Results
| Measure | Simulated | Expected (fair wheel) |
|---|---|---|
| Red frequency | 48.649% | 48.649% |
| Zero frequency | 2.701% | 2.703% |
| Return on a flat bet on red | -2.703% | -2.703% |
| Most frequent number | 12 at 2.707% | any number, 2.703% |
| Least frequent number | 34 at 2.700% | any number, 2.703% |
| Chi-square test of uniformity (36 df) | 40.97 | below 51.0 at the 5% level = no evidence of bias |
| Longest run of one colour | 25 | a run of 26 is expected 0.751 times in 100,000,000 spins |
| Longest drought of a single number | 677 spins (number 3) | P(a given number absent for 677 spins) ≈ 0.000001% |
Colour streaks: how often, versus how often they should happen
| Run length | Observed runs | Expected runs |
|---|---|---|
| 6 or more | 1,362,202 | 1,361,465.2 |
| 10 or more | 76,892 | 76,258.8 |
| 15 or more | 2,045 | 2,078.0 |
| 20 or more | 59 | 56.6 |
| 26 or more | 0 | 0.8 |
The 1913 Monte Carlo run of 26 blacks is expected less than once per 100 million spins. In this dataset the longest run was 25. A casino running a wheel 500 spins a day for a century produces about 18 million spins; a 26-run is rare but not miraculous across all the wheels in the world.
Do hot numbers stay hot?
The spins were cut into 200,000 blocks of 100. In each block the most frequent number was recorded as that block's "hot number", the figure a casino's hot-and-cold board would display. Then its frequency in the next 100 spins was measured: 2.704%, against 1/37 = 2.703%. The hot number was again the hottest number in the next block 2.94% of the time, against 2.70% for a random pick (ties were broken towards the lower number, which inflates this figure slightly). A hot number carries no information about the next 100 spins.
How to read this against the usual claims
- "Number 3 hasn't hit in 200 spins, it's due." In this run a number went 677 spins without hitting on a wheel that is provably fair (chi-square 40.97). Droughts of 200 are routine; the next spin is still 1/37.
- "Red has come up 8 times, bet black." Runs of 10 or more happened 76,892 times here. After each of them the next spin was red with probability 18/37.
- "Bet the hot numbers." Measured: the hot number of the last 100 spins hits in the next 100 at the base rate. Betting it is betting any number.
Reproduce it
import numpy as np
rng = np.random.default_rng(20261024)
spins = rng.integers(0, 37, size=100_000_000, dtype=np.int8)
RED = np.array([1,3,5,7,9,12,14,16,18,19,21,23,25,27,30,32,34,36])
isred = np.isin(spins, RED)
print("red frequency", isred.mean()) # 0.486487
print("return on red", (isred.sum() - (~isred).sum()) / len(spins)) # -0.027026
counts = np.bincount(spins, minlength=37)
print("chi-square", ((counts - len(spins)/37)**2 / (len(spins)/37)).sum()) # 40.97
Sources
- This dataset: 100,000,000 spins, seed 20261024, NumPy PCG64, generated 24 October 2026. summary.json, frequencies.csv.
- Expected values: house-edge formulas on the house-edge page; chi-square critical value for 36 degrees of freedom at the 5% level, 51.0 (standard tables).
- Wikipedia. "Gambler's fallacy", Monte Carlo Casino, 18 August 1913. en.wikipedia.org/wiki/Gambler%27s_fallacy
Frequently asked questions
What is the longest streak of one colour in 100 million roulette spins?
In this simulation, 25 spins. A run of 26, the 1913 Monte Carlo record, is expected about 0.751 times per 100 million spins on a fair single-zero wheel.
How long can a roulette number go without hitting?
In this dataset one number went 677 spins without appearing, on a wheel that passed a chi-square test for fairness. The probability of a given number being absent for 200 spins is about 0.4%; across 37 numbers and millions of spins, long droughts are routine.
Do hot numbers in roulette stay hot?
No. Measured over 200,000 blocks of 100 spins, the hottest number of a block appeared in the next 100 spins 2.704% of the time, which is the base rate of 1 in 37.
What was the return on red over 100 million spins?
-2.703%, against the theoretical -2.703%. The difference is sampling noise; it shrinks as the spin count grows.
Can I download the data?
Yes. The per-number frequencies are a CSV and the summary statistics a JSON file, both linked on the page, with the seed and the NumPy code to regenerate the full 100 million spins.