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
Scotland League One · Scotland
Clear

Summary

Graded matches
1,949

Model v5

Match result hit rate
49.4%

Always picking the home side: 42.9%

Brier score, 1X2
0.614

Lower is better. Guessing scores 0.667.

Over/Under 2.5 hit rate
55.6%

1,949 matches

Both teams to score hit rate
54.9%

1,949 matches

Exact score hit rate
9.4%

Out of 121 possible scores

Every market

Results by market

MarketMatchesHit rateBrier scoreLog loss
Match result (1X2)1,94949.4%0.61361.0225
Over/Under 1.5 goals1,94979.0%0.16590.5137
Over/Under 2.5 goals1,94955.6%0.24590.6849
Over/Under 3.5 goals1,94968.0%0.21620.6237
Both teams to score1,94954.9%0.24730.6878
Exact score1,9499.4%-3.0076

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% 18% 35% 52% 70% 2015: 48.4% · 93 matches 48 2015 2016: 45.3% · 179 matches 45 2016 2017: 48.3% · 178 matches 48 2017 2018: 54.9% · 184 matches 55 2018 2019: 44.2% · 181 matches 44 2019 2020: 61.5% · 91 matches 62 2020 2021: 46.4% · 166 matches 46 2021 2022: 51.6% · 188 matches 52 2022 2023: 54.9% · 182 matches 55 2023 2024: 45.8% · 190 matches 46 2024 2025: 46.2% · 186 matches 46 2025 2026: 50.4% · 131 matches 50 2026
Show as a table
PeriodMatchesHit rateBrier scoreOver/Under 2.5Both teams to score
202613150.4%0.599854.2%58.0%
202518646.2%0.632355.9%52.2%
202419045.8%0.632855.8%53.7%
202318254.9%0.560057.1%63.2%
202218851.6%0.593153.2%50.0%
202116646.4%0.636955.4%54.2%
20209161.5%0.567447.3%54.9%
201918144.2%0.672350.3%56.9%
201818454.9%0.588658.7%55.4%
201717848.3%0.600656.2%55.1%
201617945.3%0.639159.8%53.1%
20159348.4%0.617661.3%51.6%

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 7.5%, happened 9.5% · 84 Forecast 16.2%, happened 18.8% · 690 Forecast 24.9%, happened 25.4% · 2,504 Forecast 35.0%, happened 35.6% · 873 Forecast 44.7%, happened 42.7% · 784 Forecast 54.5%, happened 54.0% · 493 Forecast 64.3%, happened 60.3% · 292 Forecast 73.7%, happened 70.2% · 104 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 Clubs league Friendlies ClubsWorld 39,55255.0%0.57662.6%56.5%
FA Cup league FA CupEngland 10,69648.2%0.61962.4%57.6%
Championship league ChampionshipEngland 8,45045.7%0.63553.5%52.5%
League Two league League TwoEngland 8,31844.3%0.64753.7%51.9%
League One league League OneEngland 8,28546.9%0.63152.5%52.5%
National League league National LeagueEngland 8,20047.1%0.62554.0%54.7%
2. Lig league 2. LigTurkey 7,38752.0%0.58655.7%51.0%
Primera Nacional league Primera NacionalArgentina 7,36843.6%0.64266.6%58.8%
Torneo Federal A league Torneo Federal AArgentina 7,30048.7%0.61462.0%56.9%
J2 League league J2 LeagueJapan 6,40844.7%0.64155.3%52.2%
Serie A league Serie ABrazil 6,30449.6%0.61456.2%52.1%
Major League Soccer league Major League SoccerUnited States 6,20250.0%0.61756.8%56.9%
La Liga league La LigaSpain 6,14952.7%0.58257.2%52.3%
Serie A league Serie AItaly 6,13153.4%0.58454.6%53.8%
Premier League league Premier LeagueEngland 6,12053.1%0.58355.1%54.6%
Ligue 2 league Ligue 2France 5,90043.5%0.64556.8%52.7%
Ligue 1 league Ligue 1France 5,81349.7%0.60657.1%52.8%
3. Liga league 3. LigaGermany 5,76145.9%0.63953.7%54.2%
U19 Bundesliga league U19 BundesligaGermany 5,71356.6%0.55869.7%61.5%
Primera C league Primera CArgentina 5,68741.7%0.65263.7%57.2%
Serie B league Serie BBrazil 5,61047.0%0.62558.9%53.0%
Serie D league Serie DBrazil 5,51148.2%0.61458.0%53.8%
Primera B Metropolitana league Primera B MetropolitanaArgentina 5,47040.1%0.65565.6%57.6%
USL Championship league USL ChampionshipUnited States 5,29848.3%0.61855.8%55.0%
Serie C - Girone A league Serie C - Girone AItaly 5,27843.0%0.64459.1%53.4%
USL League Two league USL League TwoUnited States 5,15959.2%0.53768.1%59.9%
Primera Division league Primera DivisionGuatemala 5,11062.8%0.52056.2%54.1%
Eredivisie league EredivisieNetherlands 5,02353.9%0.57260.0%57.6%
Süper Lig league Süper LigTurkey 5,00150.8%0.60253.9%53.0%
FA Trophy league FA TrophyEngland 4,98547.3%0.63062.8%59.9%
1. Lig league 1. LigTurkey 4,97247.5%0.61453.8%51.9%
Bundesliga league BundesligaGermany 4,94851.4%0.59758.7%56.7%
Ligue 2 league Ligue 2Algeria 4,91556.1%0.57263.3%58.0%
Jupiler Pro League league Jupiler Pro LeagueBelgium 4,81851.2%0.59855.1%54.2%
J1 League league J1 LeagueJapan 4,79347.0%0.63055.5%55.5%
Liga Profesional Argentina league Liga Profesional ArgentinaArgentina 4,78444.0%0.63961.7%56.2%
Segunda División league Segunda DivisiónSpain 4,74344.7%0.63860.4%53.3%
Primeira Liga league Primeira LigaPortugal 4,70554.5%0.56056.0%52.8%
2. Bundesliga league 2. BundesligaGermany 4,65444.7%0.64555.6%55.4%
Ligue 3 league Ligue 3France 4,60641.8%0.65256.8%51.3%
Primera División league Primera DivisiónVenezuela 4,60147.4%0.62455.0%51.3%
NB II league NB IIHungary 4,58247.4%0.62355.4%54.8%
Liga Alef league Liga AlefIsrael 4,55847.4%0.62554.7%52.3%
UEFA Europa League league UEFA Europa LeagueWorld 4,45450.2%0.62154.0%52.8%
Primera A league Primera AColombia 4,44647.2%0.62159.2%52.9%
3. Lig - Group 3 league 3. Lig - Group 3Turkey 4,34448.3%0.61559.0%53.8%
3. Lig - Group 1 league 3. Lig - Group 1Turkey 4,34048.4%0.60757.2%52.2%
2. Division league 2. DivisionBelarus 4,33464.0%0.47972.5%55.5%
3. Lig - Group 2 league 3. Lig - Group 2Turkey 4,32246.6%0.62555.3%52.7%
Premier League league 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.