
| 1 | Lisbon (Portugal) – Oeiras (Portugal) | Joshua Tarling | |
| 2 | Cascais (Portugal) – Ourém (Portugal) | Bryan Coquard | |
| 3 | Lousã (Portugal) – Castelo Branco (Portugal) | 2 | Kaden Groves |
| 4 | Plasencia – Pico Villuercas | Clément Berthet | |
| 5 | Fuente del Maestre – Sevilla | 1 | Pavel Bittner |
| 6 | Jerez de la Frontera – Yunquera | Victor Lafay | |
| 7 | Archidona – Córdoba | 2 | Mathias Vacek |
| 8 | Úbeda – Cazorla | Jhonatan Narváez | |
| 9 | Motril – Granada | Giulio Ciccone | |
| 10 | Ponteareas – Baiona | Rui Costa | |
| 11 | Padrón – Padrón | Mattias Skjelmose Jensen | |
| 12 | Orense – Estación de Montaña de Manzaneda | Rémy Rochas | |
| 13 | Lugo – Puerto de Ancares | Adam Yates | |
| 14 | Villafranca del Bierzo – Villablino | Brandon McNulty | |
| 15 | Infiesto – Valgrande-Pajares | Sepp Kuss | |
| 16 | Luanco – Lagos de Covadonga | Enric Mas | |
| 17 | Arnuero – Santander | Wout van Aert | |
| 18 | Vitoria-Gasteiz – Maeztu | Pelayo Sánchez | |
| 19 | Logroño – Alto de Moncalvillo | Thymen Arensman | |
| 20 | Villarcayo – Picón Blanco | Richard Carapaz | |
| 21 | Distrito Telefónica – Madrid | 1 | Stefan Küng |
| 1 | Florence – Rimini (Italy) | Maxim Van Gils | |
| 2 | Cesenatico – Bologna (Italy) | Primož Roglič | |
| 3 | Piacenza – Turin (Italy) | Dylan Groenewegen | |
| 4 | Pinerolo (Italy) – Valloire | Pello Bilbao | |
| 5 | Saint-Jean-de-Maurienne – Saint-Vulbas | 2 | Jasper Philipsen |
| 6 | Mâcon – Dijon | Mark Cavendish | |
| 7 | Nuits-Saint-Georges – Gevrey-Chambertin | 1 | Remco Evenepoel |
| 8 | Semur-en-Auxois – Colombey-les-Deux-Églises | Alexander Kristoff | |
| 9 | Troyes – Troyes | Arnaud De Lie | |
| 10 | Orléans – Saint-Amand-Montrond | Phil Bauhaus | |
| 11 | Évaux-les-Bains – Le Lioran | Oscar Onley | |
| 12 | Aurillac – Villeneuve-sur-Lot | Mads Pedersen | |
| 13 | Agen – Pau | Sam Bennett | |
| 14 | Pau – Saint-Lary-Soulan (Pla d'Adet) | 1 | Tadej Pogačar |
| 15 | Loudenvielle – Plateau de Beille | Santiago Buitrago | |
| 16 | Gruissan – Nîmes | Wout van Aert | |
| 17 | Saint-Paul-Trois-Châteaux – SuperDévoluy | Romain Grégoire | |
| 18 | Gap – Barcelonnette | Christophe Laporte | |
| 19 | Embrun – Isola 2000 | Felix Gall | |
| 20 | Nice – Col de la Couillole | 3 | Richard Carapaz |
| 21 | Monaco – Nice | 2 | Jonas Vingegaard |
| 1 | Venaria Reale – Torino | Alexey Lutsenko | |
| 2 | San Francesco al Campo – Santuario di Oropa (Biella) | Ben O'Connor | |
| 3 | Novara – Fossano | Olav Kooij | |
| 4 | Acqui Terme – Andora | 1 | Jonathan Milan |
| 5 | Genova – Lucca | Kaden Groves | |
| 6 | Viareggio – Rapolano Terme | 2 | Julian Alaphilippe |
| 7 | Foligno – Perugia | 1 | Tadej Pogačar |
| 8 | Spoleto – Prati di Tivo | Filippo Zana | |
| 9 | Avezzano – Napoli | Biniam Girmay | |
| 10 | Pompei – Cusano Mutri | Simon Carr | |
| 11 | Foiano di Val Fortore – Francavilla al Mare | Fernando Gaviria | |
| 12 | Martinsicuro – Fano | Ewen Costiou | |
| 13 | Riccione – Cento | Tim Merlier | |
| 14 | Castiglione delle Stiviere – Desenzano del Garda | 1 | Filippo Ganna |
| 15 | Manerba del Garda – Livigno | Geraint Thomas | |
| 16 | Livigno – Santa Cristina Valgardena | Aurélien Paret-Peintre | |
| 17 | Selva di Val Gardena – Passo del Brocon | Alexander Cepeda | |
| 18 | Fiera di Primiero – Padova | Alberto Dainese | |
| 19 | Mortegliano – Sappada | Romain Bardet | |
| 20 | Alpago – Bassano del Grappa | Damiano Caruso | |
| 21 | Rome – Rome | Fabio Jakobsen |