Cadillac in the Field · 2026 F1 Season · V2 Field-Comparison Build
V2 of this analysis ranks every driver in the 2026 F1 field (22 drivers across 11 teams) on a single physics-anchored downforce indicator: minimum apex speed at every detected corner. Higher vmin = more grip = more downforce. The driver who carries the most apex speed has the most car under them. This page documents how the canonical corner detection works, how each driver's best-lap phase split is computed (with a strict closure invariant), how the per-driver per-corner metrics are derived, and how the field-comparison cohort palette is laid out.
Telemetry comes from FastF1 v3.8.2, which mirrors
livetiming.formula1.com with a fallback to the Jolpica
Ergast API. For each completed 2026 race we pull race-session laps
for every driver, then for each driver:
Telemetry channels used: Speed (km/h),
Throttle (%), Brake (0/1),
Distance (m), X and Y (track
coordinates, FastF1's native 0.1 m units — converted to metres for
curvature math). Sampling rate is 4 Hz for car data, which gives
~15 m localisation uncertainty at 250 km/h — fine for corner-level
analysis.
Data-quality gate. If a driver's best-lap ds/v integral disagrees with FastF1's reported LapTime by more than 1 s, the resampled telemetry is corrupt (FastF1 occasionally returns laps with bins populated by straight-line speeds inside corner windows). Those drivers are excluded from the field-comparison rankings for that race. Mid-race position-stream dropouts (frozen GPS coordinates, seen at Monaco) are screened the same way — laps whose XY trace freezes are rejected before they can poison a driver's median racing line. Across the 9 races this gate, plus DNS/early-DNF and telemetry exclusions, leaves 186 of 198 possible driver-races in the field-rank cohort. At Austria only 21 of 22 cleared the gate — Bottas's two-lap sample was rejected outright — and both Cadillac cars are additionally excluded from the season aggregate (see the Austria DNF note below).
Races analysed: Australia (R1, Mar 8), China (R2, Mar 15), Japan (R3, Mar 29), Miami (R4, May 3), Canada (R5, May 24), Monaco (R6, Jun 7), Barcelona (R7, Jun 14), Austria (R8, Jun 28). Saudi Arabia and Bahrain (the original R3 and R5) were cancelled mid-season and the schedule renumbered. Britain (R9, Silverstone) is next on the calendar.
Canada methodology note — fuel-symmetric lap sample. Sergio Pérez retired from the Canadian GP on lap 39 with a chassis fire. An F1 car burns roughly 1.6 kg of fuel per lap and laps roughly 0.3 s/lap faster for every 10 kg of fuel consumed. Comparing PER's early-stint laps against the rest of the field's late-stint clean laps would bias every survivor's apex-speed average upward by 1–2 km/h relative to PER — purely from the lower fuel load they were running.
To keep the Canadian-GP sample fuel-symmetric, we apply a
single global lap cap to the race: every driver's
candidate-lap pool is restricted to LapNumber ≤ 39
before picking each driver's single fastest clean lap. (Drivers
who retired earlier — ALB L11, ALO L23, RUS L29, NOR L38 — naturally
have smaller pools; LIN DNS.) The cap is applied only to Canada
and is recorded in races.canada.meta.global_lap_cap
of the pipeline output for reproducibility. No other race uses a
cap.
Monaco note — why no cap there. Valtteri Bottas retired from the Monaco GP on lap 16 of 78. Applying the Canada rule would have discarded 80% of the race for every driver, and at Monaco the fuel effect matters far less: minimum apex speeds are track-limited (walls, not grip, set the line), so early full-fuel laps are representative of cornering capability. We therefore use the full race for the field and flag that BOT's Monaco sample is 16 laps, all on heavy fuel — if anything a slight headwind for his numbers, not a tailwind. PER's sample spans his full 78-lap race.
Barcelona note — why no cap there either. Valtteri Bottas retired from the Barcelona GP on lap 15 of 66. Unlike Canada — where the Cadillac car that retired (PER) was the one at a fuel disadvantage — at Barcelona Pérez ran the full race (63 laps, classified), so the headline Cadillac field comparison isn't fuel-biased. Only BOT's sample is short, and a field-wide L15 cap would discard ~77% of the race on a circuit where the cleanest fast laps come later in the stint, on lower fuel. We therefore use the full race and flag that BOT's Barcelona sample is 15 laps, all on heavy fuel — which on this high-speed aero circuit understates his pace (his −10.4 km/h Barcelona gap is partly a fuel artefact, not pure grip deficit). PER's sample spans his full race.
Austria note — both Cadillac cars excluded (asterisk).
Unlike Canada, Monaco, and Barcelona — where a lap cap or a flag was
enough to keep the sample honest — Austria offered no usable
Cadillac data at all. Both MAC-26s retired with brake fires inside
the opening laps (PER lap 4, BOT lap 2), well before
either could complete a representative clean lap. A two-to-four-lap,
full-fuel, cold-brake sample isn't a fuel-bias problem you can cap
away — it simply isn't a measurement of cornering pace. So rather than
a cap, we apply a hard exclusion: Bottas fails the data-quality
gate outright, and both PER and BOT are dropped from the Austria
contribution to the season averages
(EXCLUDE_DRIVER_RACES = {(austria, PER), (austria, BOT)} in
the pipeline). The other ~20 drivers, who completed the race, do count
Austria — which is why the field's corner counts reach 122 while
Cadillac's sit at 114. Net effect: Austria adds nothing to the Cadillac
season figures — but Britain, where both cars finished, does, and its
high-speed corners nudged the Cadillac averages slightly wider while the
cushion over Aston Martin grew back to 0.92 km/h.
We don't have FastF1's "official" corner metadata for every track, so we identify corners directly from the geometry of the track polyline. The track outline (X, Y in metres) is sampled on the same 5 m grid as the speed traces. From it we compute the signed curvature at every point:
where derivatives are with respect to lap distance s. A straight has κ ≈ 0. A circular arc of radius R has κ = 1 / R. We smooth lightly (5-bin uniform filter, periodic) to suppress noise from the polyline downsampling, then detect corners as local peaks in κ exceeding κmin = 0.005 m−1 (corresponding to a corner radius of ≤ 200 m), with a minimum spacing of 140 m to avoid double-counting compound turns.
Secondary-peak rescue pass. The strict 140 m separation rule is great at rejecting noise but can also reject real corners packed close together (e.g. Miami's T13–T15 chicane, where two genuine apices sit only ~90 m apart). After the strict pass we re-scan for any rejected κ peaks meeting a higher bar — κ ≥ 0.020 m−1 (radius ≤ 50 m, i.e. clearly a real corner) and at least 60 m clear of every accepted peak — and add those back. The two-stage filter keeps the algorithm conservative on long sweepers while catching the chicane-style sequences a single threshold misses.
Each detected corner is widened outward from its peak while κ > κpeak / 3, which captures the entry braking, the apex, and the early exit. Bins outside any corner window are classified as straight.
Window-overlap dedup pass. The strict and rescue passes can both fire on the same physical complex — the strict pass picks up the wide low-κ averaged "super-blob" peak that sits at the geometric centroid of a multi-apex sequence, while the rescue pass picks up the sharper high-κ apex peaks inside it. Two tightly spaced peaks can also widen out to identical valley-to- valley extents. To avoid double-counting we run a final dedup pass: for any pair of corners whose windows overlap by ≥ 80 % of either window, we drop the one with the lower κpeak. The rule keeps the sharper, more localized apex and discards the wider averaged blob — physically the right call, since the lower-κ window was just an artifact of the strict pass averaging across a multi-apex complex.
| Parameter | Value | Why |
|---|---|---|
CORNER_PEAK_KAPPA | 0.005 m−1 | Corner radius ≤ 200 m. Excludes long sweepers like Suzuka 130R from the corner mask. |
CORNER_MIN_SEP_M | 140 m | Minimum lap-distance spacing between detected peaks (strict pass). Prevents double-counting Spoon's two apices. |
RESCUE_KAPPA | 0.020 m−1 | Higher κ floor for the rescue pass (radius ≤ 50 m). Reserved for unambiguous corners packed inside the 140 m strict-pass window. |
RESCUE_MIN_SEP_M | 60 m | Minimum spacing for rescue-pass peaks from any already-accepted peak. Catches chicane apices (Miami T13–T15) that the strict 140 m rule rejected. |
DEDUP_OVERLAP_FRAC | 0.80 | Drop a corner if its window overlaps another corner's by ≥ 80 % of either window — keep the sharper (higher-κ) apex, discard the wider averaged super-blob. |
CORNER_KAPPA_FRAC | 1 / 3 | Corner extends outward while κ > κpeak / 3 — captures the entry, apex, and early exit. |
SMOOTH_WINDOW_M | 25 m | Uniform-filter window for speed/throttle smoothing. |
Sanity-check: when the algorithm above is applied to the eight tracks Cadillac has raced in 2026 so far, the corner-bin mask (red overlay) lights up in the places anyone who's watched a Grand Prix would expect — Albert Park's Lakeside / Brabham complex, Shanghai's hairpin and the long T11-T12 sequence, Suzuka's Esses, Degner, Hairpin, and Spoon, Miami's hairpin sequence and the chicane after the back straight, and the Red Bull Ring's compact set of heavy-braking corners between the climbs. Numbered markers are the per-corner C-IDs the pipeline uses everywhere else in the analysis. The percentages at the bottom of each panel are the fraction of the lap distance classified as corner phase.
For each driver and each detected corner zone Z, the minimum apex speed is the lowest speed they recorded inside that corner window on their single fastest clean lap:
where the minimum is taken only over valid bins — bins where the driver's actual lap telemetry covered the corner window (telemetry-gap bins are filled from the median trace for κ math but excluded from min-speed extraction). Higher vmin = more grip = more downforce. F1 race engineers call this metric the apex-V; it's the cleanest, uncapped, most defensible single-number indicator of corner grip.
Field-relative gap is what we report on the narrative page:
Positive Δv means the driver is above the field median for that corner; negative means below. Each driver's season gap is the average across all detected corners across all races.
Across the 6 races (87 corners per driver after the data-quality gate), Cadillac's two drivers sit near the bottom of the average gap to the field median: PER −2.9 km/h, BOT −5.5 km/h. The driver-leader (ANT) is at +3.5 km/h. The team-leader (Ferrari) is at +3.1 km/h on the team-rank metric (median of two drivers' season gaps). Cadillac's team gap of −4.2 km/h is 10/11, ahead of Aston Martin (−4.7 km/h) for the second race running — and Monaco stretched that margin from 0.25 to 0.47 km/h.
For each driver, on their single fastest clean lap, classify each 5 m bin as either corner or straight using a throttle/brake heuristic computed from that driver's own telemetry — not from the canonical track κ.
where τ̃i is the driver's throttle channel (smoothed with a 5-bin uniform filter to suppress single-sample dips) and bi is the brake channel. The 0.92 threshold is calibrated against the canonical track-κ corner mask — it agrees on ~85 %+ of bins on average and absorbs the partial- throttle modulation drivers do on long sweepers (Suzuka 130R, Spoon entry) that wouldn't otherwise count as corners.
Closure invariant (asserted at write time on unrounded floats, every driver, every race):
Add the two phase totals back together and you get the lap time exactly. No averaging, no fudge factors, no masking. The story becomes "your fastest Suzuka lap was 95.604 s; 49 of that was in the corners, 47 was on the straights" — a partition you can defend down to the millisecond.
The cornering_pct = Tcorner / Tlap varies by track (Miami at ~52 %, Suzuka at ~52 %, Australia at ~52 %, China at ~58 %) and by driver style (the slowest cars spend more time in the corner phase because their corner v is lower; the fastest cars spend less). It's a useful per-race circuit-shape indicator.
Validity-mask gate. Bins where the driver's actual lap telemetry didn't reach (lap-edge truncation, brief signal drop-out) are filled from the median trace for κ math but excluded from the integration via a per-bin validity mask. The closure invariant is enforced over the valid-bin subset, so Tcorner + Tstraight = Tvalid lap even when a driver's coverage is partial.
As a physics-anchored secondary indicator, we compute lateral G per driver per corner. From the canonical track curvature and each driver's speed trace on their best lap:
Per corner we take the 99th percentile of alat across the corner window — robust enough against single-bin noise to be reliable.
Lat-G is a secondary indicator with caveats. Real F1 cars peak around 5.5 g sustained, ~6 g brief. Anything above is by definition a κ-noise or v-interpolation artefact: the canonical FastF1 reference outline has occasional kinks where κ spikes to 0.10–0.14 (vs. the ~0.04 ceiling for real F1 corners). Combined with v² these manufacture impossible 100 g+ peaks. We therefore clip lat-G at the 6 g physical ceiling and reject corners with peak κ > 0.10 (radius < 10 m) at detection time. With these gates in place, the remaining values are physically bounded but compress the field into a tight 4–5 g range — the lat-G ranking is less discriminating than the minimum-apex-speed ranking. That's why minimum apex speed is the headline V2 metric, not peak lat-G.
V2 abandons the "Cadillac vs midfield reference" framing of V1. Instead, every metric is computed against the full 22-driver field. The field median is the natural reference: the driver in the middle of the grid carries some apex speed, and any driver below the median is slower than half the field. The metric is honest and uncapped.
For visualisation, drivers are bucketed into four cohorts so a 22-dot scatter doesn't become a noise wash:
The field median at each point is the median across all qualifying drivers (after the data-quality gate). Median not mean: robust to one driver having an off-lap contaminate the reference.
For each team driver d, average the per-corner gap to the field median across all corners Z across all races k. Then take the median of the team's two drivers — that's the team's season-aggregate gap to the field. Negative = below the field.
Cohort coloring is for legibility, not weighting. Every driver in the field counts equally toward the field median — the cohort palette only changes how dots look on the charts, not how the underlying metric is computed. A "rest of grid" driver contributes the same statistical weight as a front-runner.
In short: this is not a "Cadillac is bad" report; it's an attribution of where the team specifically sits in the field. The minimum-apex-speed metric is consistent across drivers, races, and corner types — and Cadillac sits at the bottom in every breakdown. That's the claim the data supports.