Track record

We publish two things most prediction sites hide: how our real, already-published predictions have turned out, and how the model performs on an out-of-sample backtest. Nothing here is cherry-picked.

Live record — our real predictions

Every prediction we've published that has since been played, graded against the actual result — from 31 Jul 2026 to 3 Nov 2026.

2,571
predictions settled
51.1%
1,313/2,571 outcomes correct
0.208
avg RPS · book 0.204
-23.3%
value-bet ROI · 80/291 won
Outcome accuracy by month (bar label = accuracy · small number = predictions graded)
25%50%75%0%Jul 26150%Aug 2641047%Sep 2687653%Oct 26116064%Nov 26124
LeagueSettledAccuracyValue ROI
USAMajor League Soccer 158 43.7% -100.0% (1)
EnglandLeague One 153 45.1% -57.8% (30)
EnglandChampionship 152 48.7% -47.7% (21)
SpainLa Liga 2 128 48.4% -39.3% (24)
ArgentinaLiga Profesional 108 46.3% -100.0% (1)
SpainLa Liga 106 55.7% -2.6% (12)
ItalySerie A 100 63.0% +33.8% (16)
NetherlandsEredivisie 98 53.1% +30.6% (18)
ItalySerie B 98 39.8% +8.7% (18)
FranceLigue 2 97 43.3% +5.3% (25)
SwitzerlandSuper League 93 60.2% -68.0% (11)
PortugalPrimeira Liga 89 57.3% +6.9% (11)
Germany2. Bundesliga 88 48.9% -64.4% (15)
TurkeySüper Lig 88 52.3% -51.8% (20)
EnglandPremier League 88 48.9% -28.6% (17)
BelgiumJupiler Pro League 87 60.9% -10.7% (17)
FranceLigue 1 80 53.8% -100.0% (9)
BrazilBrasileirão Série A 79 59.5% —
MexicoLiga MX 77 41.6% —
GermanyBundesliga 70 52.9% +52.5% (14)
JapanJ1 League 70 51.4% —
ScotlandScottish Premiership 69 44.9% -59.3% (9)
PolandEkstraklasa 59 52.5% —
SwedenAllsvenskan 59 54.2% -100.0% (1)
RomaniaLiga I 51 64.7% —
NorwayEliteserien 48 54.2% —
FinlandVeikkausliiga 42 50.0% —
DenmarkSuperliga 37 56.8% —
AustriaBundesliga (AUT) 36 55.6% —
IrelandPremier Division 36 52.8% —
ChinaChinese Super League 27 48.1% -100.0% (1)

Success by market

Match-result accuracy understates the calls we actually publish. Double chance and the goals/BTTS leans land far more often — here's the honest hit-rate on every graded prediction where each applies.

76.4%
Success on our recommended picks
The call we'd actually give each match — cover the two most likely outcomes, upgraded to a single when we're very confident. 1,963/2,571 landed (we call ~100% of matches; the rest are too close).

And each market on its own:

MarketSampleCorrectHit rate
Match result
Our single most likely outcome (1X2)
2,571 1,313 51.1%
Double chance
Backing our top two outcomes
2,571 1,978 76.9%
Over / Under 2.5
Total-goals lean from model xG
1,420 830 58.5%
Both teams to score
BTTS yes/no lean from xG
1,194 695 58.2%
Confident picks
Only where our top probability ≥ 55%
669 451 67.4%
Average across markets
Mean of the 5 market hit-rates above
— — 62.4%

Each market is only counted where it applies — the goals and BTTS leans exist only when the model's xG points clearly one way, so their samples are smaller than the match-result total. Historical hit-rates, not guarantees.

How well-calibrated are we?

Accuracy isn't everything — a probability is only honest if it means what it says. This checks exactly that: when we say 60%, does it happen about 60% of the time? Each dot groups our forecasts by confidence; dots on the dashed line are perfectly calibrated. Built from all 2,571 settled matches (7,713 outcome probabilities).

00252550507575100100predicted %actual %
1.2%
calibration error (ECE)
lower is better
0.199
Brier score
lower is better

ECE is the average gap between what we predict and what happens; the Brier score grades the sharpness and honesty of every probability at once. We'd rather be honestly uncertain than confidently wrong — so we automatically re-calibrate our probabilities against this record, tightening the fit over time.

See every graded fixture, day by day, on the results page → · Predictions are sealed before kickoff — see the ledger →

Model validation — historical backtest

Out-of-sample walk-forward test — every prediction uses only data available before kickoff. Last run 19 Oct 2026.

