Short version: every number on wc2026.cool is the average of the same tournament played 10,000 times. We give each team an Elo-scale strength rating, convert each fixture into expected goals, use a Poisson model to build a full table of possible scorelines, then simulate every remaining group and knockout match ten thousand times and count how often each team survives. Argentina sits on top at 21.5%, Spain a close second at 18.9%, France third at 13.0%. None of that is a prediction of what *will* happen — it's a count of what happened across ten thousand alternate Junes.
This article opens the hood. No aggregator can copy this, because the model isn't a feed you can resell — it's the thing that generates the feed.
The four-step chain
Step 1 — A strength number for every team
Each team carries a strength rating on an Elo scale, blended with public forecasting consensus. It's a model input, not an official ranking, and we don't resell anyone's proprietary ratings. Right now the top of that scale looks like this: Argentina 2144, Spain 2134, Brazil 1986.
Hold onto the first two numbers, because they teach the most important lesson about the whole model. Argentina's title chance is 21.5% and Spain's is 18.9% — a meaningful gap — yet their Elo ratings differ by just ten points (2144 vs 2134). How does a 10-point edge become a 2.6-point title gap? Because that tiny edge gets compounded across roughly half a dozen knockout rounds. A whisker of advantage per match, multiplied over a full tournament path and then averaged over 10,000 runs, is exactly how small rating differences turn into visible probability gaps. The model is a compounding machine.
Step 2 — Ratings become expected goals
For any single fixture, the two ratings — plus a host-nation adjustment for the USA, Mexico and Canada, who get a home bump — are turned into an *expected goals* figure for each side. This is the average number of goals each team would score if you could replay this exact match many times. A stronger team gets a higher expected-goals value; the gap between the two numbers is what the rating difference buys you.
Step 3 — Poisson builds the full scoreline matrix
Expected goals isn't a scoreline — "France scores 1.8 on average" never happens on a scoreboard. So we feed each side's expected-goals figure into a Poisson model, which is the standard statistical tool for counting independent events (goals) that arrive at a known average rate. The output is a full matrix of every plausible scoreline with a probability attached: 1-0, 2-0, 2-1, 1-1, 0-0, the lot. Add up the cells where Team A outscores Team B and you have its win probability; add the diagonal and you have the draw.
Step 4 — Simulate the whole tournament 10,000 times
Here's the leap people miss. We don't just compute one match. We draw a result from that scoreline matrix for every remaining group and knockout match, play the entire tournament to its conclusion, apply the official 2026 tie-breakers, and record who advanced and who lifted the trophy. Then we do it again. And again — 10,000 times. A team's "chance to advance" is simply the share of those 10,000 simulated tournaments in which it survived. The whole thing is recomputed every hour and after every result.
One fixture, fully worked: France vs Iraq
Let's take a real fixture straight from the model. France carries far more Elo strength than Iraq, so step 2 hands France a much higher expected-goals figure. Run that through the Poisson model (step 3) and the scoreline matrix comes out lopsided. The single most likely result is 2-0 to France at 15%, with 1-0 at 14% close behind and 3-0 at 10% third.
Now collapse that matrix into the three outcomes that matter for the table:
| Outcome | Model probability | |---|---| | France win | 69% | | Draw | 21% | | Iraq win | 10% |
Notice the most likely *single* score (2-0, 15%) is far smaller than the most likely *outcome* (France win, 69%). That's because a France win is spread across many cells — 1-0, 2-0, 2-1, 3-0, 3-1 and more all pile into that 69%. This is the single most useful intuition in the whole model: a confident outcome and a low most-likely score live together comfortably. Anyone who reads "the top score is only 15%" as "the match is a coin-flip" has misread the matrix.
That 69%/21%/10% is one match. Step 4 then chains it with every other match in Group I — and that's where the genuinely counter-intuitive result shows up. Senegal is currently on zero points in Group I, yet the model gives it 63% to advance. How? Because Group I's two front-runners, Norway (99%) and France (99%), are so strong that Senegal's path doesn't run through them — it runs through the best-third-placed race. Across 10,000 simulations, Senegal finishes as one of the eight best third-placed teams often enough that 63% of those alternate tournaments carry it into the Round of 32. The league table says "buried." The model says "alive." Both are true; they're answering different questions.
Why the standings and the model disagree (on purpose)
Senegal isn't a one-off. The best-third-placed race is full of cases where the table order and the model order part ways, and that gap is the most honest thing the model produces. The clearest example is Croatia: zero points in Group L, yet 78% to advance — the same chance the model gives Ghana, who sit on three points. Belgium offers another: tied on two points with Iran in Group G, the model still rates Belgium 87% to Iran's 70%, because Belgium's remaining fixture and strength rating are simply better. Points measure what *has* happened; the model measures what is *likely* to happen across everything still to be played. When they disagree, that's a signal, not an error.
The same machinery exposes fragility, too. Czechia currently sits inside the qualifying places yet the model gives it only 20% — the most precarious team holding a spot. A table tells you where you are tonight; the model tells you how safe that is.
What the model cannot see (and we won't pretend otherwise)
Transparency means stating the gaps plainly. The model does not see injuries, suspensions, line-ups, or in-match events — a red card, a benched striker, a tactical surprise, none of it. FIFA's real fair-play tie-breaker uses yellow and red cards; we don't have that card data, so we approximate it with the strength rating (and a final random draw as the last fallback), following the official 2026 order of points → head-to-head → goal difference → goals scored. So when our number and your gut disagree, your gut might be holding information the model literally can't ingest. That's a feature of honest modelling, not a hidden weakness.
The takeaway
Treat every figure here as a model estimate, not a certainty. The strength of a 10,000-run simulation isn't that it knows the future — it doesn't — but that it's consistent, transparent, and updated hourly. It will happily tell you a zero-point team is 78% alive, because it has counted the futures where that's true. Read the probability as "how often, across ten thousand alternate tournaments," and the whole site suddenly makes sense.