An Elo + Monte Carlo simulator for the 2026 FIFA World Cup. Ten thousand tournaments run in your browser — stage probabilities for all 48 teams, survival curves, and single-universe replays. No APIs, no build step. Open on GitHub →
FIFA World Cup 202648 teams · 104 matches11 June – 19 July · MEX/USA/CAN
universes simulated: 0
connecting to live feed…
The Full Roster
Probability (%) of reaching each stage. Click any team for its trajectory.
#
Team
Elo
R32
R16
QF
SF
Final
🏆
The Projected Bracket
Favorite-wins walk through the whole tree — each tie shows the projected winner's odds. Real results lock in as they happen (✓). Click any team.
Head to Head
Any two teams: single-match odds from the Elo–Poisson model, plus how often they actually cross paths in simulated tournaments.
The Upset Index
Where chaos is most affordable — upcoming ties ranked by the underdog's outright win odds.
The Twelve Groups
Chance of surviving the group (top two + best eight thirds advance).
Method. Each tournament is simulated match by match. Win expectancy comes from
Elo ratings (eloratings.net, June 2026 snapshot; co-hosts +50). Goals are drawn from Poisson
distributions whose means split a 2.7-goal match by Elo odds — so wins, draws and goal difference
all fall out of the same dice. Knockout draws go to extra time, then a shootout with a mild Elo lean.
Best-third allocation to the round-of-32 bracket follows the FIFA slot constraints via backtracking.
Group assignments per the Final Draw (Dec 2025) and the March 2026 playoffs.
Big runs fan out across your CPU cores via Web Workers — a million tournaments in seconds.
During the tournament the page polls FIFA's public match feed every five minutes: finished matches are
locked into every simulation, real knockout pairings override simulated standings, and the title odds
show their movement against the pre-tournament baseline. Momentum mode lets confidence build within each
simulated tournament — winning teams get slightly stronger as they go, struggling teams slightly weaker
(technically: Elo is updated after every simulated match, K=50). The what-if slider re-simulates a
single team at an adjusted rating.