Lab

Where was Vesta right, and where wrong?

Over 311 league matches of Freiburg since 2017-18, each forecast by a model that had not seen that season, Vesta's likeliest result happened 49 times in 100; it said 50. Draws: said 25, happened 27 in 100.

Since its public record began on 30 Sep 2026: 51 league matches settled, the likeliest result happened 61 times in 100 (Vesta said 50). Every published forecast

League data to · Vesta · out of sample, 2017-18 on

Free
Matches311each forecast before its season
Likeliest result happened49 in 100Vesta said 50
Draws27 in 100Vesta said 25
Goals a match2.97Vesta expected 2.96
Likeliest score happened10 in 100Vesta said 12

When Vesta says N in 100, does it happen N times?Said v happened

every home win, draw and away win chance, grouped in bands of 10; on the line = exactly right
00252550507575100100 Vesta said (in 100)
Chance bandChancesSaidHappenedGap
10–20 in 1009216.19.8−6.3
20–30 in 10041425.427.5+2.1
30–40 in 10015835.034.8−0.2
40–50 in 10011644.939.7−5.3
50–60 in 1008254.856.1+1.3
60–70 in 1003664.175.0+10.9

The biggest surprises

results Vesta gave the least chance that happened
  1. Bayern Munich 1-1 FreiburgSat 3 Nov 2018 · Bundesliga10 in 100
  2. Freiburg 1-1 Bayern MunichSat 30 Mar 2019 · Bundesliga12 in 100
  3. Hoffenheim 0-3 FreiburgSun 15 Sep 2019 · Bundesliga13 in 100
  4. Borussia Dortmund 2-2 FreiburgSat 27 Jan 2018 · Bundesliga13 in 100
  5. RasenBallsport Leipzig 1-1 FreiburgSat 16 May 2020 · Bundesliga15 in 100
  6. Freiburg 2-2 Bayern MunichSat 15 May 2021 · Bundesliga16 in 100
  7. Freiburg 3-0 RasenBallsport LeipzigSat 8 Dec 2018 · Bundesliga19 in 100
  8. Freiburg 0-0 Borussia DortmundSat 9 Sep 2017 · Bundesliga19 in 100
  9. Freiburg 2-1 Borussia DortmundSat 21 Aug 2021 · Bundesliga19 in 100
  10. Freiburg 0-3 St. PauliSat 28 Sep 2024 · Bundesliga19 in 100
  11. Bayer Leverkusen 1-1 FreiburgSat 23 Nov 2019 · Bundesliga20 in 100
  12. Freiburg 2-1 RasenBallsport LeipzigSat 26 Oct 2019 · Bundesliga20 in 100

The surest calls that missed

the strongest favourites that did not win
  1. Bayern Munich 1-1 FreiburgSat 3 Nov 2018 · home win said86 in 100
  2. Freiburg 1-1 Bayern MunichSat 30 Mar 2019 · away win said81 in 100
  3. Borussia Dortmund 2-2 FreiburgSat 27 Jan 2018 · home win said80 in 100
  4. RasenBallsport Leipzig 1-1 FreiburgSat 16 May 2020 · home win said77 in 100
  5. Freiburg 2-2 Bayern MunichSat 15 May 2021 · away win said74 in 100
  6. Hoffenheim 0-3 FreiburgSun 15 Sep 2019 · home win said69 in 100
  7. Freiburg 0-0 Borussia DortmundSat 9 Sep 2017 · away win said68 in 100
  8. Bayer Leverkusen 1-1 FreiburgSat 23 Nov 2019 · home win said66 in 100
  9. Freiburg 1-1 DarmstadtSat 25 Nov 2023 · home win said65 in 100
  10. Freiburg 1-1 Hertha BerlinSat 1 Apr 2023 · home win said62 in 100
  11. Schalke 04 0-0 FreiburgSat 16 Feb 2019 · home win said61 in 100
  12. Werder Bremen 0-0 FreiburgSat 23 Sep 2017 · home win said61 in 100

Which clubs beat Vesta's expectationsClubs v Vesta

points won against the points Vesta's forecasts gave (3 × win + draw), these matches
Underrated: more points than expected
ClubMatchesPointsExpectedGap
Freiburg311436389.5+46.5
Union Berlin142618.0+8.0
Borussia Dortmund184035.9+4.1
Eintracht Frankfurt193329.5+3.5
Bayern Munich184643.4+2.6
Hannover 96485.6+2.4
Hamburger SV474.6+2.4
Fortuna Duesseldorf475.2+1.8
Arminia Bielefeld454.0+1.0
FC Heidenheim676.0+1.0
Bayer Leverkusen183333.00.0
Darmstadt211.6−0.6
Overrated: fewer points than expected
ClubMatchesPointsExpectedGap
Borussia M.Gladbach191628.6−12.6
Hoffenheim181726.4−9.4
Werder Bremen171422.3−8.3
Augsburg181522.3−7.3
Wolfsburg181925.9−6.9
Schalke 0411814.2−6.2
Bochum838.0−5.0
Hertha Berlin121115.7−4.7
Mainz 05182125.0−4.0
VfB Stuttgart162023.9−3.9
FC Cologne141417.4−3.4
Nuernberg202.5−2.5

League by league, season by seasonLeague by league

Freiburg's matches; the current season so far
CSV
SeasonLeagueMatchesLikeliest saidHappenedDraws saidDrawsGoals expectedGoalsRPS
2026-27Bundesliga5496026202.963.600.164
2025-26Bundesliga34495026242.933.180.202
2024-25Bundesliga34515625212.983.000.189
2023-24Bundesliga34515624263.043.030.185
2022-23Bundesliga34497125242.982.790.166
2021-22Bundesliga34493825292.933.060.210
2020-21Bundesliga34485025262.943.060.203
2019-20Bundesliga34542923263.132.790.261
2018-19Bundesliga34524124352.943.150.209
2017-18Bundesliga34524425352.802.590.191

Each season from 2017-18 was hidden from Vesta and forecast with a model fitted only on the seasons before it, the same model that publishes today's forecasts (checked Tue 13 Oct 2026). These are the forecasts of past seasons, not the published ones: the public record of forecasts made before kick-off starts on 30 Sep 2026 and lives in Vesta's track record.

Related questions