Every knockout tie is rated by eight statistical and machine-learning models, plus a calibrated blend — reading only the football the teams played in the group stage. No betting lines, no market prices. The published number is the chance of each 90-minute result: a win, a draw, or a loss.
The pipeline, end to end
Here is the whole chain, from a raw FIFA match report to the published call. Each stage feeds the next; nothing along the way reads a price.
FIFA post-match report (PDF)FIFA publishes a detailed report after every match.
↓
Read the key-stats + phases-of-play textWe read the words on the statistics pages — no prices, no betting data.
↓
Per-team, per-match dataEach team's numbers from each of its games.
↓
Average 3 group games + Bayesian shrinkageAverage the three matches and pull gently toward a sensible prior.
↓
Team profile A / team profile BThe settled picture of each side the models read from.
↓
Eight models each give a win/draw/lossEight independent reads of the same tie.
↓
Blend + bias correction + knockout draw calibrationPool the eight, correct known bias, calibrate the draw for knockouts.
↓
Published: 90-minute win/draw/lossOne number per outcome, shown on the match's page.
From FIFA's post-match report to one published win/draw/loss — every stage is market-blind.
1FIFA post-match report (PDF) — FIFA publishes a detailed report after every match.
2Read the key-stats + phases-of-play text — We read the words on the statistics pages — no prices, no betting data.
3Per-team, per-match data — Each team's numbers from each of its games.
4Average 3 group games + Bayesian shrinkage — Average the three matches and pull gently toward a sensible prior.
5Team profile A / team profile B — The settled picture of each side the models read from.
6Eight models each give a win/draw/loss — Eight independent reads of the same tie.
7Blend + bias correction + knockout draw calibration — Pool the eight, correct known bias, calibrate the draw for knockouts.
8Published: 90-minute win/draw/loss — One number per outcome, shown on the match's page.
Where the data comes from
After every match, FIFA publishes a Post-Match Summary Report — around fifty pages of detailed analysis. We read the text on two of those pages: the Key Statistics page and the Phases of Play page. That is the entire source.
We read only on-pitch football: goals, shots, possession, pressing, running distance and the like. We never read a price, an odds line or any betting data — the prediction is generated blind to the market, by design.
What we read, and what each number means
Nine numbers per team come off those pages. Here is each one in plain language, with an example value.
Attack — expected goals for (per match)
How many goals a team is expected to create in a match, based on the quality of the chances it made. Higher is stronger.
Example1.94
Defence — expected goals against (per match)
How many goals a team is expected to concede, based on the chances it allowed. Lower is stronger.
Example0.74
Possession %
The share of the match a team had the ball.
Example54.0%
High-press %
The share of play a team spent pressing high up the pitch, hunting the ball near the opponent's goal.
Example22.0%
Counter-attack %
The share of play a team spent in fast counter-attacking phases.
Example18.0%
Low-block %
The share of play a team spent sitting deep to defend its own goal.
Example15.0%
High-intensity running (km)
Distance covered at high speed (sprinting and fast running). A read on how hard a team physically worked.
Example9.6 km
Strength rating (Elo)
A pre-tournament estimate of overall team strength, set before a ball was kicked. Higher is stronger.
Example1932
Matches observed
How many group games we have data for — three, the full group stage.
Example3
“Expected goals” (xG) is a shot-quality estimate: it scores how many goals the chances a team created — or allowed — were really worth, rather than just counting the goals that happened to go in.
From three matches to a team profile
A team plays only three group games, so any single number is noisy — one freak result can flatter or bury a side. To settle it, we average the three games and then gently pull each number toward a sensible prior. Statisticians call this Bayesian shrinkage: it trusts the data, but not blindly, so one wild game can't dominate.
Group game 1Group game 2Group game 3→Team profile
The result is the team profile — the steady, de-noised picture of each side that every model reads from. From here on, the eight models all work off the same two profiles.
Eight models, eight ways to read the same match
Each model looks at the two profiles through a different lens and turns them into a win/draw/loss. None of them is the final word; their disagreement is the point. Here is what each one leans on and how it decides.
1Dixon-Coles (Bayesian shrinkage)Statistical
A classic football scoreline model. It takes each team's expected goals for and against — shrunk toward its strength rating — and builds a grid of every plausible scoreline with its probability, including a special correction for low-scoring draws like 0-0 and 1-1, which raw models tend to underrate. Adding up the grid gives the win/draw/loss. It is strong on the realistic shape of football scores and on getting draws right.
2xG-corrected EloStrength rating
A single strength rating that rises and falls across the three group games based on the quality of chances a team created — its expected goals — not just the final score. A team that out-created its opponents but lost still climbs. The gap between the two ratings, plus a term for the draw, becomes the win/draw/loss. It rewards teams whose results flattered or cheated them.
Instead of one rating per team, it keeps a separate attack rating and defence rating, both updated from group-stage expected goals. To forecast a tie it pits one side's attack against the other's defence, and vice versa, to get each team's goal expectation. It shines when a team is lopsided — a great attack with a leaky defence, say — which a single rating would blur.
4Physical-decay EloStrength rating
A strength rating that also weighs physical load. Teams that ran the most high-intensity distance in the group stage get docked a little, on the logic that they are more likely to be tired deep in a tournament. It is built to catch fatigue effects that pure strength ratings miss.
5Style-clash mEloStrength rating
Beyond raw strength, it compares how the two teams actually play — possession, pressing, counter-attacking, sitting deep. A stylistic mismatch can favour the lower-rated side, like rock-paper-scissors layered on top of strength: a great counter-attacking team can trouble a possession side that out-rates it.
A gradient-boosted decision-tree model — a machine-learning method that builds many small decision rules and stacks them. Trained on the group matches and fed chance-creation and defence-penetration stats (shots, line-breaks, ball progressions), it learns patterns that map the gap between the two teams' numbers onto a win/draw/loss.
A random forest — another machine-learning method, an average of many independent decision trees — trained on passing-structure and style features like possession and build-up shape. It is a different statistical lens on the same question, and where it disagrees with the gradient-boosted model is itself informative.
8Stacked ensembleEnsemble
A meta-model that never looks at the pitch at all. Its only job is to learn, from how the seven other models performed across the group stage, how much to trust each one — then weight and combine their views into a single read. It is a model of the models.
From eight reads to one published call
The eight views are first pooled into one consensus. Then a small bias correction, learned on the group stage, nudges it where the models were collectively off. Finally a knockout draw calibration applies: knockout matches end level after 90 minutes far more often than group games — about 31% of the time at Qatar 2022 — so on genuinely even ties we lift the draw toward that historical rate. Lopsided ties barely move, and the favourite is always preserved.
Pool the eight models→Bias correction→Knockout draw calibration→Published 90-min call
The result is the published “Multi-calibrated 8-in-1” win/draw/loss. Every match shows all nine views — the eight models and the blend — side by side on its own page, and we score them in the open as matches finish, so anyone can check the record.