Round 2 · 2026

Shanghai International Circuit

Shanghai, China · March 15, 2026 · Circuit History · Wikipedia

Kings of this circuit
The race, in perspective

Race debrief

What did we expect after qualifying—and who beat it?

R022026
Share this debrief
Preview share card ↗
22 stored results 22/22 Elo snapshots 22/22 numbered grid slots 22/22 qualifying results
Elo × qualifying → race result

Did they beat the expectation?

A strong driver recovering from a poor qualifying position isn't automatically a surprise. This model estimates a finish from both inputs, then compares it with what happened.

Experimental · v1

Expected finish assumes a classified finish. DNFs stay in the full grid but receive no performance verdict. Qualifying is not the starting grid; grid differences are flagged, not silently substituted.

Fit on 668 earlier finishes across 40 races, 2016–2026. No results from this race enter its expectation.

Top 3

Beat the estimate
  1. Liam Lawson RB F1 Team · Elo #14 · Q14

    Expected P12.0 Finished P7

    +5.0places
  2. Pierre Gasly Alpine F1 Team · Elo #20 · Q7

    Expected P10.5 Finished P6

    +4.5places
  3. Valtteri Bottas Cadillac F1 Team · Elo #22 · Q20

    Expected P17.2 Finished P13

    +4.2places

Flop 3

Below the estimate
  1. Esteban Ocon Haas F1 Team · Elo #11 · Q13

    Expected P10.6 Finished P14

    −3.4places

15/22 entrants assessed. Up to three per side, ranked by expected minus actual finish. DNFs, missing estimates and gaps rounding to 0.0 are excluded. “Flop” means below the model's estimate—not poor driving. A ranked gap can still be inside the usual error range.

Full grid: pre-race Elo rank, qualifying position, estimated finish, actual result and difference from expectation. Positive differences mean finishing ahead of the estimate.
DriverPre-race EloQualifyingExpectedResultP1 ← position → P22vs expectedReading
A. AntonelliMercedes #62282 P1 P3.5P1–P8 P1 +2.5places In range
G. RussellMercedes #22495 P2 P2.8P1–P7 P2 +0.8places In range
L. HamiltonFerrari #72271 P3 P4.7P1–P9 P3 +1.7places In range
C. LeclercFerrari #42381 P4 P4.3P1–P8 P4 +0.3places In range
O. BearmanHaas F1 Team #82167 P10 P8.3P4–P12 P5 +3.3places In range
P. GaslyAlpine F1 Team #202013 P7 P10.5P6–P15 P6 +4.5places In range
L. LawsonRB F1 Team #142084 P14 P12.0P8–P16 P7 +5.0places Above range
I. HadjarRed Bull #152068 P9 P10.0P6–P14 P8 +2.0places In range
C. SainzWilliams #92140 P17 P11.9P8–P16 P9 +2.9places In range
F. ColapintoAlpine F1 Team #211954 P12 P13.2P9–P17 P10 +3.2places In range
N. HülkenbergAudi #182032 P11 P11.8P8–P16 P11 +0.8places In range
A. LindbladRB F1 Team #172040 P15 P13.4P9–P18 P12 +1.4places In range
V. BottasCadillac F1 Team #221935 P20 Grid P19 P17.2P13–P21 P13 +4.2places In range
E. OconHaas F1 Team #112115 P13 P10.6P6–P15 P14 −3.4places In range
S. PérezCadillac F1 Team #132095 P22 Grid P21 P15.4P11–P20 P15 +0.4places In range
M. VerstappenRed Bull #12578 P8 P5.3P1–P9 DNFRetired Not assessedDNF: Retired
F. AlonsoAston Martin #102129 P19 Grid P18 P13.1P9–P17 DNFRetired Not assessedDNF: Retired
L. StrollAston Martin #192016 P21 Grid P20 P16.8P13–P21 DNFRetired Not assessedDNF: Retired
O. PiastriMcLaren #52366 P5 P5.1P1–P9 DNSDid not start Not assessedDNS: Did not start
L. NorrisMcLaren #32467 P6 P4.9P1–P9 DNSDid not start Not assessedDNS: Did not start
G. BortoletoAudi #162060 P16 P13.5P9–P18 DNSDid not start Not assessedDNS: Did not start
A. AlbonWilliams #122098 P18 Grid P22 P13.3P9–P17 DNSDid not start Not assessedDNS: Did not start
How useful is the model? See the historical check

Average absolute error on 668 classified finishes in 40 earlier races within the last ten years. Each race was held out and predicted using only older races; all three models use the same samples.

Elo + qualifying
2.19places
Qualifying only
2.37places
Elo only
2.68places

The range scales the 80th percentile of earlier held-out absolute errors to this field size, rounding outward. It is an empirical error guide, not a guaranteed 80% chance for a particular driver. We require at least five checked races and 100 checked finishes before showing it.

