This is the first versioned release of the onthepitch probability model. Every probability the site publishes — match win / draw / loss, group-finish, stage progression, tournament-winner, score distributions, anytime-scorer — is produced by this model.
What ships at 1.0.0
Per-fixture probabilities come from a calibrated uniform-mean ensemble of three components:
- Model 1 — FIFA-Elo with Monte Carlo bracket simulation. Two-team Elo differential mapped to expected score, 100-point home-advantage on non-neutral fixtures, fixed 22% draw probability. The bracket is replayed at 50,000 simulations and per-team round-by-round probabilities are aggregated from the simulation outputs.
- Model 2 — Dixon-Coles with time decay. Per-team attack and defence parameters fit by MLE on roughly 49,000 international results since 1872. Poisson goals with the Dixon-Coles low-score correction (ρ ≈ −0.048). Exponential time-decay weight with a five-year half-life. K-factor weights qualifiers and major-tournament matches above friendlies. Last refit 2026-05-17.
- Model 3 — Hierarchical Bayesian Poisson. Same likelihood as Model 2 with Gaussian priors on per-team attack and defence parameters; estimated via PyMC NUTS (4 chains, 1000 warmup + 1000 sampling). Convergence gated on max R-hat ≤ 1.01 and min ESS ≥ 400; the fit script raises rather than ships if either gate fails. Last refit 2026-05-23.
The three component models are uniformly averaged per fixture (components that can't predict a given fixture are dropped from the mean), then run through a per-class isotonic calibrator split across three tiers — friendly, qualifier, and tournament (which pools continental finals and the FIFA World Cup itself). Calibrator last refit 2026-05-23.
Per-player anytime-scorer (Model 5) sits on top of the Model 4 composite player rating, with the Model 4b goalkeeper-specific rating and the Model 18 multiplicative starting-GK defence offset applied at predict time.
What does not change in 1.0.0
This release stamps a version on the model that the site has been running and publishing all along. There is no architecture or feature change — the version exists so future retrains, calibrator refits, or component swaps can be tracked against this baseline.
For the full methodology, see /docs/methodology/. For in-tournament calibration metrics (Brier, log-loss, ECE) measured against played matches as the tournament progresses, see /docs/calibration/.
Compliance posture
The model publishes probabilities, expected goals, score distributions, ratings, and calibration metrics. It does not publish edges, +EV, fair odds, model-vs-market comparisons, or any output framed for placing bets. See /terms/ for the full statement.