Historical backtest · not live predictions

How accurate is the model?

We replayed every match from 9 Apr 2022 to 1 Jun 2025 in date order. Each match was predicted using only the matches played before it, then scored against the real result. The first year (9 Apr 2022 – 9 Apr 2023) only warms the ratings up and isn't scored.

Backtest run 26 Oct 2026 · results through 1 Jun 2025

Matches scored
9,527
9 Apr 2023 – 1 Jun 2025
Most likely outcome right
51.3%
of matches
"Always home" guess
45.0%
the simplest baseline
Better than baseline
+10.1%
on RPS, the standard football score

Picking the right outcome isn't the real test — a model that says 52% should win about 52% of the time, not 100%. The scores and the calibration chart below measure that.

Scores against simple baselines

Lower is better for all three. "Rolling H/D/A" always predicts the home/draw/away frequencies seen so far; "Uniform" says one-third each.

ScoreModelRolling H/D/AUniformWhat it measures
RPS0.20660.2297 0.2368ranked probability score; rewards being close (a draw is nearer a home win than an away win is)
Log-loss0.99991.0664 1.0986punishes confident wrong calls hardest
Brier0.59710.6447 0.6667squared error of the three probabilities

Calibration: does 60% mean 60%?

Home-win probabilities grouped into bands. Each dot is a band: how often the model said the home side would win (across) against how often it actually did (up). On the diagonal is perfect.

0% 0% 20% 20% 40% 40% 60% 60% 80% 80% 100% 100% said 7.2% · happened 11.9% · 126 matches said 15.9% · happened 17.3% · 584 matches said 25.5% · happened 26.8% · 1188 matches said 35.5% · happened 36.4% · 1826 matches said 45.1% · happened 45.6% · 2274 matches said 54.7% · happened 52.3% · 1765 matches said 64.5% · happened 63.4% · 1001 matches said 74.4% · happened 74.5% · 533 matches said 84.2% · happened 84.0% · 212 matches predicted home-win chance
Model saidHappenedMatches
7.2%11.9%126
15.9%17.3%584
25.5%26.8%1,188
35.5%36.4%1,826
45.1%45.6%2,274
54.7%52.3%1,765
64.5%63.4%1,001
74.4%74.5%533
84.2%84.0%212

By league

LeagueTierMatchesRight"Always home"RPS modelRPS baseline
La Liga · Spain tier1861 53.5%45.8% 0.1949 0.2258
Premier League · England tier1844 53.3%44.4% 0.2074 0.2341
Serie A · Italy tier1851 53.2%41.2% 0.1925 0.2269
Ligue 1 · France tier1696 51.9%43.8% 0.2119 0.2348
Bundesliga · Germany tier1681 50.2%41.7% 0.2036 0.2316
Eredivisie · Netherlands tier2715 56.1%45.2% 0.1896 0.2307
Primeira Liga · Portugal tier2682 54.5%44.7% 0.1862 0.2302
Bundesliga · Austria tier2441 48.1%39.0% 0.2050 0.2292
Serie A · Brazil tier2760 47.5%47.1% 0.2161 0.2235
Championship · England tier21,194 45.2%44.6% 0.2229 0.2271
UEFA Champions League tier3506 53.6%47.8% 0.2106 0.2361
UEFA Europa League tier3457 51.4%50.8% 0.2191 0.2282
UEFA Europa Conference League tier3839 51.4%49.1% 0.2204 0.2315

What this is, and isn't. This backtest scores the rating backbone on its own. Live predictions add a goals model and a calibration layer where a league has enough data, so they can differ. Past accuracy doesn't promise future results, and accuracy alone doesn't make a profitable bet — that's judged on the track record against closing odds.