Method

One model.
100,000 simulations.

Forty8 runs a single, transparent forecasting pipeline from raw match data to projected bracket, recomputed from open sources after every matchday. The inputs, parameters and choices are documented on this page.

Open data Open source MIT 48-team format 100k simulations Pre-registered forecasts
The model

A single, five-stage pipeline

Every probability on this site comes from one model, not an ensemble of three. Here is each stage in the order it runs.

Forty8 five-stage pipeline STAGE 1 Ratings & Elo Pi-ratings + uncertainty STAGE 2 Goal Model Dixon–Coles Poisson STAGE 3 Market & Squad Shin de-vig, logit blend STAGE 4 Monte Carlo 100,000 tournament runs STAGE 5 Bracket Output Modal projected path

Ratings & Elo

Team strengths start with Elo ratings whose constants are fitted on out-of-sample predictive likelihood, not the commonly-reposted folk defaults. Alongside Elo, Pi-ratings provide a second signal, and a rating-uncertainty term discounts teams whose historical data is sparse (qualifying-path newcomers, recently restructured programs).

Dixon–Coles goal model

Rating differences feed a time-decayed attack/defence Poisson model with the Dixon–Coles low-score correction (correlating 0-0 and 1-0 outcomes) and shrinkage toward confederation means. The output is a full scoreline distribution, not just a win probability, because group-stage tiebreakers require goal differences and goals scored, not just results.

Market & squad signals

When bookmaker outright odds are available they are de-vigged with Shin's method, averaged on the logit scale across books, and inverted through tournament simulation into per-team implied strengths, folding in anything the market knows that raw match history misses (current form, injury news, squad depth). When squad data is loaded, a weighted squad-quality signal supplements the ratings before simulation begins.

100,000-run Monte Carlo simulation

The calibrated model runs the full 48-team 2026 format 100,000 times: group tiebreakers (head-to-head sub-table → goal difference → goals scored → fair play → seeded randomness), Annex-C ranking of third-placed teams to fill the Round-of-32 bracket, knock-out draws including extra time and penalty shootouts (modelled as near-equal coin-flips; evidence for a skill effect is weak). Championship odds are reported with 90% simulation intervals.

Projected bracket (modal path)

The displayed bracket is the modal projected path: the most-frequent outcome in each match slot across the 100,000 runs. It is not a single simulation and it is not guaranteed to be self-consistent (a team might appear as modal winner in two slots simultaneously in a theoretical sense). Treat it as the single most-likely story, not as a prediction that every game goes a specific way.

Data sources

Open, traceable inputs

Every input is public-domain or CC0. Every file's SHA-256 hash goes into a manifest, so any published probability can be traced back to the exact bytes that generated it.

International results

Community-maintained results dataset covering international matches from 1872 to present, released under CC0.

Schedule & fixtures

Match schedule from the openfootball project. Public domain, community-maintained.

Market odds

Bookmaker outright odds de-vigged with Shin's method. Used as an optional signal; the model runs without them when odds are unavailable.

Squad data

Projected line-ups and squad quality scores loaded at team-sheet announcement. Invisible to the model between updates; acknowledged in limitations.

Calibration, not assertion

Calibration is verified with reliability tables, not simply claimed. Backtests are strictly walk-forward (no data leakage): the model is trained only on matches that preceded the test window. Expected three-way accuracy sits near 55%, which is roughly where the best published models and leading bookmakers operate. Anyone claiming substantially more without rigorous out-of-sample evidence is cherry-picking.

Limitations

What the model does not know

What the model cannot do, and where it can mislead.

A 20% favourite still loses 4 times in 5. Win probabilities describe a distribution of futures. The projected bracket is the modal path, the most likely single story, but most individual upsets have better-than-even odds of occurring somewhere in the bracket.
Shootouts are near coin-flips. Penalties are modelled as roughly equal for both sides. Peer-reviewed evidence for a repeatable shooter-or-keeper skill effect at international level is weak; any model claiming to predict them reliably is overfitting.
Late injuries are invisible between updates. Squad and injury information enters the model only when squad data is loaded. A key player ruled out hours before kickoff will not change the model's output until the next data refresh.
Four tournaments is a small backtest sample. Walk-forward calibration covers recent major tournaments, but four data points leave real uncertainty about the model's own quality. Confidence intervals on the model are wider than they might appear.
Complex tiebreakers are approximated. Group tiebreakers beyond points, goal difference and goals scored (head-to-head sub-tables, fair-play cards) are resolved by seeded randomness rather than full simulation; the interaction effects are second-order but not zero.
Market-aware odds cannot be backtested fairly. When market signals are folded in, the resulting model absorbs public information. Backtesting it against historical market odds creates a look-ahead bias; we do not report backtested performance for the market-augmented version.
Pre-registration

Judge us on the archive

Every forecast set is committed to a public, append-only history before kickoff and never edited afterwards.

Append-only forecast history

Predictions are timestamped and committed before matches begin. The full archive (every forecast we have ever published) is available in the repository. If a forecast looks good in retrospect, you can verify it was made in advance; if it looks bad, we cannot hide it. Judge the model on the archive, not on highlighted successes.

Not betting advice. Markets already incorporate most of the information in this model. If you choose to gamble, do so responsibly and within your means. Forty8 is a statistical exercise, not a tip service.