Bahrain Grand Prix
01/Classification
Finishing order
| Pos | Driver | Constructor | Grid | +/- | Laps | Time / status | Pts | Fastest lap |
|---|---|---|---|---|---|---|---|---|
| 1 | Lewis Hamilton | Mercedes | 2 | +1 | 56 | 1:32:03.897 | 25 | 1:34.015 L44 |
| 2 | Max Verstappen | Red Bull | 1 | -1 | 56 | +0.745 | 18 | 1:33.228 L41 |
| 3 | Valtteri Bottas | Mercedes | 3 | 0 | 56 | +37.383 | 16 | 1:32.090 L56 |
| 4 | Lando Norris | McLaren | 7 | +3 | 56 | +46.466 | 12 | 1:34.396 L38 |
| 5 | Sergio Pérez | Red Bull | PIT | — | 56 | +52.047 | 10 | 1:33.970 L44 |
| 6 | Charles Leclerc | Ferrari | 4 | -2 | 56 | +59.090 | 8 | 1:34.988 L39 |
| 7 | Daniel Ricciardo | McLaren | 6 | -1 | 56 | +1:06.004 | 6 | 1:34.932 L36 |
| 8 | Carlos Sainz | Ferrari | 8 | 0 | 56 | +1:07.100 | 4 | 1:34.509 L48 |
| 9 | Yuki Tsunoda | AlphaTauri | 13 | +4 | 56 | +1:25.692 | 2 | 1:34.761 L38 |
| 10 | Lance Stroll | Aston Martin | 10 | 0 | 56 | +1:26.713 | 1 | 1:34.865 L31 |
| 11 | Kimi Räikkönen | Alfa Romeo | 14 | +3 | 56 | +1:28.864 | 0 | 1:35.192 L45 |
| 12 | Antonio Giovinazzi | Alfa Romeo | 12 | 0 | 55 | +1 Lap | 0 | 1:35.122 L32 |
| 13 | Esteban Ocon | Alpine F1 Team | 16 | +3 | 55 | +1 Lap | 0 | 1:35.250 L33 |
| 14 | George Russell | Williams | 15 | +1 | 55 | +1 Lap | 0 | 1:35.036 L40 |
| 15 | Sebastian Vettel | Aston Martin | 20 | +5 | 55 | +1 Lap | 0 | 1:35.566 L26 |
| 16 | Mick Schumacher | Haas F1 Team | 18 | +2 | 55 | +1 Lap | 0 | 1:36.134 L38 |
| 17 | Pierre Gasly | AlphaTauri | 5 | -12 | 52 | Retired | 0 | 1:34.090 L48 |
| 18 | Nicholas Latifi | Williams | 17 | -1 | 51 | Retired | 0 | 1:36.602 L16 |
| R | Fernando Alonso | Alpine F1 Team | 9 | — | 32 | Brakes | 0 | 1:36.063 L31 |
| R | Nikita Mazepin | Haas F1 Team | 19 | — | 0 | Accident | 0 | — |
Ordered on the source’s position column and printed from position_text. Those two disagree on purpose: position is a sort key that is never null, and position_text is what happened to the car. 2 of 20 cars here were not classified (2 retired). Across the archive that is 9,612 of 26,048 result rows, so a page that printed the sort key would tell more than a third of every field it finished.
02/Grid to finish
Grid minus finishing position
| Driver | Constructor | Grid | Fin | +/- |
|---|---|---|---|---|
| Sebastian Vettel | Aston Martin | 20 | 15 | +5 |
| Yuki Tsunoda | AlphaTauri | 13 | 9 | +4 |
| Lando Norris | McLaren | 7 | 4 | +3 |
| Kimi Räikkönen | Alfa Romeo | 14 | 11 | +3 |
| Esteban Ocon | Alpine F1 Team | 16 | 13 | +3 |
| Driver | Constructor | Grid | Fin | +/- |
|---|---|---|---|---|
| Pierre Gasly | AlphaTauri | 5 | 17 | -12 |
| Charles Leclerc | Ferrari | 4 | 6 | -2 |
| Max Verstappen | Red Bull | 1 | 2 | -1 |
| Daniel Ricciardo | McLaren | 6 | 7 | -1 |
| Nicholas Latifi | Williams | 17 | 18 | -1 |
Movement is grid minus finishing position, and it is computed for 17 of the 20 cars entered. It is left blank for the other 3: a car that was not classified has no finishing position to subtract from, and 1 car here carry grid 0, which the source uses for a pit lane start or for no recorded grid slot and this page prints as PIT, and neither has a grid position to subtract. Scoring a grid of 0 as a gain of every place on the grid is the arithmetic this rule exists to stop; 266 of 26,048 rows across the archive are grid 0, and 40 of those were classified.
03/The 2021 season
MAR 28 to DEC 12
| Rd | Date | Grand Prix | Circuit | Winner | Constructor | Cars |
|---|---|---|---|---|---|---|
| 1 | MAR 28 | Bahrain Grand Prix | Bahrain International Circuit | Lewis Hamilton | Mercedes | 20 |
| 2 | APR 18 | Emilia Romagna Grand Prix | Autodromo Enzo e Dino Ferrari | Max Verstappen | Red Bull | 20 |
| 3 | MAY 2 | Portuguese Grand Prix | Autódromo Internacional do Algarve | Lewis Hamilton | Mercedes | 20 |
| 4 | MAY 9 | Spanish Grand Prix | Circuit de Barcelona-Catalunya | Lewis Hamilton | Mercedes | 20 |
| 5 | MAY 23 | Monaco Grand Prix | Circuit de Monaco | Max Verstappen | Red Bull | 20 |
| 6 | JUN 6 | Azerbaijan Grand Prix | Baku City Circuit | Sergio Pérez | Red Bull | 20 |
| 7 | JUN 20 | French Grand Prix | Circuit Paul Ricard | Max Verstappen | Red Bull | 20 |
| 8 | JUN 27 | Styrian Grand Prix | Red Bull Ring | Max Verstappen | Red Bull | 20 |
| 9 | JUL 4 | Austrian Grand Prix | Red Bull Ring | Max Verstappen | Red Bull | 20 |
| 10 | JUL 18 | British Grand Prix | Silverstone Circuit | Lewis Hamilton | Mercedes | 20 |
| 11 | AUG 1 | Hungarian Grand Prix | Hungaroring | Esteban Ocon | Alpine F1 Team | 20 |
| 12 | AUG 29 | Belgian Grand Prix | Circuit de Spa-Francorchamps | Max Verstappen | Red Bull | 20 |
| 13 | SEP 5 | Dutch Grand Prix | Circuit Park Zandvoort | Max Verstappen | Red Bull | 20 |
| 14 | SEP 12 | Italian Grand Prix | Autodromo Nazionale di Monza | Daniel Ricciardo | McLaren | 20 |
| 15 | SEP 26 | Russian Grand Prix | Sochi Autodrom | Lewis Hamilton | Mercedes | 20 |
| 16 | OCT 10 | Turkish Grand Prix | Istanbul Park | Valtteri Bottas | Mercedes | 20 |
| 17 | OCT 24 | United States Grand Prix | Circuit of the Americas | Max Verstappen | Red Bull | 20 |
| 18 | NOV 7 | Mexico City Grand Prix | Autódromo Hermanos Rodríguez | Max Verstappen | Red Bull | 20 |
| 19 | NOV 14 | São Paulo Grand Prix | Autódromo José Carlos Pace | Lewis Hamilton | Mercedes | 20 |
| 20 | NOV 21 | Qatar Grand Prix | Losail International Circuit | Lewis Hamilton | Mercedes | 20 |
| 21 | DEC 5 | Saudi Arabian Grand Prix | Jeddah Corniche Circuit | Lewis Hamilton | Mercedes | 20 |
| 22 | DEC 12 | Abu Dhabi Grand Prix | Yas Marina Circuit | Max Verstappen | Red Bull | 20 |
Every figure here is one race, read from f1_results and f1_races. The finishing order is the source’s position column; the printed position is position_text, which is a letter on 9,612 of 26,048 rows across the archive (R retired 9,089, W withdrew 364, D disqualified 159). Grid 0 is a pit lane start and prints as PIT, not as a place ahead of pole; 266 of 26,048 rows are grid 0. Time is a total for the winner and a gap to the car ahead for everyone else, and it is present on 8,508 of 26,048 rows only, so most of the archive shows the status instead; where both exist and the status is not “Finished” the status is printed beside the time, because 8,335 of 16,436 classified rows finished lapped or otherwise not cleanly. The fastest lap column is empty before 2004: the source carries lap timing on 8,977 of 26,048 rows and a ranked fastest lap in 447 of 1,161 races, and speed on 8,238 of those, none after 2024. Points are printed as the source stores them and are never rounded to a whole number: 38 of 26,048 rows are fractional (0.5, 1.33, 3.14), which is half points for a shortened race and a split score for a shared car, and every one of them is real. Three races (1951 French, 1956 Argentine, 1957 British) print two cars as first, because two drivers shared one car and the record books credit both; in those three the source hangs the race points on other rows, which is why 5 of 1,164 winning rows across the archive print zero points. Constructors carry no logo in any f1_* table, so none is drawn and none is invented. The 2021 season is complete at 22 rounds.