
| 1 | Bilbao – Bilbao | 3 | Tadej Pogačar |
| 2 | Vitoria-Gasteiz – San Sebastián | Mathieu van der Poel | |
| 3 | Amorebieta-Etxano – Bayonne | 1 | Jasper Philipsen |
| 4 | Dax – Nogaro | Fabio Jakobsen | |
| 5 | Pau – Laruns | Mattias Skjelmose Jensen | |
| 6 | Tarbes – Cauterets | David Gaudu | |
| 7 | Mont-de-Marsan – Bordeaux | Dylan Groenewegen | |
| 8 | Libourne – Limoges | 3 | Wout van Aert |
| 9 | Saint-Léonard-de-Noblat – Puy de Dôme | Simon Yates | |
| 10 | Vulcania – Issoire | Mads Pedersen | |
| 11 | Clermont-Ferrand – Moulins | Caleb Ewan | |
| 12 | Roanne – Belleville-en-Beaujolais | Matej Mohorič | |
| 13 | Châtillon-sur-Chalaronne – Grand Colombier | Thibaut Pinot | |
| 14 | Annemasse – Morzine | Jai Hindley | |
| 15 | Les Gets – Saint-Gervais Mont-Blanc | Giulio Ciccone | |
| 16 | Passy – Combloux | 1 | Jonas Vingegaard |
| 17 | Saint-Gervais Mont-Blanc – Courchevel | Enric Mas | |
| 18 | Moûtiers – Bourg-en-Bresse | Sam Welsford | |
| 19 | Moirans-en-Montagne – Poligny | Biniam Girmay | |
| 20 | Belfort – Le Markstein | Ben O'Connor | |
| 21 | Saint-Quentin-en-Yvelines – Paris | Mark Cavendish |