Premier League β€” Validation

Every played match: our pre-match forecast vs. what actually happened. The receipts. 🧾

50 graded matches

44.0%
Outcome accuracy
22 / 50 results called
44.0% vs Market 44.0%
10.0%
Exact scoreline
5 / 50 spot‑on
0.204
Avg. RPS (lower better)
coin‑flip baseline 0.224
0.204 vs Market 0.206
9.1%
Skill vs. coin‑flip
RPS improvement over uniform

Market = de-vigged bookmaker consensus over 50 of 50 graded matches. Both figures above are scored on that same subset. SFMMO leads the closing market by 1.0% on RPS.

Wait β€” how can 44.0% accuracy still beat a coin-flip on RPS?

Because accuracy and RPS measure different things, on different scales β€” they're not in competition.

  • Accuracy only asks: was our single top pick right? It's blind to the probabilities, and a model almost never makes draw its top pick β€” so a draw-heavy round drags it down even when the forecast was good.
  • RPS grades the whole probability spread (e.g. 55 / 25 / 20) against a uniform β€œcoin-flip” (33 / 33 / 33). The coin-flip never commits, so it's never punished hard β€” which makes it a surprisingly tough baseline, and means a few % of skill is a genuine edge.

Our committed forecast cuts both ways (lower RPS = better):

MatchOur forecastResultOur RPSCoin-flip RPS
Favourite delivers55 / 25 / 20home win0.12 βœ“0.28
We back home, it's a draw55 / 25 / 20draw0.170.11 βœ“

When a favourite wins we crush the baseline; on a draw, the hedging coin-flip actually beats us. Matchday 1 had 9 draws in 24 games, so the wins and losses partly cancel β€” the net edge is the β€œskill” figure above. A few % over uniform is roughly what bookmakers manage, so it's a real, healthy edge.

Matchday 1
Match Forecast (1 / X / 2) Our call Predicted Actual
77.3 / 14.8 / 7.9 Arsenal 2–0 3–0 ✓
17.2 / 23.7 / 59.0 Manchester United 0–1 2–0 ✗
45.7 / 27.8 / 26.5 Everton 1–1 2–0 ✓
32.4 / 28.6 / 38.9 Sunderland 1–1 2–1 ✗
50.8 / 24.3 / 24.8 Nottingham Forest 1–1 0–1 ✗
49.1 / 24.5 / 26.4 Brentford 1–1 3–0 ✓
42.8 / 27.4 / 29.9 Brighton & Hove Albion 1–1 4–0 ✓
65.0 / 19.9 / 15.1 Manchester City 2–0 2–1 ✓
31.3 / 26.4 / 42.3 Liverpool 1–1 2–2 ✗
31.1 / 28.0 / 40.9 Chelsea 1–1 2–3 ✓
Matchday 2
Match Forecast (1 / X / 2) Our call Predicted Actual
22.0 / 25.8 / 52.2 Manchester City 1–1 1–4 ✓
60.6 / 22.5 / 16.9 Liverpool 1–1 2–2 ✗
42.8 / 27.0 / 30.2 AFC Bournemouth 1–1 1–1 ✗
38.5 / 27.6 / 33.9 Coventry City 1–1 0–1 ✗
42.9 / 25.6 / 31.5 Tottenham Hotspur 1–1 0–2 ✗
50.1 / 25.6 / 24.3 Chelsea 1–1 4–3 ✓
32.0 / 25.3 / 42.7 Brentford 1–1 1–1 ✗
36.8 / 28.9 / 34.3 Sunderland 1–1 1–0 ✓
74.4 / 16.7 / 8.9 Manchester United 2–0 5–2 ✓
20.2 / 23.5 / 56.3 Arsenal 1–1 0–1 ✓
Matchday 3
Match Forecast (1 / X / 2) Our call Predicted Actual
13.3 / 19.1 / 67.6 Liverpool 0–2 0–2 ✓ ⚛
48.0 / 24.6 / 27.5 Newcastle United 1–1 2–2 ✗
61.4 / 22.9 / 15.7 Brentford 1–0 1–1 ✗
55.2 / 23.3 / 21.5 Brighton & Hove Albion 1–1 1–1 ✗
46.7 / 27.0 / 26.4 Fulham 1–1 2–3 ✗
83.1 / 11.6 / 5.3 Manchester City 2–0 1–0 ✓
48.6 / 25.4 / 26.1 Nottingham Forest 1–1 0–0 ✗
32.4 / 28.3 / 39.3 Aston Villa 1–1 0–0 ✗
32.1 / 27.6 / 40.3 Manchester United 1–1 2–2 ✗
53.2 / 24.2 / 22.6 Arsenal 1–1 2–1 ✓
Matchday 4
Match Forecast (1 / X / 2) Our call Predicted Actual
39.2 / 25.4 / 35.4 AFC Bournemouth 1–1 2–2 ✗
40.4 / 27.9 / 31.6 Aston Villa 1–1 1–2 ✗
71.5 / 18.6 / 10.0 Chelsea 2–0 2–2 ✗
62.2 / 21.9 / 15.9 Crystal Palace 2–0 2–3 ✗
65.7 / 20.7 / 13.6 Liverpool 2–0 0–0 ✗
40.1 / 27.9 / 32.0 Tottenham Hotspur 1–1 0–0 ✗
17.7 / 24.7 / 57.6 Arsenal 0–1 0–2 ✓
22.7 / 24.8 / 52.4 Brighton & Hove Albion 1–1 0–5 ✓
38.9 / 26.3 / 34.8 Manchester United 1–1 0–1 ✗
39.6 / 26.0 / 34.4 Leeds United 1–1 4–1 ✓
Matchday 5
Match Forecast (1 / X / 2) Our call Predicted Actual
39.5 / 25.9 / 34.6 Brentford 1–1 3–0 ✓
45.4 / 26.8 / 27.9 Tottenham Hotspur 1–1 2–3 ✗
30.3 / 26.3 / 43.5 Arsenal 1–1 3–0 ✗
68.3 / 19.6 / 12.0 Everton 2–0 1–0 ✓
60.1 / 22.9 / 17.0 Newcastle United 1–0 2–1 ✓
66.2 / 20.4 / 13.4 Nottingham Forest 2–0 0–1 ✗
30.6 / 25.6 / 43.7 Liverpool 1–1 0–1 ✓
48.3 / 25.1 / 26.7 Leeds United 1–1 0–0 ✗
74.7 / 17.1 / 8.2 Manchester City 2–0 5–3 ✓
27.7 / 26.7 / 45.5 Manchester United 1–1 1–1 ✗

✓ = our most-likely result was correct  Β·  ⚛ = exact scoreline nailed  Β·  multiclass Brier score 0.629. Click any match for its full forecast breakdown.