ACCURACY
Every TELOS race prediction logged and checked against the actual finish. No cherry-picking.
As of 5 November 2026, the TELOS pre-race model has called the winner in 10 of 12 Grand Prix (83.3%) and put an average of 1.67 of its 3 podium picks on the real podium. Every miss is listed below.
Excluded from every score: Italy 2026 β an editorial override replaced the model's call.
Does the model beat the grid?
The honest test for a race model is not "how often did it pick the winner" β in a season where the pole-sitter nearly always wins, anyone can. It is whether it beats the obvious baseline. Replayed race by race over 2019-2026, each race predicted using only the races before it:
| Method | Winner called | Log-loss β |
|---|---|---|
| TELOS race model | 59.1% | 1.186 |
| "The pole-sitter wins" | 56.1% | 1.44 (grid-slot odds) |
| Pick at random | ~5% | ~3.0 |
Are the percentages honest? When the model gives a driverβ¦
Full method, every test and the model that failed its test: model cards.
Not every season flatters it: in 2026 so far the model called 11 of 19 winners and the pole-sitter won 13. Across seasons it is ahead; in a single season, luck and one dominant car can beat it.
How TELOS AI works
The model, the inputs, and what we don't pretend.
Model. A statistical model trained on every Grand Prix since 2014 (a conditional logit, the standard way to model "one winner out of a field"). Three inputs: the driver's qualifying position, the team's recent form (results of its best car, recent races weighted most) and the driver's own recent form. Their weights are fitted to history, not chosen by hand. Podium and points odds come from simulating the race thousands of times. Before qualifying it runs on form alone and the pick is marked provisional; it is re-made once, after qualifying, then frozen.
Where AI fits. None of the numbers come from a language model. An LLM only writes the sentences explaining the model's call, and it is not allowed to change the pick or quote a percentage. Picks made before late September 2026 came from the earlier system, where an LLM made the call itself; they stay in the record, badged LLM, and are scored separately.
What it cannot see. Weather, strategy, upgrades, reliability, first-lap chaos. That is why a 60% favourite still loses four races in ten, and why the model is judged against the grid, not against perfection.
Logging. Every validated pick is upserted into race_prediction_history immediately. After the race finishes, ground truth is auto-inserted by a cron job pulling actual positions from OpenF1. Hit-rate is computed by joining the two β no after-the-fact 'corrections'.
How we score it. Three numbers, hardest to easiest: exact slots β was P1/P2/P3 called in the right order; podium hits β how many of our three finished on the podium in any order; and calibration β a Brier score on the winner confidence, i.e. when we say "40%" does it hit ~40% of the time. A perfectly-calibrated, perfectly-confident model scores 100%.
What this is not. Not betting advice. Not a guarantee. Race outcomes are dominated by chaos (weather, retirements, strategy calls). The claim is only the pre-race number above, scored against the real finish. Picks labelled SIM are a historical backtest, kept separate from the real record. Every miss stays on the page.