
| 1 | Turin (Reggia di Venaria) (Italy) – Novara (Italy) | 1 | Jasper Philipsen |
| 2 | Alba (Italy) – Limone Piemonte (Italy) | Jai Hindley | |
| 3 | San Maurizio Canavese (Italy) – Ceres (Italy) | Felix Gall | |
| 4 | Susa (Italy) – Voiron (France) | Ethan Vernon | |
| 5 | Figueres – Figueres | Wilco Kelderman | |
| 6 | Olot – Pal (Andorra) | Ben O'Connor | |
| 7 | Andorra la Vella (Andorra) – Cerler (Huesca La Magia) | 1 | Juan Ayuso |
| 8 | Monzón (Templario) – Zaragoza | Tim Van Dijke | |
| 9 | Alfaro – Valdezcaray | Ben Tulett | |
| 10 | Arguedas – El Ferial Larra Belagua | João Almeida | |
| 11 | Bilbao – Bilbao | Giulio Ciccone | |
| 13 | Cabezón de la Sal – L'Angliru | Giulio Pellizzari | |
| 14 | Avilés – Alto de La Farrapona | 2 | Jonas Vingegaard |
| 15 | Vegadeo – Monforte de Lemos | Casper Van Uden | |
| 16 | Poio – Mos (Castro de Herville) | David Gaudu | |
| 17 | O Barco de Valdeorras – Ponferrada | Egan Bernal | |
| 18 | Valladolid – Valladolid | 1 | Filippo Ganna |
| 19 | Rueda – Guijuelo | 3 | Orluis Aular |
| 20 | Robledo de Chavela – Bola del Mundo | Mikel Landa | |
| 21 | Valdeolmos-Alalpardo – Madrid | Mads Pedersen |
| 1 | Lille – Lille | 1 | Jasper Philipsen |
| 2 | Lauwin-Planque – Boulogne-sur-Mer | 1 | Mathieu van der Poel |
| 3 | Valenciennes – Dunkirk | 2 | Jonathan Milan |
| 4 | Amiens – Rouen | Thibau Nys | |
| 5 | Caen – Caen | 1 | Remco Evenepoel |
| 6 | Bayeux – Vire Normandie | Wout van Aert | |
| 7 | Saint-Malo – Guerlédan (Mûr-de-Bretagne) | Kévin Vauquelin | |
| 8 | Saint-Méen-le-Grand – Laval | Filippo Ganna | |
| 9 | Chinon – Châteauroux | Dylan Groenewegen | |
| 10 | Ennezat – Mont-Dore | 3 | Ben Healy |
| 11 | Toulouse – Toulouse | Biniam Girmay | |
| 12 | Auch – Hautacam | Neilson Powless | |
| 13 | Loudenvielle – Peyragudes | 1 | Tadej Pogačar |
| 14 | Pau – Superbagnères | 3 | Jonas Vingegaard |
| 15 | Muret – Carcassonne | Kaden Groves | |
| 16 | Montpellier – Mont Ventoux | Lenny Martinez | |
| 17 | Bollène – Valence | 2 | Jordi Meeus |
| 18 | Vif – Courchevel (Col de la Loze) | Mattias Skjelmose Jensen | |
| 19 | Albertville – La Plagne | João Almeida | |
| 20 | Nantua – Pontarlier | Iván Romeo | |
| 21 | Mantes-la-Ville – Paris (Champs-Élysées) | Tim Merlier |
| 1 | Durrës (Albania) – Tirana (Albania) | 2 | Wout van Aert |
| 2 | Tirana (Albania) – Tirana (Albania) | Brandon McNulty | |
| 3 | Vlorë (Albania) – Vlorë (Albania) | Cristian Scaroni | |
| 4 | Alberobello – Lecce | 2 | Olav Kooij |
| 5 | Ceglie Messapica – Matera | Paul Magnier | |
| 6 | Potenza – Naples | Mads Pedersen | |
| 7 | Castel di Sangro – Tagliacozzo | Primož Roglič | |
| 8 | Giulianova – Castelraimondo | Wout Poels | |
| 9 | Gubbio – Siena | Mathias Vacek | |
| 10 | Lucca – Pisa | 2 | Joshua Tarling |
| 11 | Viareggio – Castelnovo ne' Monti | 3 | Giulio Ciccone |
| 12 | Modena – Viadana | 2 | Casper Van Uden |
| 13 | Rovigo – Vicenza | Edoardo Zambanini | |
| 14 | Treviso – Nova Gorica (Slovenia) | 2 | Kaden Groves |
| 15 | Fiume Veneto – Asiago | Jay Vine | |
| 16 | Piazzola sul Brenta – San Valentino di Brentonico | Adam Yates | |
| 17 | San Michele all'Adige – Bormio | Simon Yates | |
| 18 | Morbegno – Cesano Maderno | Corbin Strong | |
| 19 | Biella – Champoluc | 3 | Richard Carapaz |
| 20 | Verrès – Sestriere | Egan Bernal | |
| 21 | Rome – Rome | Milan Fretin |