| Fin | Driver | Team | Rating Δ | Rating |
|---|---|---|---|---|
| P1 | Pedro Piquet | Trident | +145 | 5,138 |
| P2 | Robert Shwartzman | Prema Racing | +58 | 6,399 |
| P3 | Jehan Daruvala | Prema Racing | +85 | 5,711 |
| P4 | Christian Lundgaard | ART Grand Prix | +81 | 5,605 |
| P5 | Juri Vips | Hitech Grand Prix | +40 | 6,118 |
| P6 | Yuki Tsunoda | Jenzer Motorsport | +59 | 5,598 |
| P7 | Leonardo Pulcini | Hitech Grand Prix | +51 | 5,557 |
| P8 | Marcus Armstrong | Prema Racing | — | 6,254 |
| P9 | Max Fewtrell | ART Grand Prix | +26 | 5,612 |
| P10 | David Beckmann | ART Grand Prix | +43 | 5,166 |
| P11 | Teppei Natori | Carlin Buzz Racing | +94 | 4,270 |
| P12 | Liam Lawson | MP Motorsport | +13 | 5,300 |
| P13 | Logan Sargeant | Carlin Buzz Racing | +10 | 5,169 |
| P14 | Keyvan Andres | HWA Racelab | +83 | 3,942 |
| P15 | Yifei Ye | Hitech Grand Prix | +14 | 4,795 |
| P16 | Giorgio Carrara | Jenzer Motorsport | +30 | 4,399 |
| P17 | Richard Verschoor | MP Motorsport | −15 | 4,891 |
| P18 | Felipe Drugovich | Carlin Buzz Racing | −35 | 5,034 |
| P19 | Niko KARI | Trident | −61 | 5,249 |
| P20 | Bent Viscaal | HWA Racelab | −44 | 4,837 |
| P21 | Jake Hughes | HWA Racelab | −94 | 5,418 |
| P22 | Lirim Zendeli | Sauber Junior Team by Charouz | −74 | 4,957 |
| P23 | Andreas Estner | Jenzer Motorsport | −5 | 3,826 |
| P24 | Simo Laaksonen | MP Motorsport | −62 | 4,438 |
| P25 | Sebastian Fernandez | Campos Racing | −59 | 4,251 |
| P26 | Raoul Hyman | Sauber Junior Team by Charouz | −56 | 4,076 |
| P27 | Fabio Scherer | Sauber Junior Team by Charouz | −105 | 4,594 |
| P28 | Alessio Deledda | Campos Racing | −1 | 2,885 |
| P29 | Devlin Defrancesco | Trident | −96 | 4,175 |
| DNF | Alex Peroni | Campos Racing | −124 | 4,396 |
Rating Δ is the Elo exchange from this race: taken from the cars finished behind, ceded to those ahead, net zero across the field. A shared car splits its change among co-drivers by FIA grade, so both appear at the same position.