Our models are sharper than the market.
We grade our models against live prediction markets: real, money-backed odds on Polymarket and Kalshi. In 2026, our win probabilities scored closer to the result than theirs, before lights-out and live.
Real predictions, not replays. Every number was made with the outcome unknown, then graded against what happened and against the live market price.
We track the fight as it swings
Each line is the model's live championship probability after every round of 2025. If we just followed the points leader, one line would sit on top all year. Instead the lead changes hands — Piastri our favorite from late August into October — before Norris's late surge to the title.
Norris took the title, but he was never a lock. Our model had him as low as 24% in early September, with Piastri at 76%. Calling a season isn't backing the leader; it's being right about when the lead is real.
Every market, including the ones we don't win
| Market | Season | Us vs the market | Significance | Calibration (ours vs market) | Verdict |
|---|---|---|---|---|---|
| Pre-race winner | 2026 | Sharper in 6 of 9 races | p = 0.005 | 0.020 vs 0.022 | Lead |
| Live winner, mid + late | 2026 | 44% better calibrated | p ≤ 0.01 | 0.014 vs 0.025 | Lead |
| Drivers' champion | 2025 | Right 71% vs 24% | p < 0.01 | 0.015 vs 0.044 | Lead |
| Live winner, opening laps | 2026 | Level | n.s. | on par | Parity |
| Podium (top 3) | 2026 | Level | n.s. | market tighter | Parity |
| Constructors' champion | 2024 | Level | n.s. | 0.088 vs 0.109 | Parity |
“Parity” means the market was efficient and we matched it. We leave those in. A scorecard with no parity rows isn't honesty, it's marketing.
The models feeding those lines
One rule: a miss is reported as a miss. The live in-race edge is significant but rests on a five-race 2026 sample, so it's suggestive, not yet proven. It settles as the season runs. Every number is measured out of sample, never fit and reported on the same data.
See the predictions land, live.
What our models said, live, checked against what happened. Race by race.
50+ real-time feeds,
pushed the moment they fire.
50+ real-time feeds across timing, race control, strategy, and more — pushed directly to your endpoint the moment they happen. The Developer tier unlocks every live data feed; Custom adds the ML feed suite on top. The Free tier lets you build and test on historical and simulated sessions.
Lap times, sector splits, gaps, and mini-sector detail — every lap.
Flags, race control messages, and team communications.
Session status, clock, lap count, track status, and the driver list.
Tire stints and history, pit stops, and pit-lane timing.
Track conditions, rainfall events, forecasts, and weather intelligence.
Synthesized event streams — overtakes, milestones, qualifying events.
Feed id values (e.g. timing.data, race-control.messages) are in the Feed Catalog.
Every payload arrives
already intelligent.
Position distributions, pit and safety-car probabilities, tyre state — inside the timing data you already consume.
How each model works, and how it's calibrated: the models reference →
Beyond the models — race intelligence in every payload.
The fourteen ML models sit alongside a continuously-updated algorithmic layer — probabilistic race state computed analytically, not sampled. It ships in the same analytics key.
Win & Podium Probability
Monte Carlo"winProbability": 0.58,
"podiumProbability": 0.91,
"winProbabilityDelta": +0.12Position Distribution
Monte Carlo"positionDistribution": [
0.58, 0.21, 0.12, 0.05, …
]Expected Championship Points
ECP / ECPA"ecp": 18.4,
"ecpa": +2.1,
"ecpaEvent": "SAFETY_CAR"Tyre Health
EKF / Kalman"tireHealth": 0.62,
"degRateSecPerLap": 0.04,
"cliffLapPredicted": 6All fourteen ML models above — each with full technical documentation: training approach, input features, output fields, and business context.
Explore the full analytics documentation →Who builds on RaceHooks
Fantasy & DFS Projections
Every scoring category, projected live.
Quant & Research Tooling
Calibrated probabilities you can backtest.
Media & Broadcast
Surface the story before it happens.
Developer Tools
Build without waiting for race day.
Simple, transparent pricing.
Replay this season's races free. Go paid to get it live.
Build and test your integration before going live.
Every live feed, metered by delivery — build and ship commercial products.
Production-scale delivery, an SLA, the full 14-model analytics stack, dedicated infrastructure — whatever your product needs.
Unlimited live delivery, contractual SLA, the full 14-model ML analytics stack (win/podium probability, tyre health, pit predictions, 22 derived feeds), dedicated infrastructure, custom limits and throughput, a named CSM — priced around what you actually use, not a fixed tier. Talk to sales@racehooks.io.
Cancel anytime. Annual billing saves 20% — and Simulate lets you build against real race data any time, even between race weekends.
First webhook in five minutes.
Register an endpoint. Subscribe to a feed. Your first delivery arrives in under 5 minutes.
Replay this season's sessions at up to 10× — build before race day.
Every payload signed. One line to verify.
Headers, status, latency, retries — every attempt, exportable.
F1 live. IndyCar data live. More coming.
One integration across every series. Your code keeps working as sports launch.
Query results (1996–2026), standings, schedule, and roster today. Real-time IndyCar streaming delivery is in development — get notified when it ships.