Inputs are field-normalised Elo rank and qualifying position. The target is position among all race entries, trained only on classified finishers. Estimates are averages, not a unique predicted finishing order. Penalties, the circuit, weather, incidents and strategy aren't model inputs. Historical qualifying coverage is patchy; this is an exploratory backtest on corrected records, not proof of live forecasting accuracy.

The rating ledger

What changed in Elo?

These are actual rating changes. The expectation model above does not change Elo or fantasy scoring.

Largest Elo gain

Gasly+46.8 Elo

Largest Elo loss

Norris−76.3 Elo

Largest grid-to-finish gain

Sainz+8 places

The bigger picture

Championship after this round

Top five in the stored standings. Points include sprint results where applicable.

  1. 1 Russell 51pts 0
  2. 2 Antonelli 47pts 0
  3. 3 Leclerc 34pts 0
  4. 4 Hamilton 33pts 0
  5. 5 Bearman 17pts +2

Movement since round 1. A dash means the earlier standing is unavailable.

Explore the season →
Across the garage

Teammate results

Two-driver constructor entries from this race. A result comparison, not an adjustment for strategy or reliability.

Red Bull

HadjarP8+29.8 Elo
VerstappenDNF−64.0 Elo

Non-finish recorded; no finishing gap comparison.

Q3 · Verstappen 0.119s faster

Williams

SainzP9+15.3 Elo
AlbonDNS−44.5 Elo

Non-finish recorded; no finishing gap comparison.

Q1 · Sainz 0.455s faster

Audi

HülkenbergP11+19.2 Elo
BortoletoDNS−34.6 Elo

Non-finish recorded; no finishing gap comparison.

Q2 · Hülkenberg 0.611s faster

Aston Martin

AlonsoDNF−23.4 Elo
StrollDNF−14.0 Elo

Non-finish recorded; no finishing gap comparison.

Q1 · Alonso 0.792s faster

McLaren

PiastriDNS−61.9 Elo
NorrisDNS−76.3 Elo

Non-finish recorded; no finishing gap comparison.

Q3 · Piastri 0.058s faster

What this analysis can—and cannot—tell you

This debrief is calculated from stored results and rating snapshots. The experimental expectation model learns from earlier races only, using Elo rank and qualifying together; it never feeds back into Elo. It is not a separately reviewed race report.

Elo uses the result order, including retirements. It does not isolate driver skill from the car, reliability, penalties or strategy. Elo seed comparisons use pre-race ratings, never today's ratings. Equal ratings share the midpoint of their rank range (for example, tied first and second become seed 1.5).

Grid gains use numbered starting slots and classified finishes only. Zero or missing grid values are excluded; a position gained is not necessarily an overtake. Qualifying gaps use the latest segment both teammates have a valid time for, never Q1 against Q3.

Lap-by-lap pace, tyre stints, pit-stop execution and safety-car effects are not available in this report. Missing data is omitted, not inferred.

Read the Elo methodology →
22
Result Entries
Avg Elo
Highest Elo (Verstappen)
14
Non-finishes

Race

Sprint

Qualifying

