Skip to main content
← Predictions

Model v5 · Updated 23 Sep 2026

Our track record

Every forecast checked against the final 90-minute result, by league, competition and season. Nothing is hand-picked: every graded match counts.

The backtest runs model v5 over past seasons from Jun 2008 to Sep 2026. For every match it only uses information that existed before kickoff, exactly as if the forecast had been published that day. The model was tuned on matches from January 2025 to April 2026; every other month is an out-of-sample test.

League
2. Lig · Turkey
Clear

Summary

Graded matches
7,387

Model v5

Match result hit rate
52.0%

Always picking the home side: 44.8%

Brier score, 1X2
0.586

Lower is better. Guessing scores 0.667.

Over/Under 2.5 hit rate
55.7%

7,387 matches

Both teams to score hit rate
51.0%

7,387 matches

Exact score hit rate
11.6%

Out of 121 possible scores

Every market

Results by market

MarketMatchesHit rateBrier scoreLog loss
Match result (1X2)7,38752.0%0.58640.9839
Over/Under 1.5 goals7,38772.1%0.19990.5882
Over/Under 2.5 goals7,38755.7%0.24450.6818
Over/Under 3.5 goals7,38773.1%0.19210.5714
Both teams to score7,38751.0%0.25050.6941
Exact score7,38611.6%-2.8850

Hit rate counts the outcome we marked as most likely. Brier score and log loss grade the full probabilities, so a confident miss costs more than a cautious one.

Season by season

Match result hit rate over time

Match result hit rate over time 0% 15% 30% 45% 60% 2011: 49.2% · 120 matches 49 2011 2012: 51.0% · 288 matches 51 2012 2013: 40.5% · 289 matches 40 2013 2014: 46.6% · 324 matches 47 2014 2015: 43.5% · 324 matches 44 2015 2016: 49.3% · 306 matches 49 2016 2017: 51.3% · 306 matches 51 2017 2018: 50.5% · 459 matches 51 2018 2019: 54.3% · 626 matches 54 2019 2020: 56.8% · 532 matches 57 2020 2021: 52.9% · 758 matches 53 2021 2022: 47.6% · 717 matches 48 2022 2023: 54.7% · 687 matches 55 2023 2024: 54.2% · 661 matches 54 2024 2025: 58.2% · 622 matches 58 2025 2026: 55.2% · 368 matches 55 2026
Show as a table
PeriodMatchesHit rateBrier scoreOver/Under 2.5Both teams to score
202636855.2%0.549560.1%53.3%
202562258.2%0.556554.3%50.0%
202466154.2%0.558453.3%51.3%
202368754.7%0.569856.2%55.9%
202271747.6%0.610355.4%48.5%
202175852.9%0.582054.5%48.0%
202053256.8%0.548857.9%54.5%
201962654.3%0.567553.5%49.5%
201845950.5%0.612351.4%51.2%
201730651.3%0.605853.6%48.0%
201630649.3%0.615360.1%55.2%
201532443.5%0.642158.6%52.5%
201432446.6%0.627557.7%49.1%
201328940.5%0.647260.6%48.1%
201228851.0%0.607558.3%51.0%
201112049.2%0.572549.2%50.8%

Paler bars have fewer than 100 matches and move a lot by chance. The earliest seasons have few matches and little history for the model to learn from, so they read lower.

Do the percentages mean what they say?

Calibration

Forecast probability against how often the outcome happened 0% 0% 50% 50% 100% 100% Forecast 6.7%, happened 5.7% · 614 Forecast 15.9%, happened 14.3% · 2,588 Forecast 25.6%, happened 26.1% · 9,539 Forecast 34.8%, happened 32.9% · 3,182 Forecast 44.8%, happened 45.6% · 2,723 Forecast 54.4%, happened 52.4% · 1,822 Forecast 64.3%, happened 68.9% · 1,071 Forecast 73.9%, happened 76.9% · 411 Forecast 84.1%, happened 88.9% · 171 Forecast 93.3%, happened 95.0% · 40 Forecast probability

Each dot groups home, draw and away probabilities of similar size. Dots close to the diagonal mean that when we say 60%, it happens about 60% of the time.

Where it works best

By competition group

GroupMatchesHit rateBrier score
Major leagues150,93849.5%0.607
Other men's leagues1,019,02051.0%0.597
Cups109,57255.1%0.566
Women's football35,57762.6%0.494
Youth & reserves52,89253.6%0.583
National teams17,07760.2%0.516
Friendlies44,69554.7%0.577

Groups follow the period and model filters. Mismatched competitions such as cups and women's leagues are easier to call than balanced top divisions.

1064 leagues with at least 30 matches

By league

