How good is it?
Before every Grand Prix of the last three seasons the model was trained only on the earlier races and predicted the whole grid. Here is each prediction next to what actually happened.
Before every Grand Prix of the last three seasons the model was trained only on the earlier races and predicted the whole grid. Here is each prediction next to what actually happened.
2025 · Rd 6Missed
PIA won, from P4: we gave them 14%. Our favourite: VER at 36%.
Predicted order by win chance (normalised over the grid), with the real finishing position on the right.
| Pos. | Driver | Grid | Win | Finished |
|---|---|---|---|---|
| 1 | VERMax VerstappenRed Bull | P1 | 36% | P4 |
| 2 | NORLando NorrisMcLaren | P2 | 21% | P2 |
| 3 | PIAOscar PiastriMcLaren | P4 | 14% | P1 |
| 4 | ANTAndrea Kimi AntonelliMercedes | P3 | 11% | P6 |
| 5 | RUSGeorge RussellMercedes | P5 | 9.4% | P3 |
| 6 | LECCharles LeclercFerrari | P8 | 2.6% | P7 |
| 7 | HAMLewis HamiltonFerrari | P12 | 0.9% | P8 |
| 8 | TSUYuki TsunodaRed Bull | P10 | 0.8% | P10 |
| 9 | SAICarlos SainzWilliams | P6 | 0.5% | P9 |
| 10 | ALBAlexander AlbonWilliams | P7 | 0.4% | P5 |
| 11 | GASPierre GaslyAlpine | P20 | 0.4% | P13 |
| 12 | HADIsack HadjarRB | P11 | 0.4% | P11 |
| 13 | OCOEsteban OconHaas | P9 | 0.3% | P12 |
| 14 | ALOFernando AlonsoAston Martin | P17 | 0.3% | P15 |
| 15 | STRLance StrollAston Martin | P18 | 0.3% | P16 |
| 16 | HULNico HülkenbergSauber | P16 | 0.3% | P14 |
| 17 | BEAOliver BearmanHaas | P19 | 0.3% | DNF |
| 18 | BORGabriel BortoletoSauber | P13 | 0.3% | DNF |
| 19 | DOOJack DoohanAlpine | P14 | 0.3% | DNF |
| 20 | LAWLiam LawsonRB | P15 | 0.3% | DNF |
| Season | Favourite won | Pole won | Top 3 on podium | Winner's average rank |
|---|---|---|---|---|
| 202618 races | 12/18 | 13/18 | 65% | 1.7 |
| 202524 races | 15/24 | 16/24 | 76% | 1.5 |
| 202424 races | 14/24 | 11/24 | 61% | 2.2 |
Where the eventual winner sat in our list on average (1 = our favourite).
Tap a race to see its full prediction.
| Rd | Grand Prix | Winner | Favourite | Top 3 on podium |
|---|
| 18 | United States | ANT45% | Called it:ANT | 2/3 |
|---|---|---|---|---|
| 17 | Singapore | VER74% | Called it:VER | 3/3 |
| 16 | Bahrain in Malaysia | VER29% | Called it:VER | 3/3 |
| 15 | Azerbaijan | RUS54% | Called it:RUS | 1/3 |
| 14 | Spanish | ANT28% | Missed:NOR | 3/3 |
| 13 | Italian | ANT5.5% | Missed:GAS | 1/3 |
| 12 | Dutch | NOR75% | Called it:NOR | 3/3 |
| 11 | Hungarian | NOR29% | Missed:HAM | 1/3 |
| 10 | Belgian | ANT77% | Called it:ANT | 2/3 |
| 9 | British | LEC4.9% | Missed:ANT | 2/3 |
| 8 | Austrian | RUS54% | Called it:RUS | 1/3 |
| 7 | Barcelona | HAM19% | Missed:ANT | 2/3 |
| 6 | Monaco | ANT79% | Called it:ANT | 2/3 |
| 5 | Canadian | ANT19% | Missed:RUS | 1/3 |
| 4 | Miami | ANT25% | Called it:ANT | 1/3 |
| 3 | Japanese | ANT61% | Called it:ANT | 2/3 |
| 2 | Chinese | ANT44% | Called it:ANT | 3/3 |
| 1 | Australian | RUS67% | Called it:RUS | 2/3 |
| Rd | Grand Prix | Winner | Favourite | Top 3 on podium |
|---|---|---|---|---|
| 24 | Abu Dhabi | VER82% | Called it:VER | 3/3 |
| 23 | Qatar | VER20% | Missed:PIA | 2/3 |
| 22 | Las Vegas | VER38% | Missed:NOR | 2/3 |
| 21 | São Paulo | NOR53% | Called it:NOR | 3/3 |
| 20 | Mexico City | NOR57% | Called it:NOR | 2/3 |
| 19 | United States | VER51% | Called it:VER | 2/3 |
| 18 | Singapore | RUS51% | Called it:RUS | 2/3 |
| 17 | Azerbaijan | VER39% | Called it:VER | 2/3 |
| 16 | Italian | VER19% | Missed:PIA | 3/3 |
| 15 | Dutch | PIA57% | Called it:PIA | 2/3 |
| 14 | Hungarian | NOR22% | Missed:PIA | 2/3 |
| 13 | Belgian | PIA21% | Missed:NOR | 3/3 |
| 12 | British | NOR15% | Missed:VER | 2/3 |
| 11 | Austrian | NOR55% | Called it:NOR | 3/3 |
| 10 | Canadian | RUS44% | Called it:RUS | 2/3 |
| 9 | Spanish | PIA59% | Called it:PIA | 2/3 |
| 8 | Monaco | NOR49% | Called it:NOR | 3/3 |
| 7 | Emilia Romagna | VER22% | Missed:PIA | 2/3 |
| 6 | Miami | PIA14% | Missed:VER | 1/3 |
| 5 | Saudi Arabian | PIA18% | Missed:VER | 2/3 |
| 4 | Bahrain | PIA55% | Called it:PIA | 2/3 |
| 3 | Japanese | VER61% | Called it:VER | 3/3 |
| 2 | Chinese | PIA24% | Called it:PIA | 3/3 |
| 1 | Australian | NOR45% | Called it:NOR | 2/3 |
| Rd | Grand Prix | Winner | Favourite | Top 3 on podium |
|---|---|---|---|---|
| 24 | Abu Dhabi | NOR63% | Called it:NOR | 2/3 |
| 23 | Qatar | VER54% | Called it:VER | 1/3 |
| 22 | Las Vegas | RUS20% | Called it:RUS | 2/3 |
| 21 | São Paulo | VER1.5% | Missed:NOR | 0/3 |
| 20 | Mexico City | SAI15% | Missed:VER | 2/3 |
| 19 | United States | LEC4.1% | Missed:NOR | 1/3 |
| 18 | Singapore | NOR40% | Called it:NOR | 2/3 |
| 17 | Azerbaijan | PIA33% | Called it:PIA | 2/3 |
| 16 | Italian | LEC3.4% | Missed:PIA | 2/3 |
| 15 | Dutch | NOR36% | Called it:NOR | 2/3 |
| 14 | Belgian | HAM10% | Missed:VER | 1/3 |
| 13 | Hungarian | PIA13% | Missed:VER | 2/3 |
| 12 | British | HAM15% | Missed:RUS | 2/3 |
| 11 | Austrian | RUS4.6% | Missed:VER | 1/3 |
| 10 | Spanish | VER48% | Called it:VER | 3/3 |
| 9 | Canadian | VER56% | Called it:VER | 3/3 |
| 8 | Monaco | LEC51% | Called it:LEC | 2/3 |
| 7 | Emilia Romagna | VER64% | Called it:VER | 3/3 |
| 6 | Miami | NOR1.6% | Missed:VER | 2/3 |
| 5 | Chinese | VER56% | Called it:VER | 2/3 |
| 4 | Japanese | VER73% | Called it:VER | 2/3 |
| 3 | Australian | SAI14% | Missed:VER | 1/3 |
| 2 | Saudi Arabian | VER78% | Called it:VER | 3/3 |
| 1 | Bahrain | VER82% | Called it:VER | 1/3 |
Walk-forward backtest: the model predicted 66 races from the last 3 seasons without having seen them, and was compared with a simple rule that only uses the grid.
| Metric | Model | Grid only |
|---|---|---|
| Favourite wins | 62% | 61% |
| Top 3 on the podium | 68% | 69% |
| Win AUC | 0.962 | 0.943 |
| Log loss (lower is better) | 0.279 | 0.310 |
The model ranks the whole field better (AUC and log loss), but when it has to name a single winner it is right less often than “pole sitter wins”. Read it as chances, not a sure bet.
Data to 2026-R18 · xgb-race-outcome 20261026.042056 · Results from Jolpica, weather from Open-Meteo. Independent project, not affiliated with Formula 1. Source on GitHub
When the model says 30 %, does it happen 30 % of the time? Each pair of bars groups predictions of similar probability: the light bar is what was predicted, the dark one what happened.
Corrected with calibration: squared error over the last 22 races went from 0.0254 to 0.0248.
PredictedHappened
The probabilities on this page are the uncorrected model's; live predictions already carry the correction when it is applied.
Error of every audited race (lower is better). Last 8: 0.0219; whole record: 0.0286. It flags when the recent ones run 25 % above the average.
The predictions people made on the site before each race, compared with what happened.
No races with logged predictions and a result yet.
Left uncorrected: over the last 22 races it did not lower the error (0.0668 vs 0.0674).