# Driver Grid +/- Points Season Pts Season # Elo Change Elo
P1 🇮🇹 A.Antonelli 1 +25 47 P2 +37.8 2,320
P2 🇬🇧 G.Russell 2 +18 51 P1 +12.1 2,507
P3 🇬🇧 L.Hamilton 3 +15 33 P4 +29.0 2,300
P4 🇲🇨 C.Leclerc 4 +12 34 P3 +12.0 2,393
P5 🇬🇧 O.Bearman 10 +5 +10 17 P5 +31.9 2,199
P6 🇫🇷 P.Gasly 7 +1 +8 9 P7 +46.8 2,059
P7 🇳🇿 L.Lawson 14 +7 +6 8 P9 +32.8 2,116
P8 🇫🇷 I.Hadjar 9 +1 +4 4 P11 +29.8 2,097
P9 🇪🇸 C.Sainz 17 +8 +2 2 P13 +15.3 2,156
P10 🇦🇷 F.Colapinto 12 +2 +1 1 P15 +33.5 1,988
P11 🇩🇪 N.Hülkenberg 11 0 0 P17 +19.2 2,052
P12 🇬🇧 A.Lindblad 15 +3 0 4 P10 +13.3 2,053
P13 🇫🇮 V.Bottas 19 +6 0 0 P19 +20.5 1,955
P14 🇫🇷 E.Ocon 13 -1 0 0 P16 -6.5 2,108
P15 🇲🇽 S.Pérez 21 +6 0 0 P20 -8.9 2,086
DNF 🇳🇱 M.Verstappen 8 0 8 P8 -64.0 2,514
DNF 🇪🇸 F.Alonso 18 0 0 P21 -23.4 2,105
DNF 🇨🇦 L.Stroll 20 0 0 P22 -14.0 2,002
DNS 🇦🇺 O.Piastri 5 0 3 P12 -61.9 2,304
DNS 🇬🇧 L.Norris 6 0 15 P6 -76.3 2,391
DNS 🇧🇷 G.Bortoleto 16 0 2 P14 -34.6 2,026
DNS 🇹🇭 A.Albon 22 0 0 P18 -44.5 2,053
# Driver Grid +/- Points Time Elo
P1 🇬🇧 G.Russell 1 +8 33:38.998 2,405
P2 🇲🇨 C.Leclerc 6 +4 +7 +0.674 2,308
P3 🇬🇧 L.Hamilton 4 +1 +6 +2.554 2,437
P4 🇬🇧 L.Norris 3 -1 +5 +4.433 2,417
P5 🇮🇹 A.Antonelli 2 -3 +4 +5.688 2,441
P6 🇦🇺 O.Piastri 5 -1 +3 +6.809 2,316
P7 🇳🇿 L.Lawson 13 +6 +2 +10.900 2,216
P8 🇬🇧 O.Bearman 9 +1 +1 +11.271 2,020
P9 🇳🇱 M.Verstappen 8 -1 0 +11.619 2,335
P10 🇫🇷 E.Ocon 12 +2 0 +13.887 2,035
P11 🇫🇷 P.Gasly 7 -4 0 +14.780 2,203
P12 🇪🇸 C.Sainz 17 +5 0 +15.753 2,061
P13 🇧🇷 G.Bortoleto 14 +1 0 +15.858 2,161
P14 🇦🇷 F.Colapinto 16 +2 0 +16.393 2,135
P15 🇫🇷 I.Hadjar 10 -5 0 +16.430 2,286
P16 🇹🇭 A.Albon 22 +6 0 +20.014 1,979
P17 🇪🇸 F.Alonso 18 +1 0 +21.599 2,002
P18 🇨🇦 L.Stroll 19 +1 0 +21.971 1,901
P19 🇲🇽 S.Pérez 21 +2 0 +28.241 1,955
DNF 🇩🇪 N.Hülkenberg 11 -9 0 Retired 2,099
DNF 🇫🇮 V.Bottas 20 -1 0 Retired 1,862
DNF 🇬🇧 A.Lindblad 15 -7 0 Retired 2,187
Sprint results do not affect Elo ratings
# Driver Q1 Q2 Q3 Gap Elo
1 🇮🇹 A.Antonelli 1:33.305 1:32.443 1:32.064 1:32.064 2,441
2 🇬🇧 G.Russell 1:33.262 1:32.523 1:32.286 +0.222 2,405
3 🇬🇧 L.Hamilton 1:33.522 1:32.567 1:32.415 +0.351 2,437
4 🇲🇨 C.Leclerc 1:33.175 1:32.486 1:32.428 +0.364 2,308
5 🇦🇺 O.Piastri 1:33.590 1:33.130 1:32.550 +0.486 2,316
6 🇬🇧 L.Norris 1:33.535 1:32.910 1:32.608 +0.544 2,417
7 🇫🇷 P.Gasly 1:33.788 1:33.003 1:32.873 +0.809 2,203
8 🇳🇱 M.Verstappen 1:33.417 1:33.098 1:33.002 +0.938 2,335
9 🇫🇷 I.Hadjar 1:33.632 1:33.352 1:33.121 +1.057 2,286
10 🇬🇧 O.Bearman 1:33.687 1:33.197 1:33.292 +1.228 2,020
11 🇩🇪 N.Hülkenberg 1:34.116 1:33.354 +1.29 2,099
12 🇦🇷 F.Colapinto 1:33.634 1:33.357 +1.293 2,135
13 🇫🇷 E.Ocon 1:33.974 1:33.538 +1.474 2,035
14 🇳🇿 L.Lawson 1:34.139 1:33.765 +1.701 2,216
15 🇬🇧 A.Lindblad 1:33.906 1:33.784 +1.72 2,187
16 🇧🇷 G.Bortoleto 1:33.549 1:33.965 +1.901 2,161
17 🇪🇸 C.Sainz 1:34.317 +2.253 2,061
18 🇹🇭 A.Albon 1:34.772 +2.708 1,979
19 🇪🇸 F.Alonso 1:35.203 +3.139 2,002
20 🇫🇮 V.Bottas 1:35.436 +3.372 1,862
21 🇨🇦 L.Stroll 1:35.995 +3.931 1,901
22 🇲🇽 S.Pérez 1:36.906 +4.842 1,955
Data: Jolpica (Ergast) API

Elo Changes

Predictions