LeagueMatchesHit rateBrier scoreOver/Under 2.5Both teams to score
Friendlies ClubsWorld 39,55255.0%0.57662.6%56.5%
FA CupEngland 10,69648.2%0.61962.4%57.6%
ChampionshipEngland 8,45045.7%0.63553.5%52.5%
League TwoEngland 8,31844.3%0.64753.7%51.9%
League OneEngland 8,28546.9%0.63152.5%52.5%
National LeagueEngland 8,20047.1%0.62554.0%54.7%
2. LigTurkey 7,38752.0%0.58655.7%51.0%
Primera NacionalArgentina 7,36843.6%0.64266.6%58.8%
Torneo Federal AArgentina 7,30048.7%0.61462.0%56.9%
J2 LeagueJapan 6,40844.7%0.64155.3%52.2%
Serie ABrazil 6,30449.6%0.61456.2%52.1%
Major League SoccerUnited States 6,20250.0%0.61756.8%56.9%
La LigaSpain 6,14952.7%0.58257.2%52.3%
Serie AItaly 6,13153.4%0.58454.6%53.8%
Premier LeagueEngland 6,12053.1%0.58355.1%54.6%
Ligue 2France 5,90043.5%0.64556.8%52.7%
Ligue 1France 5,81349.7%0.60657.1%52.8%
3. LigaGermany 5,76145.9%0.63953.7%54.2%
U19 BundesligaGermany 5,71356.6%0.55869.7%61.5%
Primera CArgentina 5,68741.7%0.65263.7%57.2%
Serie BBrazil 5,61047.0%0.62558.9%53.0%
Serie DBrazil 5,51148.2%0.61458.0%53.8%
Primera B MetropolitanaArgentina 5,47040.1%0.65565.6%57.6%
USL ChampionshipUnited States 5,29848.3%0.61855.8%55.0%
Serie C - Girone AItaly 5,27843.0%0.64459.1%53.4%
USL League TwoUnited States 5,15959.2%0.53768.1%59.9%
Primera DivisionGuatemala 5,11062.8%0.52056.2%54.1%
EredivisieNetherlands 5,02353.9%0.57260.0%57.6%
Süper LigTurkey 5,00150.8%0.60253.9%53.0%
FA TrophyEngland 4,98547.3%0.63062.8%59.9%
1. LigTurkey 4,97247.5%0.61453.8%51.9%
BundesligaGermany 4,94851.4%0.59758.7%56.7%
Ligue 2Algeria 4,91556.1%0.57263.3%58.0%
Jupiler Pro LeagueBelgium 4,81851.2%0.59855.1%54.2%
J1 LeagueJapan 4,79347.0%0.63055.5%55.5%
Liga Profesional ArgentinaArgentina 4,78444.0%0.63961.7%56.2%
Segunda DivisiónSpain 4,74344.7%0.63860.4%53.3%
Primeira LigaPortugal 4,70554.5%0.56056.0%52.8%
2. BundesligaGermany 4,65444.7%0.64555.6%55.4%
Ligue 3France 4,60641.8%0.65256.8%51.3%
Primera DivisiónVenezuela 4,60147.4%0.62455.0%51.3%
NB IIHungary 4,58247.4%0.62355.4%54.8%
Liga AlefIsrael 4,55847.4%0.62554.7%52.3%
UEFA Europa LeagueWorld 4,45450.2%0.62154.0%52.8%
Primera AColombia 4,44647.2%0.62159.2%52.9%
3. Lig - Group 3Turkey 4,34448.3%0.61559.0%53.8%
3. Lig - Group 1Turkey 4,34048.4%0.60757.2%52.2%
2. DivisionBelarus 4,33464.0%0.47972.5%55.5%
3. Lig - Group 2Turkey 4,32246.6%0.62555.3%52.7%
Premier LeagueEgypt 4,23646.3%0.61460.3%52.8%
Show all 1064 leagues

With a few hundred matches, a league's hit rate can move by several points from luck alone. Compare leagues with large samples.

Reading the numbers

How we measure accuracy

Hit rate
How often the outcome we marked as most likely happened. Simple, but it ignores how confident the forecast was.
Brier score
The squared gap between our probabilities and what happened. 0 is perfect; for match results, spreading a third on each outcome scores 0.667.
Log loss
Punishes confident mistakes harder than the Brier score. Lower is better.
Backtest
The current model run over past matches with only the information available before each kickoff. It shows how the model behaves across many seasons, but it is a simulation, not a record of published forecasts.
Published forecasts
Forecasts we actually showed, stored with a timestamp before kickoff and never edited afterwards.
Result used
The score after 90 minutes plus stoppage time. Extra time and penalties do not count.

Forecasts are probabilities, not certainties. Past accuracy does not guarantee future results.