Stage 19
30 May 2025
GC · Isaac Del Toro RomeroPoints · Mads PedersenMountains · Lorenzo FortunatoYouth · Isaac Del Toro Romero
Stage result
- 1
Nicolas ProdhommeDecathlon CMA CGM Team4:50:35 - 2
Isaac Del Toro RomeroUAE Team Emirates XRG+0:58 - 3
Richard CarapazEF Education - EasyPost+0:58 - 4
Damiano CarusoBahrain Victorious+1:22 - 5
Brandon McnultyUAE Team Emirates XRG+1:22 - 6
Egan Arley Bernal GomezNetcompany INEOS+1:22 - 7
Simon Philip Yates+1:22 - 8
Rafal MajkaUAE Team Emirates+1:22 - 9
Antonio TiberiBahrain Victorious+1:22 - 10
Einer Augusto Rubio ReyesMovistar Team+1:22 - 11
Derek GeeLidl - Trek+1:22 - 12
Giulio PellizzariRed Bull - Bora - Hansgrohe+1:22 - 13
Michael StorerTudor Pro Cycling Team+2:17 - 14
Louis Du Bouisson MeintjesIntermarché - Wanty+5:17 - 15DPDavide PiganzoliTeam Visma | Lease A Bike+5:52
- 16
Florian StorkTudor Pro Cycling Team+5:52 - 17
Max PooleTeam Picnic PostNL+7:36 - 18
Adam Richard YatesUAE Team Emirates XRG+8:58 - 19
Igor Arrieta LizarragaUAE Team Emirates XRG+11:23 - 20
Wilco KeldermanTeam Visma | Lease A Bike+14:39 - 21
Jonathan Castroviejo Nicolas+14:39 - 22
Carlos Verona QuintanillaLidl - Trek+14:39 - 23
Steven KruijswijkTeam Visma | Lease A Bike+14:39 - 24
Pello Bilbao Lopez De ArmentiaBahrain Victorious+16:34 - 25MFMarco FrigoNSN Cycling Team+16:34
- 26
Sylvain MoniquetCofidis+16:34 - 27
Gijs LeemreizeTeam Picnic PostNL+16:42 - 28
Romain BardetTeam DSM-Firmenich PostNL+16:42 - 29
Bart LemmenTeam Visma | Lease A Bike+16:53 - 30
Alessandro TonelliTeam Polti VisitMalta+17:41 - 31
Lorenzo GermaniGroupama-FDJ United+17:41 - 32CHChristopher HarperPinarello-Q36.5 Pro Cycling Team+17:41
- 33
Diego UlissiXDS Astana Team+17:55 - 34
Embret Svestad-BårdsengNetcompany INEOS+17:55 - 35
James KnoxTeam Picnic PostNL+17:55
- 36
Sergio Samitier SamitierCofidis+17:55 - 37
Nairo QuintanaMovistar Team+17:55 - 38
Edoardo ZambaniniBahrain Victorious+17:55 - 39
Fausto MasnadaMbh Bank Csb Telecom Fort+17:55 - 40
Christian ScaroniXDS Astana Team+17:55 - 41
Mark DonovanPinarello-Q36.5 Pro Cycling Team+18:03 - 42
Jefferson CepedaMovistar Team+18:05 - 43
Mattia CattaneoRed Bull - Bora - Hansgrohe+18:05
- 44
Tom PidcockPinarello-Q36.5 Pro Cycling Team+18:05 - 45
Yannis VoisardTudor Pro Cycling Team+18:17 - 46WPWouter PoelsUnibet Rose Rockets+18:23
- 47
Hugo HouleAlpecin-Premier Tech+18:37 - 48
Damien HowsonPinarello-Q36.5 Pro Cycling Team+20:06 - 49
Milan VaderPinarello-Q36.5 Pro Cycling Team+20:06 - 50
Georg SteinhauserEF Education - EasyPost+22:59 - 51PDPaul DoubleTeam Jayco AlUla+24:02
- 52
Lorenzo FortunatoXDS Astana Team+24:02 - 53
Jefferson CepedaEF Education - EasyPost+24:21 - 54
Filippo BaronciniUAE Team Emirates XRG+27:03 - 55
Gianmarco GarofoliSoudal Quick-Step+27:03 - 56
Jan TratnikSlovenia+28:42 - 57
Giovanni AleottiRed Bull - Bora - Hansgrohe+28:42 - 58
Quinten HermansPinarello-Q36.5 Pro Cycling Team+30:17 - 59
Jimmy JanssensAlpecin-Deceuninck+30:17 - 60
Martin MarcellusiBardiani Csf 7 Saber+31:08 - 61
David GauduGroupama-FDJ United+32:04 - 62
Chris HamiltonTeam Picnic PostNL+32:47 - 63
Simon ClarkeIsrael - Premier Tech+32:47 - 64LCLuca CoviliBardiani Csf 7 Saber+32:47
- 65NSNicholas SchultzNSN Cycling Team+32:47
- 66
Simone PetilliIntermarché - Wanty+32:47 - 67
Rémy RochasGroupama-FDJ United+32:47 - 68
Albert Torres BarceloMovistar Team+32:47 - 69
Owain DoullTeam Visma | Lease A Bike+32:47
- 70
Davide FormoloMovistar Team+32:47 - 71
Mikkel HonoréEF Education - EasyPost+32:47 - 72
James ShawEF Education - EasyPost+32:47 - 73
Quentin PacherGroupama-FDJ United+32:47
- 74
Darren RaffertyEF Education - EasyPost+32:47 - 75
Daniel Felipe Martinez PovedaRed Bull - Bora - Hansgrohe+32:47 - 76
Kévin GenietsGroupama-FDJ United+32:47 - 77
Patrick KonradLidl - Trek+32:47
- 78
Filippo ZanaSoudal Quick-Step+32:47 - 79
Rick PluimersTudor Pro Cycling Team+35:56 - 80
Kasper AsgreenEF Education - EasyPost+36:28 - 81
Mathias VacekLidl - Trek+36:28 - 82
Andrea VendrameTeam Jayco AlUla+36:28 - 83
Jakob FuglsangIsrael - Premier Tech+36:28 - 84
Fran MiholjevićBahrain Victorious+36:28 - 85
Davide De PrettoTeam Jayco AlUla+36:28 - 86
Timo KielichTeam Visma | Lease A Bike+36:36 - 87
Josef ČernýKasper Crypto4Me+36:36 - 88
Clément DavyNice Metropole Cote D'Azur+36:36 - 89
Lorenzo MilesiMovistar Team+36:36 - 90
Wout Van AertTeam Visma | Lease A Bike+36:36 - 91
Francesco BusattoAlpecin-Premier Tech+36:36 - 92
Martin TjøttaUno-X Mobility+36:36 - 93
Lawrence WarbasseTudor Pro Cycling Team+36:36
- 94KCKevin ColleoniIntermarché - Wanty+36:36
- 95
Nicola ConciXDS Astana Team+36:36 - 96
Stan DewulfDecathlon CMA CGM Team+36:36
- 97
Anton KuzminXDS Astana Team+36:36
- 98
Davide BaisTeam Polti VisitMalta+36:36 - 99
Dylan Van BaarleSoudal Quick-Step+36:36 - 100
Felix EngelhardtTeam Jayco AlUla+36:36 - 101
Xabier Mikel Azparren IrurzunPinarello-Q36.5 Pro Cycling Team+36:36 - 102
Emils LiepinsPinarello-Q36.5 Pro Cycling Team+36:36
- 103
Thymen ArensmanNetcompany INEOS+36:36 - 104
Ben TurnerNetcompany INEOS+36:36 - 105
Sven Erik BystrømUno-X Mobility+36:36 - 106
Kim Alexander HeidukNetcompany INEOS+36:36 - 107
Orluis Alberto Aular SanabriaMovistar Team+36:36 - 108
Gianni MosconRed Bull - Bora - Hansgrohe+36:44
- 109
Daan HooleNetherlands+37:02
- 110
Mads PedersenLidl - Trek+37:02 - 111
Enzo PaleniGroupama-FDJ United+37:02 - 112
Kaden Alexander GrovesAlpecin-Premier Tech+40:08 - 113
Lucas Wade HamiltonNetcompany INEOS+40:08
- 114
Fabio Van Den BosscheSoudal Quick-Step+40:08 - 115
Edward PlanckaertAlpecin-Premier Tech+40:08
- 116
Max KanterXDS Astana Team+40:08 - 117
Dries De BondtTeam Jayco AlUla+40:08
- 118
Alexander Krieger+40:08
- 119
Anthony Perez+40:08
- 120
Dorian GodonNetcompany INEOS+40:08 - 121
Simon GuglielmiSt Michel - Preference Home - Auber93+40:08 - 122
Enrico ZanoncelloBardiani Csf 7 Saber+41:36
- 123
Manuele TarozziBardiani Csf 7 Saber+41:36 - 124
Stefano OldaniCaja Rural-Seguros RGA+41:36
- 125JMJan MaasCofidis+41:36
- 126
Michael Hepburn+41:36 - 127
Alessandro VerreMbh Bank Csb Telecom Fort+41:36 - 128GEGiosue' EpisPetrolike+41:36
- 129
Filippo MagliBardiani Csf 7 Saber+41:36
- 130
Ethan HayterSoudal Quick-Step+41:36 - 131
Mattia BaisTeam Polti VisitMalta+41:36 - 132
Jensen PlowrightAlpecin-Premier Tech+41:36 - 133
Laurens HuysNice Metropole Cote D'Azur+41:36 - 134
Mirco MaestriTeam Polti VisitMalta+41:36 - 135
Gijs Van HoeckeIntermarché - Wanty+41:36 - 136
Gerben ThijssenAlpecin-Premier Tech+41:36 - 137
Jon Barrenetxea GolzarriMovistar Team+41:36 - 138
Giovanni LonardiTeam Polti VisitMalta+41:36 - 139
Nico DenzRed Bull - Bora - Hansgrohe+41:36 - 140APAndrea PietrobonTeam Polti VisitMalta+41:36
- 141
Corbin John StrongNSN Cycling Team+41:45 - 142FMFrancisco Muñoz LlanaTeam Polti VisitMalta+41:53
- 143
Nicolas DebeaumarcheCofidis+41:54 - 144JLJonathan Lastra MartinezEuskaltel-Euskadi+41:54
- 145
Luke LampertiEF Education - EasyPost+41:59 - 146
Jacopo MoscaLidl - Trek+41:59 - 147
Edoardo AffiniTeam Visma | Lease A Bike+41:59 - 148
Luca MozzatoTudor Pro Cycling Team+41:59 - 149
Olav KooijDecathlon CMA CGM Team+41:59
- 150
Matteo MoschettiPinarello-Q36.5 Pro Cycling Team+41:59 - 151
Filippo FiorelliTeam Visma | Lease A Bike+41:59 - 152
Taco Van Der HoornLotto Intermarché+41:59 - 153
Casper Cornelis Van UdenTeam Picnic PostNL+41:59 - 154
Alexander Edmondson+41:59 - 155
Niklas MärklTeam Picnic PostNL+41:59 - 156
Maikel ZijlaardTudor Pro Cycling Team+41:59 - 157
Tord GudmestadDecathlon CMA CGM Team+41:59 - 158
Sam BennettPinarello-Q36.5 Pro Cycling Team+41:59 - 159
Matevž GovekarBahrain Victorious+41:59
- DNF
Afonso EulálioBahrain VictoriousDNF - DNF
Marco BrennerTudor Pro Cycling TeamDNF
General classification
- 1
Isaac Del Toro RomeroUAE Team Emirates XRG73:47:59 - 2
Richard CarapazEF Education - EasyPost+0:43 - 3
Simon Philip Yates+1:21 - 4
Derek GeeLidl - Trek+2:27 - 5
Damiano CarusoBahrain Victorious+3:36 - 6
Egan Arley Bernal GomezNetcompany INEOS+5:13 - 7
Giulio PellizzariRed Bull - Bora - Hansgrohe+5:32 - 8
Einer Augusto Rubio ReyesMovistar Team+6:39 - 9
Michael StorerTudor Pro Cycling Team+9:11 - 10
Brandon McnultyUAE Team Emirates XRG+9:33 - 11
Max PooleTeam Picnic PostNL+14:44 - 12
Antonio TiberiBahrain Victorious+15:12 - 13
Adam Richard YatesUAE Team Emirates XRG+15:51 - 14DPDavide PiganzoliTeam Visma | Lease A Bike+16:31
- 15
Rafal MajkaUAE Team Emirates+18:30 - 16
Nicolas ProdhommeDecathlon CMA CGM Team+24:03 - 17
Tom PidcockPinarello-Q36.5 Pro Cycling Team+27:08 - 18
Louis Du Bouisson MeintjesIntermarché - Wanty+40:41 - 19
James KnoxTeam Picnic PostNL+45:13
- 20
Diego UlissiXDS Astana Team+47:00 - 21
Florian StorkTudor Pro Cycling Team+48:36 - 22
Embret Svestad-BårdsengNetcompany INEOS+49:41 - 23
Nairo QuintanaMovistar Team+55:45 - 24MFMarco FrigoNSN Cycling Team+1:08:21
- 25
Edoardo ZambaniniBahrain Victorious+1:09:34 - 26
Lorenzo FortunatoXDS Astana Team+1:11:52 - 27
Romain BardetTeam DSM-Firmenich PostNL+1:15:46 - 28CHChristopher HarperPinarello-Q36.5 Pro Cycling Team+1:16:16
- 29
Thymen ArensmanNetcompany INEOS+1:16:27 - 30
Igor Arrieta LizarragaUAE Team Emirates XRG+1:36:12 - 31
Wilco KeldermanTeam Visma | Lease A Bike+1:36:12 - 32
Yannis VoisardTudor Pro Cycling Team+1:38:14 - 33
Pello Bilbao Lopez De ArmentiaBahrain Victorious+1:43:37 - 34
Steven KruijswijkTeam Visma | Lease A Bike+1:47:59 - 35
Davide FormoloMovistar Team+1:48:00 - 36
Jefferson CepedaMovistar Team+1:48:23 - 37
Kévin GenietsGroupama-FDJ United+1:50:26 - 38
Jefferson CepedaEF Education - EasyPost+1:51:02 - 39
Mattia CattaneoRed Bull - Bora - Hansgrohe+1:52:53
- 40
Christian ScaroniXDS Astana Team+1:53:06 - 41
Gianmarco GarofoliSoudal Quick-Step+1:53:15 - 42
Damien HowsonPinarello-Q36.5 Pro Cycling Team+1:53:42 - 43
Andrea VendrameTeam Jayco AlUla+1:54:01 - 44
Fausto MasnadaMbh Bank Csb Telecom Fort+1:54:33 - 45
Bart LemmenTeam Visma | Lease A Bike+1:55:59 - 46
Alessandro TonelliTeam Polti VisitMalta+1:56:24 - 47
Martin TjøttaUno-X Mobility+2:07:23 - 48WPWouter PoelsUnibet Rose Rockets+2:07:29
- 49
Filippo ZanaSoudal Quick-Step+2:07:57 - 50
Mark DonovanPinarello-Q36.5 Pro Cycling Team+2:08:40 - 51
Gijs LeemreizeTeam Picnic PostNL+2:08:49 - 52
Rémy RochasGroupama-FDJ United+2:09:09 - 53
Daniel Felipe Martinez PovedaRed Bull - Bora - Hansgrohe+2:11:33 - 54
Mathias VacekLidl - Trek+2:11:43 - 55
Sergio Samitier SamitierCofidis+2:11:44 - 56
Nicola ConciXDS Astana Team+2:12:25 - 57
Chris HamiltonTeam Picnic PostNL+2:13:53 - 58
Hugo HouleAlpecin-Premier Tech+2:16:42 - 59
Jonathan Castroviejo Nicolas+2:17:15 - 60
Simone PetilliIntermarché - Wanty+2:18:57 - 61
Giovanni AleottiRed Bull - Bora - Hansgrohe+2:22:59 - 62
Lorenzo GermaniGroupama-FDJ United+2:25:49 - 63JLJonathan Lastra MartinezEuskaltel-Euskadi+2:28:44
- 64
Carlos Verona QuintanillaLidl - Trek+2:29:05 - 65
Stefano OldaniCaja Rural-Seguros RGA+2:32:16
- 66
David GauduGroupama-FDJ United+2:33:40 - 67
Mattia BaisTeam Polti VisitMalta+2:35:40 - 68LCLuca CoviliBardiani Csf 7 Saber+2:41:59
- 69
Patrick KonradLidl - Trek+2:46:00
- 70
Lawrence WarbasseTudor Pro Cycling Team+2:46:01
- 71
Georg SteinhauserEF Education - EasyPost+2:47:21 - 72
Quentin PacherGroupama-FDJ United+2:47:41
- 73
Davide De PrettoTeam Jayco AlUla+2:53:27 - 74
James ShawEF Education - EasyPost+2:57:07 - 75
Milan VaderPinarello-Q36.5 Pro Cycling Team+2:57:47 - 76
Jakob FuglsangIsrael - Premier Tech+2:59:53 - 77
Filippo BaronciniUAE Team Emirates XRG+3:01:50 - 78
Felix EngelhardtTeam Jayco AlUla+3:01:50 - 79
Mikkel HonoréEF Education - EasyPost+3:04:57 - 80
Jan TratnikSlovenia+3:05:50 - 81
Dorian GodonNetcompany INEOS+3:08:38 - 82
Sylvain MoniquetCofidis+3:09:29 - 83
Wout Van AertTeam Visma | Lease A Bike+3:11:39 - 84
Darren RaffertyEF Education - EasyPost+3:16:24 - 85
Martin MarcellusiBardiani Csf 7 Saber+3:16:52 - 86
Simon GuglielmiSt Michel - Preference Home - Auber93+3:21:07 - 87
Quinten HermansPinarello-Q36.5 Pro Cycling Team+3:22:36 - 88
Filippo FiorelliTeam Visma | Lease A Bike+3:22:45 - 89
Lorenzo MilesiMovistar Team+3:26:40 - 90
Mads PedersenLidl - Trek+3:30:12 - 91
Dylan Van BaarleSoudal Quick-Step+3:30:58 - 92
Corbin John StrongNSN Cycling Team+3:31:59 - 93
Jon Barrenetxea GolzarriMovistar Team+3:33:35 - 94
Fabio Van Den BosscheSoudal Quick-Step+3:36:35 - 95
Manuele TarozziBardiani Csf 7 Saber+3:36:45 - 96
Timo KielichTeam Visma | Lease A Bike+3:38:33 - 97
Davide BaisTeam Polti VisitMalta+3:39:53 - 98PDPaul DoubleTeam Jayco AlUla+3:41:03
- 99
Edward PlanckaertAlpecin-Premier Tech+3:45:48
- 100
Mirco MaestriTeam Polti VisitMalta+3:46:21 - 101
Orluis Alberto Aular SanabriaMovistar Team+3:46:53 - 102
Francesco BusattoAlpecin-Premier Tech+3:47:13 - 103
Lucas Wade HamiltonNetcompany INEOS+3:49:01
- 104
Rick PluimersTudor Pro Cycling Team+3:54:24 - 105
Kaden Alexander GrovesAlpecin-Premier Tech+3:54:44 - 106
Laurens HuysNice Metropole Cote D'Azur+3:56:12 - 107NSNicholas SchultzNSN Cycling Team+3:59:11
- 108
Owain DoullTeam Visma | Lease A Bike+4:01:35
- 109
Stan DewulfDecathlon CMA CGM Team+4:05:06
- 110
Kasper AsgreenEF Education - EasyPost+4:08:32 - 111
Filippo MagliBardiani Csf 7 Saber+4:09:38
- 112KCKevin ColleoniIntermarché - Wanty+4:14:51
- 113
Daan HooleNetherlands+4:18:25
- 114
Enzo PaleniGroupama-FDJ United+4:19:39 - 115
Fran MiholjevićBahrain Victorious+4:22:18 - 116
Alessandro VerreMbh Bank Csb Telecom Fort+4:23:09 - 117
Gianni MosconRed Bull - Bora - Hansgrohe+4:25:18
- 118
Nico DenzRed Bull - Bora - Hansgrohe+4:25:34 - 119
Simon ClarkeIsrael - Premier Tech+4:26:14 - 120
Ben TurnerNetcompany INEOS+4:26:46 - 121
Max KanterXDS Astana Team+4:27:32 - 122
Kim Alexander HeidukNetcompany INEOS+4:28:06 - 123
Anthony Perez+4:29:31
- 124
Albert Torres BarceloMovistar Team+4:30:42 - 125
Xabier Mikel Azparren IrurzunPinarello-Q36.5 Pro Cycling Team+4:31:50 - 126
Dries De BondtTeam Jayco AlUla+4:38:05
- 127
Jacopo MoscaLidl - Trek+4:39:31 - 128
Jimmy JanssensAlpecin-Deceuninck+4:40:04 - 129
Giovanni LonardiTeam Polti VisitMalta+4:42:09 - 130
Sven Erik BystrømUno-X Mobility+4:45:19 - 131
Emils LiepinsPinarello-Q36.5 Pro Cycling Team+4:46:51
- 132
Josef ČernýKasper Crypto4Me+4:49:18 - 133
Tord GudmestadDecathlon CMA CGM Team+4:51:15 - 134
Edoardo AffiniTeam Visma | Lease A Bike+4:51:23 - 135APAndrea PietrobonTeam Polti VisitMalta+4:52:43
- 136GEGiosue' EpisPetrolike+4:53:06
- 137
Luca MozzatoTudor Pro Cycling Team+4:55:32 - 138
Clément DavyNice Metropole Cote D'Azur+4:57:02 - 139
Nicolas DebeaumarcheCofidis+4:58:22 - 140
Matevž GovekarBahrain Victorious+5:00:30
- 141
Alexander Edmondson+5:00:36 - 142
Luke LampertiEF Education - EasyPost+5:00:51 - 143
Ethan HayterSoudal Quick-Step+5:01:12 - 144
Michael Hepburn+5:01:34 - 145
Anton KuzminXDS Astana Team+5:02:28
- 146
Sam BennettPinarello-Q36.5 Pro Cycling Team+5:02:40 - 147FMFrancisco Muñoz LlanaTeam Polti VisitMalta+5:03:25
- 148
Olav KooijDecathlon CMA CGM Team+5:04:06
- 149JMJan MaasCofidis+5:04:16
- 150
Casper Cornelis Van UdenTeam Picnic PostNL+5:06:53 - 151
Enrico ZanoncelloBardiani Csf 7 Saber+5:13:39
- 152
Matteo MoschettiPinarello-Q36.5 Pro Cycling Team+5:13:58 - 153
Taco Van Der HoornLotto Intermarché+5:14:48 - 154
Maikel ZijlaardTudor Pro Cycling Team+5:15:17 - 155
Gijs Van HoeckeIntermarché - Wanty+5:17:27 - 156
Niklas MärklTeam Picnic PostNL+5:24:19 - 157
Jensen PlowrightAlpecin-Premier Tech+5:26:02 - 158
Gerben ThijssenAlpecin-Premier Tech+5:26:37 - 159
Alexander Krieger+5:42:23
Points classification
- 1
Mads PedersenLidl - Trek277 - 2
Olav KooijDecathlon CMA CGM Team135
- 3
Wout Van AertTeam Visma | Lease A Bike107 - 4
Isaac Del Toro RomeroUAE Team Emirates XRG107 - 5
Dries De BondtTeam Jayco AlUla99
- 6
Casper Cornelis Van UdenTeam Picnic PostNL88 - 7
Richard CarapazEF Education - EasyPost77 - 8
Alessandro TonelliTeam Polti VisitMalta76 - 9
Orluis Alberto Aular SanabriaMovistar Team68 - 10
Mirco MaestriTeam Polti VisitMalta67 - 11
Kaden Alexander GrovesAlpecin-Premier Tech63 - 12
Kasper AsgreenEF Education - EasyPost60 - 13
Nico DenzRed Bull - Bora - Hansgrohe50 - 14
Tom PidcockPinarello-Q36.5 Pro Cycling Team47 - 15
Lorenzo FortunatoXDS Astana Team45 - 16
Edoardo ZambaniniBahrain Victorious41 - 17
Nicolas ProdhommeDecathlon CMA CGM Team38 - 18
Manuele TarozziBardiani Csf 7 Saber37 - 19
Diego UlissiXDS Astana Team35 - 20GEGiosue' EpisPetrolike34
- 21
Taco Van Der HoornLotto Intermarché34 - 22
Daan HooleNetherlands33
- 23
Damiano CarusoBahrain Victorious33 - 24
Ben TurnerNetcompany INEOS33 - 25
Christian ScaroniXDS Astana Team31 - 26
Derek GeeLidl - Trek31 - 27
Filippo MagliBardiani Csf 7 Saber31
- 28
Davide De PrettoTeam Jayco AlUla30 - 29
Egan Arley Bernal GomezNetcompany INEOS28 - 30
Antonio TiberiBahrain Victorious27 - 31
Mattia CattaneoRed Bull - Bora - Hansgrohe26
- 32
Edward PlanckaertAlpecin-Premier Tech26
- 33
Jensen PlowrightAlpecin-Premier Tech26 - 34
Maikel ZijlaardTudor Pro Cycling Team25 - 35
Enzo PaleniGroupama-FDJ United24 - 36
Romain BardetTeam DSM-Firmenich PostNL24 - 37
Stefano OldaniCaja Rural-Seguros RGA22
- 38
Corbin John StrongNSN Cycling Team22 - 39APAndrea PietrobonTeam Polti VisitMalta20
- 40
Simon Philip Yates20 - 41
Filippo FiorelliTeam Visma | Lease A Bike20 - 42
Wilco KeldermanTeam Visma | Lease A Bike19 - 43
Rémy RochasGroupama-FDJ United18 - 44
Mattia BaisTeam Polti VisitMalta17 - 45
Rick PluimersTudor Pro Cycling Team17 - 46
Michael StorerTudor Pro Cycling Team17 - 47
Gianmarco GarofoliSoudal Quick-Step17 - 48
Sam BennettPinarello-Q36.5 Pro Cycling Team17 - 49
Xabier Mikel Azparren IrurzunPinarello-Q36.5 Pro Cycling Team16 - 50
Nicola ConciXDS Astana Team16 - 51
Lorenzo MilesiMovistar Team16 - 52
Davide BaisTeam Polti VisitMalta16 - 53
Carlos Verona QuintanillaLidl - Trek15 - 54MFMarco FrigoNSN Cycling Team15
- 55
Georg SteinhauserEF Education - EasyPost15 - 56
Giulio PellizzariRed Bull - Bora - Hansgrohe15 - 57
Mathias VacekLidl - Trek15 - 58
Chris HamiltonTeam Picnic PostNL14 - 59
Brandon McnultyUAE Team Emirates XRG14 - 60
Mark DonovanPinarello-Q36.5 Pro Cycling Team14 - 61
Dorian GodonNetcompany INEOS14 - 62
Alexander Edmondson14 - 63
Max PooleTeam Picnic PostNL13 - 64
Gijs LeemreizeTeam Picnic PostNL13 - 65
Edoardo AffiniTeam Visma | Lease A Bike13 - 66FMFrancisco Muñoz LlanaTeam Polti VisitMalta12
- 67
Florian StorkTudor Pro Cycling Team12 - 68
Lorenzo GermaniGroupama-FDJ United12 - 69
Sylvain MoniquetCofidis12 - 70
Martin MarcellusiBardiani Csf 7 Saber11 - 71
Quentin PacherGroupama-FDJ United11
- 72
Francesco BusattoAlpecin-Premier Tech11 - 73
Clément DavyNice Metropole Cote D'Azur11 - 74
Ethan HayterSoudal Quick-Step11 - 75
Jefferson CepedaMovistar Team10 - 76
Einer Augusto Rubio ReyesMovistar Team9 - 77
Steven KruijswijkTeam Visma | Lease A Bike9 - 78
Davide FormoloMovistar Team9 - 79
Andrea VendrameTeam Jayco AlUla9 - 80
Quinten HermansPinarello-Q36.5 Pro Cycling Team9 - 81
Enrico ZanoncelloBardiani Csf 7 Saber9
- 82
Igor Arrieta LizarragaUAE Team Emirates XRG8 - 83
Josef ČernýKasper Crypto4Me8 - 84
Matevž GovekarBahrain Victorious8
- 85
Pello Bilbao Lopez De ArmentiaBahrain Victorious6 - 86
Lawrence WarbasseTudor Pro Cycling Team6
- 87
Mikkel HonoréEF Education - EasyPost6 - 88
Alessandro VerreMbh Bank Csb Telecom Fort6 - 89
Bart LemmenTeam Visma | Lease A Bike5 - 90
Filippo ZanaSoudal Quick-Step5 - 91
Darren RaffertyEF Education - EasyPost5 - 92
Dylan Van BaarleSoudal Quick-Step5 - 93
Luca MozzatoTudor Pro Cycling Team5 - 94
Giovanni LonardiTeam Polti VisitMalta4 - 95
Gerben ThijssenAlpecin-Premier Tech4 - 96
Rafal MajkaUAE Team Emirates3 - 97
Nairo QuintanaMovistar Team3 - 98
Thymen ArensmanNetcompany INEOS3 - 99
Damien HowsonPinarello-Q36.5 Pro Cycling Team3 - 100
Milan VaderPinarello-Q36.5 Pro Cycling Team3 - 101
Lucas Wade HamiltonNetcompany INEOS3
- 102
Luke LampertiEF Education - EasyPost3 - 103
Kévin GenietsGroupama-FDJ United2 - 104
Michael Hepburn2 - 105
Adam Richard YatesUAE Team Emirates XRG1 - 106DPDavide PiganzoliTeam Visma | Lease A Bike1
- 107
Yannis VoisardTudor Pro Cycling Team1 - 108
Fausto MasnadaMbh Bank Csb Telecom Fort1 - 109WPWouter PoelsUnibet Rose Rockets1
- 110
Jon Barrenetxea GolzarriMovistar Team1 - 111
Anthony Perez1
- 112
Max KanterXDS Astana Team-3
Mountains classification
- 1
Lorenzo FortunatoXDS Astana Team355 - 2
Christian ScaroniXDS Astana Team201 - 3
Nicolas ProdhommeDecathlon CMA CGM Team107 - 4
Manuele TarozziBardiani Csf 7 Saber66 - 5
Richard CarapazEF Education - EasyPost47 - 6
Romain BardetTeam DSM-Firmenich PostNL47 - 7
Isaac Del Toro RomeroUAE Team Emirates XRG45 - 8
Pello Bilbao Lopez De ArmentiaBahrain Victorious42 - 9
Carlos Verona QuintanillaLidl - Trek41 - 10PDPaul DoubleTeam Jayco AlUla36
- 11
Diego UlissiXDS Astana Team34 - 12
Rafal MajkaUAE Team Emirates33 - 13
Sylvain MoniquetCofidis32 - 14
Giulio PellizzariRed Bull - Bora - Hansgrohe28 - 15
Nairo QuintanaMovistar Team28 - 16
Georg SteinhauserEF Education - EasyPost24 - 17
Lorenzo GermaniGroupama-FDJ United23 - 18
Gijs LeemreizeTeam Picnic PostNL22 - 19
Antonio TiberiBahrain Victorious20 - 20MFMarco FrigoNSN Cycling Team20
- 21
Patrick KonradLidl - Trek20
- 22
Mattia CattaneoRed Bull - Bora - Hansgrohe19
- 23
Egan Arley Bernal GomezNetcompany INEOS19 - 24
Taco Van Der HoornLotto Intermarché18 - 25
Alessandro TonelliTeam Polti VisitMalta16 - 26
Enzo PaleniGroupama-FDJ United15 - 27WPWouter PoelsUnibet Rose Rockets15
- 28
Fausto MasnadaMbh Bank Csb Telecom Fort12 - 29
Simone PetilliIntermarché - Wanty12 - 30
Mathias VacekLidl - Trek11 - 31
Igor Arrieta LizarragaUAE Team Emirates XRG10 - 32
Bart LemmenTeam Visma | Lease A Bike10 - 33DPDavide PiganzoliTeam Visma | Lease A Bike9
- 34
Quinten HermansPinarello-Q36.5 Pro Cycling Team9 - 35
Kasper AsgreenEF Education - EasyPost9 - 36
Derek GeeLidl - Trek9 - 37
Gianmarco GarofoliSoudal Quick-Step9 - 38
Filippo ZanaSoudal Quick-Step9 - 39
Mads PedersenLidl - Trek8 - 40
Brandon McnultyUAE Team Emirates XRG8 - 41
Jefferson CepedaMovistar Team8 - 42
Daniel Felipe Martinez PovedaRed Bull - Bora - Hansgrohe8 - 43
Chris HamiltonTeam Picnic PostNL8 - 44
Wout Van AertTeam Visma | Lease A Bike8 - 45
Martin MarcellusiBardiani Csf 7 Saber8 - 46
Alessandro VerreMbh Bank Csb Telecom Fort8 - 47
Nicola ConciXDS Astana Team7 - 48
Simon Philip Yates7 - 49
Damiano CarusoBahrain Victorious6 - 50
Florian StorkTudor Pro Cycling Team6 - 51
Davide FormoloMovistar Team6 - 52
Davide De PrettoTeam Jayco AlUla6 - 53
Darren RaffertyEF Education - EasyPost6 - 54GEGiosue' EpisPetrolike6
- 55
Lorenzo MilesiMovistar Team5 - 56
Wilco KeldermanTeam Visma | Lease A Bike5 - 57
Mirco MaestriTeam Polti VisitMalta5 - 58
Mattia BaisTeam Polti VisitMalta4 - 59
Steven KruijswijkTeam Visma | Lease A Bike4 - 60
Edward PlanckaertAlpecin-Premier Tech4
- 61APAndrea PietrobonTeam Polti VisitMalta4
- 62
Mark DonovanPinarello-Q36.5 Pro Cycling Team3 - 63FMFrancisco Muñoz LlanaTeam Polti VisitMalta3
- 64
Michael StorerTudor Pro Cycling Team2 - 65
Louis Du Bouisson MeintjesIntermarché - Wanty2 - 66
Yannis VoisardTudor Pro Cycling Team2 - 67
Filippo BaronciniUAE Team Emirates XRG2 - 68
Davide BaisTeam Polti VisitMalta2 - 69
Kaden Alexander GrovesAlpecin-Premier Tech2 - 70
Dries De BondtTeam Jayco AlUla2
- 71
Einer Augusto Rubio ReyesMovistar Team1 - 72
Adam Richard YatesUAE Team Emirates XRG1 - 73CHChristopher HarperPinarello-Q36.5 Pro Cycling Team1
- 74
Milan VaderPinarello-Q36.5 Pro Cycling Team1 - 75
Rémy RochasGroupama-FDJ United1 - 76
Jon Barrenetxea GolzarriMovistar Team1 - 77
Timo KielichTeam Visma | Lease A Bike1 - 78
Daan HooleNetherlands1
- 79
Edoardo AffiniTeam Visma | Lease A Bike1 - 80
Luca MozzatoTudor Pro Cycling Team1
Youth classification
- 1
Isaac Del Toro RomeroUAE Team Emirates XRG73:47:59 - 2
Giulio PellizzariRed Bull - Bora - Hansgrohe+5:32 - 3
Max PooleTeam Picnic PostNL+14:44 - 4
Antonio TiberiBahrain Victorious+15:12 - 5DPDavide PiganzoliTeam Visma | Lease A Bike+16:31
- 6
Embret Svestad-BårdsengNetcompany INEOS+49:41 - 7MFMarco FrigoNSN Cycling Team+1:08:21
- 8
Edoardo ZambaniniBahrain Victorious+1:09:34 - 9
Igor Arrieta LizarragaUAE Team Emirates XRG+1:36:12 - 10
Gianmarco GarofoliSoudal Quick-Step+1:53:15 - 11
Martin TjøttaUno-X Mobility+2:07:23 - 12
Mathias VacekLidl - Trek+2:11:43 - 13
Lorenzo GermaniGroupama-FDJ United+2:25:49 - 14
Georg SteinhauserEF Education - EasyPost+2:47:21 - 15
Davide De PrettoTeam Jayco AlUla+2:53:27 - 16
Filippo BaronciniUAE Team Emirates XRG+3:01:50 - 17
Felix EngelhardtTeam Jayco AlUla+3:01:50 - 18
Darren RaffertyEF Education - EasyPost+3:16:24 - 19
Martin MarcellusiBardiani Csf 7 Saber+3:16:52 - 20
Lorenzo MilesiMovistar Team+3:26:40 - 21
Corbin John StrongNSN Cycling Team+3:31:59 - 22
Jon Barrenetxea GolzarriMovistar Team+3:33:35 - 23
Fabio Van Den BosscheSoudal Quick-Step+3:36:35 - 24
Francesco BusattoAlpecin-Premier Tech+3:47:13 - 25
Rick PluimersTudor Pro Cycling Team+3:54:24 - 26
Enzo PaleniGroupama-FDJ United+4:19:39 - 27
Fran MiholjevićBahrain Victorious+4:22:18 - 28
Alessandro VerreMbh Bank Csb Telecom Fort+4:23:09 - 29
Kim Alexander HeidukNetcompany INEOS+4:28:06 - 30
Tord GudmestadDecathlon CMA CGM Team+4:51:15 - 31GEGiosue' EpisPetrolike+4:53:06
- 32
Matevž GovekarBahrain Victorious+5:00:30
- 33
Luke LampertiEF Education - EasyPost+5:00:51 - 34FMFrancisco Muñoz LlanaTeam Polti VisitMalta+5:03:25
- 35
Olav KooijDecathlon CMA CGM Team+5:04:06
- 36
Casper Cornelis Van UdenTeam Picnic PostNL+5:06:53 - 37
Jensen PlowrightAlpecin-Premier Tech+5:26:02