21,665
predictions graded
50.1%
outcome accuracy
0.206
avg RPS
4/33
leagues ≥ bookmaker
LeagueNAccuracy RPSBookmaker RPSValue ROI
USAMajor League Soccer 1,310 48.2% 0.2172 0.2148 +8.6% (55)
ArgentinaLiga Profesional 1,124 42.7% 0.2131 0.2126 +10.5% (48)
EnglandChampionship 1,108 46.2% 0.2150 0.2135 -19.2% (77)
EnglandLeague One 1,083 49.7% 0.2138 0.2126 -21.8% (116)
SpainLa Liga 2 918 48.9% 0.2111 0.2092 -2.5% (76)
BrazilBrasileirão Série A 851 51.7% 0.2004 0.1963 +9.2% (81)
ItalySerie A 749 54.5% 0.1905 0.1894 -24.0% (49)
EnglandPremier League 747 50.6% 0.2049 0.2046 -5.6% (56)
SpainLa Liga 743 53.8% 0.1954 0.1938 +7.7% (29)
ItalySerie B 733 46.1% 0.2029 0.2017 -30.5% (53)
MexicoLiga MX 732 51.8% 0.2068 0.1946 +4.8% (32)
TurkeySüper Lig 635 55.0% 0.1916 0.1885 -32.9% (52)
RomaniaLiga I 625 50.1% 0.2037 0.2047 +40.6% (21)
NetherlandsEredivisie 612 51.6% 0.1947 0.1934 -4.5% (58)
BelgiumJupiler Pro League 611 50.9% 0.2007 0.1999 -17.0% (61)
PortugalPrimeira Liga 610 54.9% 0.1815 0.1817 +29.4% (43)
FranceLigue 2 600 46.2% 0.2135 0.2123 -19.3% (51)
PolandEkstraklasa 600 45.0% 0.2205 0.2135 -50.8% (21)
FranceLigue 1 600 53.7% 0.2046 0.2031 -27.1% (38)
GermanyBundesliga 599 52.9% 0.2000 0.1973 -38.6% (51)
Germany2. Bundesliga 598 45.8% 0.2222 0.2192 -21.3% (68)
JapanJ1 League 519 49.1% 0.2177 0.2180 +35.8% (40)
ChinaChinese Super League 471 51.4% 0.1983 0.1760 -10.5% (44)
NorwayEliteserien 464 58.2% 0.2008 0.1959 -84.5% (13)
SwitzerlandSuper League 462 48.7% 0.2167 0.2182 +1.8% (23)
SwitzerlandSuper League 459 53.8% 0.1935 0.1929 +60.3% (26)
ScotlandScottish Premiership 459 53.4% 0.2019 0.2001 -52.3% (23)
SwedenAllsvenskan 455 48.6% 0.2186 0.2133 -35.0% (25)
RussiaPremier League (RUS) 406 56.2% 0.1858 0.1840 +43.7% (32)
AustriaBundesliga (AUT) 380 45.3% 0.2202 0.2151 +13.1% (26)
DenmarkSuperliga 376 51.3% 0.2151 0.2082 -43.8% (8)
IrelandPremier Division 355 45.4% 0.2063 0.2022 -33.1% (7)
FinlandVeikkausliiga 349 50.4% 0.2106 0.2055 +4.3% (20)
SpainLiga FWomen 192 54.7% 0.1958 — —
EnglandWomen's Super LeagueWomen 109 63.3% 0.1762 — —
USANWSLWomen 21 76.2% 0.1622 — —
GermanyFrauen-BundesligaWomen 0 0.0% 0.0000 — —

Every market, back-tested

We don't just publish match results. Every market on the prediction pages — goals lines, both-teams-to-score, team totals, clean sheets, winning margins and more — is graded the same walk-forward way, out-of-sample against real scores. Last run 19 Oct 2026.

Result

MarketSampleHit rateStrength
Draw no bet 15,548 68.0% Weak
Match result (1X2) 21,037 50.2% Weak
Double chance 21,037 47.2% —

Goals

MarketSampleHit rateStrength
Over/Under 0.5 21,037 93.0% Strong
Over/Under 4.5 21,037 85.4% Fair
Over/Under 1.5 21,037 75.0% Weak
Over/Under 3.5 21,037 70.1% Weak
Over/Under 2.5 21,037 56.1% Weak
Both teams to score 21,037 54.2% Weak
Odd/even goals 21,037 50.0% Weak
Exact total goals 21,037 0.0% Strong

First half

MarketSampleHit rateStrength
1st half Over/Under 0.5 6,837 71.8% Weak
1st half Over/Under 1.5 6,837 64.8% Weak
Half-time result 6,837 44.8% Weak

Corners

MarketSampleHit rateStrength
Corners Over/Under 8.5 6,707 62.8% Weak
Corners Over/Under 10.5 6,707 59.0% Weak
Corners Over/Under 9.5 6,707 54.9% Weak

Cards

MarketSampleHit rateStrength
Cards Over/Under 5.5 6,707 76.8% Weak
Cards Over/Under 4.5 6,707 62.7% Weak
Cards Over/Under 3.5 6,707 58.0% Weak

Teams

MarketSampleHit rateStrength
Away 3+ goals 21,037 87.2% Reliable
Home 3+ goals 21,037 80.4% Weak
Away clean sheet 21,037 77.6% Weak
Home to score 21,037 77.6% Weak
Home clean sheet 21,037 69.1% Weak
Away to score 21,037 69.1% Weak
Away 2+ goals 21,037 66.9% Weak
Home 2+ goals 21,037 61.6% Weak

Specials

MarketSampleHit rateStrength
Away win to nil 21,037 84.7% Fair
Home win to nil 21,037 76.7% Weak
Winning margin 21,037 28.4% Weak

Hit rate = how often the model's most-likely side was correct. For two-way markets (over/under, both-teams-to-score, clean sheets) the base rate is naturally high, so quality is judged by calibration, not hit rate — the strength label grades that for the markets where it's meaningful. Value ROI is shown only for the match result, the one market where we hold bookmaker odds; every other market is graded for accuracy and calibration, not price. Historical, out-of-sample — not a guarantee.

How to read this

Live record vs backtest. The live record is our actual published predictions, graded after the matches were played — it's the honest test. The backtest re-runs the model over past seasons using only pre-kickoff data, to validate the method over a much larger sample. We show both, including where they're unflattering.

Accuracy is how often the highest-probability outcome actually happened. RPS (Ranked Probability Score) grades the full probability forecast — lower is better — and we score the bookmaker's own de-vigged odds the same way as a benchmark (green means we matched or beat the market).

Value ROI simulates flat 10-unit stakes placed only where the model's edge over the bookmaker cleared the threshold, settled at the recorded odds; the bracketed number is how many bets that was.

A serious note: bookmakers set very efficient prices. A good model lands close to them and hovers near break-even on value bets — consistently beating the market is genuinely hard. Treat value signals as a starting point for your own judgement, not a guarantee. 18+, please gamble responsibly.