Skip to main content

Tao Geoghegan Hart wins 2020 Giro d'Italia

Image 1 of 45

Giro dItalia 2020 103rd Edition 21th stage Cernusco sul Naviglio Milano 157km 25102020 Tao Geoghegan Hart GBR Ineos Grenadiers photo Luca BettiniBettiniPhoto2020

Trofeo Senza Fine is secured in 2020 by Tao Geoghegan Hart of INEOS Grenadiers (Image credit: Bettini Photo)
Image 2 of 45

MILANO ITALY OCTOBER 25 Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers White Best Young Rider Jersey during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Tao Geoghegan Hart of INEOS Grenadiers finishes 13th in time trial and gains time for overall Giro victory (Image credit: Getty Images Sport)
Image 3 of 45

MILANO ITALY OCTOBER 25 Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers White Best Young Rider Jersey during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Tao Geoghegan Hart of INEOS Grenadiers passes Duomo in Milan for overall Giro title (Image credit: Getty Images Sport)
Image 4 of 45

MILANO ITALY OCTOBER 25 Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers White Best Young Rider Jersey during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Tao Geoghegan Hart of INEOS Grenadiers focuses on finish line in Milan (Image credit: Getty Images Sport)
Image 5 of 45

MILANO ITALY OCTOBER 25 Jai Hindley of Australia and Team Sunweb Pink Leader Jersey during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Jai Hindley wore pink jersey in time trial, but lost the overall title to Tao Geoghegan Hart (Image credit: Getty Images Sport)
Image 6 of 45

Tao Geoghegan Hart

Tao Geoghegan Hart (Ineos Grenadiers) in the stage 21 time trial at the Giro d'Italia (Image credit: Getty Images)
Image 7 of 45

Jai HIndley

Jai Hindley (Sunweb) during stage 21 at the Giro d'Italia (Image credit: Getty Images)
Image 8 of 45

Filippo Ganna

Filippo Ganna of Ineos Grenadiers won the first two time trials at the 2020 Giro and was on hot seat early with time of 17:16 (Image credit: Bettini)
Image 9 of 45

MILANO ITALY OCTOBER 25 Trofeo Senza Fine Duomo di Milano Milan Cathedral Trophy during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Trofeo Senza Fine shown in front of the Duomo di Milano (Image credit: Getty Images Sport)
Image 10 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 -Valerio Conti (ITA - UAE - Team Emirates) - photo Dario Belingheri/BettiniPhoto©2020

Valerio Conti (UAE - Team Emirates) passes stunning Duomo di Milano (Image credit: Bettini Photo)
Image 11 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Victor Campenaerts (BEL - NTT Pro Cycling) - photo Luca Bettini/BettiniPhoto©2020

Victor Campenaerts of NTT Pro Cycling spent some time in hot seat with time of 17:48 (Image credit: Bettini Photo)
Image 12 of 45

MILANO ITALY OCTOBER 25 Arrival Adam Hansen of Australia and Team Lotto Soudal Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Adam Hansen of Lotto-Soudal finishes final race of his pro cycling career at 39 years of age (Image credit: Getty Images Sport)
Image 13 of 45

MILANO ITALY OCTOBER 25 Arrival Miles Scotson of Australia and Team Groupama FDJ during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Miles Scotson of Groupama-FDJ was first rider under 18 minutes, in time of 17:57 (Image credit: Getty Images Sport)
Image 14 of 45

MILANO ITALY OCTOBER 25 Arrival Arnaud Demare of France and Groupama FDJ Purple Points Jersey Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Arnaud Demare of Groupama-FDJ finishes time trial in points classification jersey (Image credit: Getty Images Sport)
Image 15 of 45

MILANO ITALY OCTOBER 25 Alex Dowsett of The United Kingdom and Team Israel StartUp Nation during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Alex Dowsett of Israel Start-Up Nation rides to 18:22 (Image credit: Getty Images Sport)
Image 16 of 45

MILANO ITALY OCTOBER 25 Victor Campenaerts of Belgium and NTT Pro Cycling Team during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Victor Campenaerts of NTT Pro Cycling on the 15.7km course (Image credit: Getty Images Sport)
Image 17 of 45

MILANO ITALY OCTOBER 25 Chad Haga of The United States and Team Sunweb during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Chad Haga of Team Sunweb finished with a time of 18:00 (Image credit: Getty Images Sport)
Image 18 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Josef Cerny (CZE - CCC Team) - photo Luca Bettini/BettiniPhoto©2020

Josef Cerny (CZE) of CCC Team finished with time of 18:00 (Image credit: Bettini Photo)
Image 19 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Rohan Dennis (AUS - Team Ineos) - photo Ilario Biondi/BettiniPhoto©2020

Rohan Dennis on time trial course, finished in time of 17:48 (Image credit: Bettini Photo)
Image 20 of 45

MILANO ITALY OCTOBER 25 Arrival Stephane Rossetto of France and Team Cofidis Solutions Credits Filippo Ganna of Italy and Team INEOS Grenadiers during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Filippo Ganna makes pass at finish of Stephane Rossetto of Cofidis Solutions Credits, who was two riders ahead of him on course (Image credit: Getty Images Sport)
Image 21 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Joao Almeida (POR - Deceuninck - Quick Step) - photo Luca Bettini/BettiniPhoto©2020

Joao Almeida of Deceuninck-QuickStep finished fourth on stage 21 and fourth on GC (Image credit: Bettini Photo)
Image 22 of 45

MILANO ITALY OCTOBER 25 Vincenzo Nibali of Italy and Team Trek Segafredo during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Italian Vincenzo Nibali of Trek - Segafredo would finish seventh on GC (Image credit: Getty Images Sport)
Image 23 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Brandon Mcnulty (USA - UAE - Team Emirates) - photo Luca Bettini/BettiniPhoto©2020

Brandon McNulty of UAE Team Emirates finished eighth on stage 21 and 15th on GC (Image credit: Bettini Photo)
Image 24 of 45

MILANO ITALY OCTOBER 25 Jakob Fuglsang of Denmark and Astana Pro Team during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Dane Jakob Fuglsang of Astana Pro Team would finish sixth on GC (Image credit: Getty Images Sport)
Image 25 of 45

MILANO ITALY OCTOBER 25 Hermann Pernsteiner of Austria and Team Bahrain Mclaren during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Austrian Hermann Pernsteiner of Team Bahrain - McLaren would finish 10th on GC after time trial (Image credit: Getty Images Sport)
Image 26 of 45

MILANO ITALY OCTOBER 25 Filippo Ganna of Italy and Team INEOS Grenadiers during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

World time trial champion Filippo Ganna looks for a fourth stage win at Giro (Image credit: Getty Images Sport)
Image 27 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Tao Geoghegan Hart (GBR - Team Ineos) - photo Luca Bettini/BettiniPhoto©2020

Thumbs up on overall win at Giro from Tao Geoghegan Hart of INEOS Grenadiers wore White Best Young Rider Jersey in time trial (Image credit: Bettini Photo)
Image 28 of 45

MILANO ITALY OCTOBER 25 Podium Filippo Ganna of Italy and Team INEOS Grenadiers Celebration Champagne during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Time trial world champion Filippo Ganna takes fourth stage of Giro in Milan (Image credit: Getty Images Sport)
Image 29 of 45

MILANO ITALY OCTOBER 25 Podium Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers Pink Leader Jersey Celebration during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Final pink jersey of three-week race awarded to GC champion in Milan - Tao Geoghegan Hart of INEOS Grenadiers (Image credit: Getty Images Sport)
Image 30 of 45

MILANO ITALY OCTOBER 25 Podium Jai Hindley of Australia and Team Sunweb Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers Pink Leader Jersey Wilco Kelderman of The Netherlands and Team Sunweb Celebration during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Final GC Podium for 2020 Giro d'Italia (left to right): Jai Hindley of Australia and Team Sunweb / Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers Pink Leader Jersey / Wilco Kelderman of The Netherlands and Team Sunweb (Image credit: Getty Images Sport)
Image 31 of 45

MILANO, ITALY - OCTOBER 25: Podium / Jai Hindley of Australia and Team Sunweb / Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers Pink Leader Jersey / Wilco Kelderman of The Netherlands and Team Sunweb / Celebration / during the 103rd Giro d'Italia 2020, Stage 21 a 15,7km Individual time trial from Cernusco sul Naviglio to Milano / ITT / @girodiitalia / #Giro / on October 25, 2020 in Milano, Italy. (Photo by Tim de Waele/Getty Images)

Final podium in Milan for 2020 has / Tao Geoghegan Hart of INEOS Grenadiers in Pink Leader Jersey surrounded by Jai Hindley in second place and Wilco Kelderman in third, both of them with Team Sunweb (Image credit: Getty Images Sport)
Image 32 of 45

MILANO ITALY OCTOBER 25 Podium Jai Hindley of Australia and Team Sunweb 2nd Classification during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Jai Hindley of Team Sunweb finished 38th in time trial and was second in general classification (Image credit: Getty Images Sport)
Image 33 of 45

MILANO ITALY OCTOBER 25 Arrival Jai Hindley of Australia and Team Sunweb Pink Leader Jersey Disappointment during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Jai Hindley of Team Sunweb wore pink jersey in time trial, but finished 39 seconds behind Tao Geoghegan Hart, who took overall GC win (Image credit: Getty Images Sport)
Image 34 of 45

MILANO ITALY OCTOBER 25 Podium Tao Geoghegan Hart of The United Kingdom and Team INEOS Grenadiers Pink Leader Jersey Celebration Trofeo Senza Fine Trophy Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

2020 Giro champion Tao Geoghegan Hart of INEOS Grenadiers with his trophy (Image credit: Getty Images Sport)
Image 35 of 45

MILANO ITALY OCTOBER 25 Podium Tao Geoghegan Hart of The United Kingdom Jonathan Castroviejo of Spain Rohan Dennis of Australia Filippo Ganna of Italy Salvatore Puccio of Italy Ben Swift of The United Kingdom Team INEOS Grenadiers Trofeo Senza Fine Trophy Celebration during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Team Ineos Grenadiers hoists teammate and overall Giro winner Tao Geoghegan Hart (Image credit: Getty Images Sport)
Image 36 of 45

MILANO ITALY OCTOBER 25 Podium Tao Geoghegan Hart of The United Kingdom Jonathan Castroviejo of Spain Rohan Dennis of Australia Filippo Ganna of Italy Jhonnatan Prado Narvaez of Ecuador Salvatore Puccio of Italy Ben Swift of The United Kingdom Team INEOS Grenadiers Trofeo Senza Fine Trophy Celebration Champagne during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Final podium celebration for 2020 Giro d'Italia for Ineos Grenadiers who took wins in seven of 21 stages (Image credit: Getty Images Sport)
Image 37 of 45

Giro dItalia 2020 103th Edition 21th stage Cernusco sul Naviglio Milano 157km 25102020 Tao Geoghegan Hart GBR Team Ineos photo Ilario BiondiBettiniPhoto2020

Tao Geoghegan Hart celebrates Giro GC win with team in Milan (Image credit: Bettini Photo)
Image 38 of 45

Giro dItalia 2020 103th Edition 21th stage Cernusco sul Naviglio Milano 157km 25102020 Tao Geoghegan Hart GBR Team Ineos photo Ilario BiondiBettiniPhoto2020

Full team and staff for Ineos Grenadiers celebrates Giro victory with Tao Geoghegan Hart (Image credit: Bettini Photo)
Image 39 of 45

Giro dItalia 2020 103th Edition 21th stage Cernusco sul Naviglio Milano 157km 25102020 Filippo Ganna ITA Team Ineos Rohan Dennis AUS Team Ineos Tao Geoghegan Hart GBR Team Ineos Ben Swift GBR Team Ineos Jonathan Castroviejo ESP Team Ineos photo Dario BelingheriBettiniPhoto2020

Ineos Grenadiers celebrate in Milan: Tao Geoghegan Hart of The United Kingdom, Jonathan Castroviejo of Spain, Rohan Dennis of Australia, Filippo Ganna of Italy, Salvatore Puccio of Italy, Ben Swift of The United Kingdom (Image credit: Bettini Photo)
Image 40 of 45

Giro d'Italia 2020 - 103th Edition - 21th stage Cernusco sul Naviglio - Milano 15,7 km - 25/10/2020 - Tao Geoghegan Hart (GBR - Team Ineos) - photo Ilario Biondi/BettiniPhoto©2020

ao Geoghegan Hart of INEOS Grenadiers wins overall title of 2020 Giro (Image credit: Bettini Photo)
Image 41 of 45

MILANO ITALY OCTOBER 25 Podium Arnaud Demare of France and Groupama FDJ Purple Points Jersey Celebration Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Stuart FranklinGetty Images

Arnaud Demare of Groupama-FDJ takes the points classification prize (Image credit: Getty Images Sport)
Image 42 of 45

MILANO ITALY OCTOBER 25 Podium Arnaud Demare of France Kilian Frankiny of Switzerland Jacopo Guarnieri of Italy Simon Guglielmi of France Ignatas Konovalovas of Lithuania and Team Groupama FDJ Superteam Best Team Celebration Trophy during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Groupama - FDJ wins prize as the Super-team for the Giro, with Arnaud Demare taking the points classification title (Image credit: Getty Images Sport)
Image 43 of 45

MILANO ITALY OCTOBER 25 Podium Ruben Guerreiro of Portugal and Team EF Pro Cycling Blue Mountain Jersey Celebration Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Ruben Guerreiro (EF Pro Cycling) secures the mountain classification title for 2020 (Image credit: Getty Images Sport)
Image 44 of 45

MILANO ITALY OCTOBER 25 Podium Thomas De Gendt of Belgium and Team Lotto Soudal Most Combative Rider Celebration Duomo di Milano Milan Cathedral during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Thomas De Gendt of Lotto Soudal receives the Most Combative Rider prize (Image credit: Getty Images Sport)
Image 45 of 45

MILANO ITALY OCTOBER 25 Podium Mattia Bais of Italy and Team Androni Giocattoli Sidermec Best Italian Rider Celebration during the 103rd Giro dItalia 2020 Stage 21 a 157km Individual time trial from Cernusco sul Naviglio to Milano ITT girodiitalia Giro on October 25 2020 in Milano Italy Photo by Tim de WaeleGetty Images

Mattia Bais of Team Androni Giocattoli - Sidermec is recognized as the Best Italian Rider of the Giro (Image credit: Getty Images Sport)

Tao Geoghegan Hart (Ineos Grenadiers) claimed overall victory at the 2020 Giro d’Italia, beating overnight race leader Jai Hindley (Sunweb) by 39 seconds in the stage 21 time trial in Milan.

The pair had entered the final day tied on time – a first in Grand Tour history – but Geoghegan Hart made his superior time trialling pedigree count on the flat 15.7km course into the heart of Milan.

The 25-year-old clocked 18:14, punching the air as he watched Hindley exceed his time while still stuck in the final kilometre. Hindley gave his all to the line and stopped the clock on 18:53, slipping to second place on the final podium, ahead of his Sunweb teammate Wilco Kelderman.

It was a double celebration for Ineos Grenadiers, as time trial world champion Filippo Ganna claimed the stage win, making it a clean sweep of the three time trials at this Giro, and four stage wins in total. Ineos themselves have now won seven of the 21 stages and the overall title, all after losing their leader Geraint Thomas on stage 3.

Geoghegan Hart, who came to the Giro as a support rider for Thomas, was a picture of poise as he sidelined the pressure of the big occasion to win his first Grand Tour.

“Not in my wildest dreams did I imagine this would be possible when we started out in Sicily almost a month ago,” he said. “All my career I’ve dreamt of trying to be top 10, top 5 maybe, in a race of this stature, so this is something completely and utterly different to that and I think it’s going to take a long time for this to sink in.”

Ganna clocked 17:16 on the largely untechnical course to underline his status as the best time triallist in the world, with second and third placed Victor Campenaerts (NTT) and Rohan Dennis (Ineos Grenadiers) finishing a full 32 seconds down. However, the Italian graciously recognised this day was all about his teammate.

“For sure I’m happier for Tao than myself,” Ganna said. “When I saw his face this morning, I thought we could arrive with victory number seven and with the pink jersey."

Geoghegan Hart set out as the favourite, given he had beaten Hindley in seven of the nine time trials they’d done together since turning professional in 2017, but their age and the fact it was the final day of a Grand Tour meant anything could happen.

The pair were evenly matched on the opening couple of kilometres out of Cernusco sul Naviglio, with Hindley cutting more aggressive lines through the early roundabouts. However, on the long, straight sections, the Briton gained the upper hand, keeping on top of a higher gear as the pink jersey pedalled with a much higher cadence. At the half-way point, live timings had him 10 seconds up, and the balance of power was more definitively underlined at the intermediate checkpoint after 10.3km, with Geoghegan Hart 22 seconds to the good.

He continued to give his all and barely took any of the final bends any more tentatively as he pushed all the way to the line to finish 13th on the stage.

“My DS said I was 10 seconds up, and he kept giving me a few seconds. I only knew that we must have been in a good situation when he was screaming at me to not take any risks in the last kilometre. It’s not often that your DS tells you to slow down in a 15km TT. I also knew the work was done up until that point, so it’s incredible to arrive here in the Duomo in the center of Milan,” Geoghegan Hart said.

After catching his breath, he turned to the big screen and soon saw Hindley approach the time he’d just set. The Australian, now visibly suffering on the bike, was still in the final kilometre, and that was that. Hindley crossed the line, removed his helmet, and put his head in his hand, his time in pink lasting less than 20 minutes.

“Of course, it’s super disappointing to lose the jersey on the last day,” he said. “At the moment, it’s pretty hard to take but when I look back I think I’ll be super proud of how I and team rode the past three weeks. It’s a massive step forward in my career and something I’ll never forget.”

Geoghegan Hart tops the final general classification, 39 seconds ahead of Hindley, and 1:29 ahead of Kelderman, who recouped just three seconds on the winner. There was one other shift in the top 10, as Joåo Almeida (Deceuninck-QuickStep) produced another storming TT to place fourth on the stage and leapfrog Pello Bilbao (Bahrain McLaren) into fourth overall.

Joining Geoghegan Hart – who won the white jersey for best young rider, as well as the pink – on the podium in Milan were Arnaud Démare (Groupama-FDJ), who finished safely to wrap up the maglia ciclamino as points classification winner, and blue jersey Ruben Guerreiro (EF Pro Cycling), who topped the mountains classification to become the first Portuguese rider to win a Giro jersey. 

Geoghegan Hart had another trip to the podium as Ineos won the teams classification. His teammates sprayed him with champagne and he soaked up a moment he never saw coming, but refused to get carried away.

“I’m going to enjoy this. It’s incredible. I’m going to stay the same person and as professional as I believe I always have been,” he said. “I’m dedicated and wake up everyday looking forward to riding my bike, loving my life and being grateful for the honour and amazing position and privilege that I am in to be on this team and to be doing these beautiful race.”

How it unfolded

It was another grey day on the Giro d’Italia but the weather was dry and calm, making for straight-forward conditions on the largely untechnical 15.7km route from Cernusco sul Naviglio into the heart of Milan.

Jon Dibben was the first rider down the ramp at 13:40, with his Lotto Soudal teammate Adam Hansen setting off soon after to finish his 29th Grand Tour and finish his professional cycling career after nearly 20 years. The Israel Start-Up Nation duo of Mathias Brandle and Alex Dowsett set the early benchmarks before Miles Scotson (Groupama-FDJ) came through to break the 18-minute barrier.

Victor Campenaerts (NTT Pro Cycling) then produced something near his best after two disappointing time trials at this Giro, clocking 17:48. However, Ganna was soon to start, and he joked that he wouldn’t be in the hotseat for long.

He was correct, as Ganna soon set off and blew everyone out of the water. The Italian’s intentions were clear as he sliced through the opening roundabouts, and from then on he pumped those big legs up and down to produce the sort of watts that no one else in the world can come close to at the moment. On a short flat course that was the best suited to him of the three, he kept his speed high all the way to the line and when he stopped the clock on 17:16 it was clear we were looking at the stage winner.

His teammate Rohan Dennis, who had been so instrumental in turning the tide of the whole Giro in Geoghegan Hart’s favour, dug another strong ride out to tie Campenaerts for time and make it two Ineos riders on the podium.

Thoughts soon turned to the upper echelons of the GC and, although he’d faded earlier in the race, Brandon McNulty (UAE Team Emirates) produced another strong TT to place eights on the stage and seal 15th overall on his Grand Tour debut.

The gaps in the top 10 were such that current placings were largely locked in place, even if Domenico Pozzovivo (NTT) produced a surprising ride – 19th on the stage – to get a little closer to the top 10. Hermann Pernsteiner (Bahrain McLaren), Fausto Masnada (Deceuninck-QuickStep), and Patrick Konrad (Bora-Hansgrohe) all gave solid accounts of themselves, while Vincenzo Nibali (Trek-Segafredo) and Jakob Fugsang (Astana) clocked more or less the same time.

A big change came in the top five, as Almeida, so good in both time trials so far, and wearer of the pink jersey for two weeks, ended his Giro on something of a high, placing fourth on the stage to move back above Bilbao in fourth.

The podium, however, was gone, and Kelderman rode to 11th place to seal his first Grand Tour podium. By that point, Geoghegan Hart and Hindley were out on the course and, after the early couple of kilometres, it only went one way, all the way to the Duomo in Milan.

Full Results
Pos.Rider Name (Country) TeamResult
1Filippo Ganna (Ita) Ineos Grenadiers 0:17:16
2Victor Campenaerts (Bel) NTT Pro Cycling 0:00:32
3Rohan Dennis (Aus) Ineos Grenadiers
4Joao Almeida (Por) Deceuninck-Quickstep 0:00:41
5Miles Scotson (Aus) Groupama-FDJ
6Josef Cerny (Cze) CCC Team 0:00:44
7Chad Haga (USA) Team Sunweb
8Brandon McNulty (USA) UAE Team Emirates 0:00:46
9Kamil Gradek (Pol) CCC Team 0:00:47
10Jan Tratnik (Slo) Bahrain McLaren
11Wilco Kelderman (Ned) Team Sunweb 0:00:55
12Martijn Tusveld (Ned) Team Sunweb 0:00:58
13Tao Geoghegan Hart (GBr) Ineos Grenadiers
14Thomas De Gendt (Bel) Lotto Soudal 0:01:03
15Maciej Bodnar (Pol) Bora-Hansgrohe 0:01:04
16Joseph Rosskopf (USA) CCC Team 0:01:05
17Alex Dowsett (GBr) Israel Start-Up Nation 0:01:06
18Matteo Sobrero (Ita) NTT Pro Cycling 0:01:08
19Domenico Pozzovivo (Ita) NTT Pro Cycling 0:01:10
20Matthias Brändle (Aut) Israel Start-Up Nation 0:01:11
21Aurélien Paret Peintre (Fra) AG2R la Mondiale 0:01:13
22Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 0:01:14
23Fabio Felline (Ita) Astana Pro Team
24Pello Bilbao (Spa) Bahrain McLaren 0:01:16
25Ben O'Connor (Aus) NTT Pro Cycling 0:01:18
26Diego Ulissi (Ita) UAE Team Emirates
27Mikkel Bjerg (Den) UAE Team Emirates 0:01:19
28Ben Swift (GBr) Ineos Grenadiers 0:01:23
29Salvatore Puccio (Ita) Ineos Grenadiers 0:01:26
30Vincenzo Nibali (Ita) Trek-Segafredo 0:01:27
31Jakob Fuglsang (Den) Astana Pro Team 0:01:28
32Davide Ballerini (Ita) Deceuninck-Quickstep 0:01:30
33Fausto Masnada (Ita) Deceuninck-Quickstep 0:01:31
34Andrea Vendrame (Ita) AG2R la Mondiale 0:01:32
35Sam Oomen (Ned) Team Sunweb 0:01:34
36Patrick Konrad (Aut) Bora-Hansgrohe 0:01:35
37Louis Meintjes (RSA) NTT Pro Cycling 0:01:36
38Jai Hindley (Aus) Team Sunweb 0:01:37
39Arnaud Demare (Fra) Groupama-FDJ 0:01:38
40Lawrence Warbasse (USA) AG2R la Mondiale
41Attila Valter (Hun) CCC Team 0:01:39
42Ignatas Konovalovas (Ltu) Groupama-FDJ 0:01:41
43Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 0:01:43
44Geoffrey Bouchard (Fra) AG2R la Mondiale
45Ilnur Zakarin (Rus) CCC Team 0:01:47
46Valerio Conti (Ita) UAE Team Emirates 0:01:49
47Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 0:01:50
48Pieter Serry (Bel) Deceuninck-Quickstep 0:01:52
49James Knox (GBr) Deceuninck-Quickstep 0:01:53
50Christopher Hamilton (Aus) Team Sunweb
51Hermann Pernsteiner (Aut) Bahrain McLaren 0:01:55
52Peter Sagan (Svk) Bora-Hansgrohe 0:01:56
53Jonathan Caicedo (Ecu) EF Pro Cycling 0:01:58
54Stefano Oldani (Ita) Lotto Soudal 0:01:59
55Stéphane Rossetto (Fra) Cofidis
56Matteo Fabbro (Ita) Bora-Hansgrohe 0:02:00
57Nico Denz (Ger) Team Sunweb 0:02:02
58Simone Consonni (Ita) Cofidis 0:02:04
59Enrico Battaglin (Ita) Bahrain McLaren
60Matthew Holmes (GBr) Lotto Soudal 0:02:05
61Kamil Malecki (Pol) CCC Team
62Simon Clarke (Aus) EF Pro Cycling 0:02:06
63Ruben Guerreiro (Por) EF Pro Cycling 0:02:07
64Tanel Kangert (Est) EF Pro Cycling
65Kilian Frankiny (Swi) Groupama-FDJ
66Harm Vanhoucke (Bel) Lotto Soudal 0:02:10
67Domen Novak (Slo) Bahrain McLaren 0:02:11
68Rafal Majka (Pol) Bora-Hansgrohe 0:02:12
69Mark Padun (Ukr) Bahrain McLaren
70Mathias Le Turnier (Fra) Cofidis 0:02:13
71Jonathan Dibben (GBr) Lotto Soudal
72Carl Fredrik Hagen (Nor) Lotto Soudal 0:02:14
73Jesper Hansen (Den) Cofidis 0:02:15
74Sergio Samitier Samitier (Spa) Movistar Team
75James Whelan (Aus) EF Pro Cycling
76Victor De la Parte (Spa) CCC Team
77Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers
78Simone Bevilacqua (Ita) Vini Zabu' KTM 0:02:17
79Dario Cataldo (Ita) Movistar Team 0:02:18
80Elia Viviani (Ita) Cofidis 0:02:21
81Jacopo Guarnieri (Ita) Groupama-FDJ 0:02:22
82Julien Bernard (Fra) Trek-Segafredo 0:02:23
83Albert Torres Barcelo (Spa) Movistar Team 0:02:24
84Joe Dombrowski (USA) UAE Team Emirates
85Jacopo Mosca (Ita) Trek-Segafredo 0:02:25
86Yukiya Arashiro (Jpn) Bahrain McLaren 0:02:27
87Nicola Conci (Ita) Trek-Segafredo 0:02:28
88Daniel Navarro Garcia (Spa) Israel Start-Up Nation 0:02:31
89Rick Zabel (Ger) Israel Start-Up Nation 0:02:32
90Danilo Wyss (Swi) NTT Pro Cycling 0:02:35
91Eduardo Sepulveda (Arg) Movistar Team
92Dylan Sunderland (Aus) NTT Pro Cycling 0:02:37
93Alessandro Tonelli (Ita) Bardiani CSF Faizane'
94Giovanni Carboni (Ita) Bardiani CSF Faizane'
95Simone Ravanelli (Ita) Androni Giocattoli-Sidermec
96Rodrigo Contreras Pinzon (Col) Astana Pro Team 0:02:40
97Lorenzo Rota (Ita) Vini Zabu' KTM 0:02:42
98Nathan Haas (Aus) Cofidis
99Pawel Poljanski (Pol) Bora-Hansgrohe 0:02:43
100François Bidard (Fra) AG2R la Mondiale 0:02:44
101Davide Villella (Ita) Movistar Team 0:02:45
102Cesare Benedetti (Ita) Bora-Hansgrohe 0:02:47
103Amanuel Gebreigzabhier (Eri) NTT Pro Cycling
104Sander Armee (Bel) Lotto Soudal 0:02:48
105Antonio Pedrero (Spa) Movistar Team 0:02:49
106Jonas Gregaard Wilsly (Den) Astana Pro Team 0:02:52
107Eros Capecchi (Ita) Bahrain McLaren 0:02:53
108Mattia Bais (Ita) Androni Giocattoli-Sidermec
109Jaakko Hanninen (Fin) AG2R la Mondiale
110Marco Mathis (Ger) Cofidis 0:02:55
111Einer Augusto Rubio Reyes (Col) Movistar Team 0:02:58
112Adam Hansen (Aus) Lotto Soudal 0:03:01
113Davide Cimolai (Ita) Israel Start-Up Nation
114Etienne Van Empel (Ned) Vini Zabu' KTM 0:03:02
115Lachlan Morton (Aus) EF Pro Cycling
116Guy Sagiv (Isr) Israel Start-Up Nation 0:03:06
117Josip Rumac (Cro) Androni Giocattoli-Sidermec
118Filippo Fiorelli (Ita) Bardiani CSF Faizane' 0:03:13
119Edoardo Zardini (Ita) Vini Zabu' KTM
120Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 0:03:15
121Simon Pellaud (Swi) Androni Giocattoli-Sidermec
122Simon Guglielmi (Fra) Groupama-FDJ
123Hector Carretero (Spa) Movistar Team 0:03:16
124Antonio Nibali (Ita) Trek-Segafredo
125Francesco Romano (Ita) Bardiani CSF Faizane' 0:03:18
126Luca Chirico (Ita) Androni Giocattoli-Sidermec 0:03:21
127Marco Frapporti (Ita) Vini Zabu' KTM
128Filippo Zana (Ita) Bardiani CSF Faizane'
129Giovanni Lonardi (Ita) Bardiani CSF Faizane' 0:03:22
130Fabio Mazzucco (Ita) Bardiani CSF Faizane' 0:03:39
131Jefferson Alexander Cepeda (Ecu) Androni Giocattoli-Sidermec 0:03:42
132Iljo Keisse (Bel) Deceuninck-Quickstep 0:03:43
133Alessandro Bisolti (Ita) Androni Giocattoli-Sidermec 0:04:12

Points
Pos.Rider Name (Country) TeamResult
1Filippo Ganna (Ita) Ineos Grenadiers 15
2Victor Campenaerts (Bel) NTT Pro Cycling 12
3Rohan Dennis (Aus) Ineos Grenadiers 9
4Joao Almeida (Por) Deceuninck-Quickstep 7
5Miles Scotson (Aus) Groupama-FDJ 6
6Josef Cerny (Cze) CCC Team 5
7Chad Haga (USA) Team Sunweb 4
8Brandon McNulty (USA) UAE Team Emirates 3
9Kamil Gradek (Pol) CCC Team 2
10Jan Tratnik (Slo) Bahrain McLaren 1

Young Riders
Pos.Rider Name (Country) TeamResult
1Filippo Ganna (Ita) Ineos Grenadiers 0:17:16
2Joao Almeida (Por) Deceuninck-Quickstep 0:00:41
3Brandon McNulty (USA) UAE Team Emirates 0:00:46
4Tao Geoghegan Hart (GBr) Ineos Grenadiers 0:00:58
5Matteo Sobrero (Ita) NTT Pro Cycling 0:01:08
6Aurélien Paret Peintre (Fra) AG2R la Mondiale 0:01:13
7Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 0:01:14
8Ben O'Connor (Aus) NTT Pro Cycling 0:01:18
9Mikkel Bjerg (Den) UAE Team Emirates 0:01:19
10Sam Oomen (Ned) Team Sunweb 0:01:34
11Jai Hindley (Aus) Team Sunweb 0:01:37
12Attila Valter (Hun) CCC Team 0:01:39
13Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 0:01:43
14Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 0:01:50
15James Knox (GBr) Deceuninck-Quickstep 0:01:53
16Christopher Hamilton (Aus) Team Sunweb
17Stefano Oldani (Ita) Lotto Soudal 0:01:59
18Matteo Fabbro (Ita) Bora-Hansgrohe 0:02:00
19Kamil Malecki (Pol) CCC Team 0:02:05
20Harm Vanhoucke (Bel) Lotto Soudal 0:02:10
21Domen Novak (Slo) Bahrain McLaren 0:02:11
22Mark Padun (Ukr) Bahrain McLaren 0:02:12
23Mathias Le Turnier (Fra) Cofidis 0:02:13
24Sergio Samitier Samitier (Spa) Movistar Team 0:02:15
25James Whelan (Aus) EF Pro Cycling
26Simone Bevilacqua (Ita) Vini Zabu' KTM 0:02:17
27Nicola Conci (Ita) Trek-Segafredo 0:02:28
28Dylan Sunderland (Aus) NTT Pro Cycling 0:02:37
29Giovanni Carboni (Ita) Bardiani CSF Faizane'
30Simone Ravanelli (Ita) Androni Giocattoli-Sidermec
31Lorenzo Rota (Ita) Vini Zabu' KTM 0:02:42
32Jonas Gregaard Wilsly (Den) Astana Pro Team 0:02:52
33Mattia Bais (Ita) Androni Giocattoli-Sidermec 0:02:53
34Jaakko Hanninen (Fin) AG2R la Mondiale
35Einer Augusto Rubio Reyes (Col) Movistar Team 0:02:58
36Simon Guglielmi (Fra) Groupama-FDJ 0:03:15
37Hector Carretero (Spa) Movistar Team 0:03:16
38Francesco Romano (Ita) Bardiani CSF Faizane' 0:03:18
39Filippo Zana (Ita) Bardiani CSF Faizane' 0:03:21
40Giovanni Lonardi (Ita) Bardiani CSF Faizane' 0:03:22
41Fabio Mazzucco (Ita) Bardiani CSF Faizane' 0:03:39
42Jefferson Alexander Cepeda (Ecu) Androni Giocattoli-Sidermec 0:03:42

Teams
Pos.Rider Name (Country) TeamResult
1Ineos Grenadiers 0:53:18
2CCC Team 0:01:06
3Team Sunweb 0:01:07
4NTT Pro Cycling 0:01:20
5UAE Team Emirates 0:01:53
6Deceuninck-Quick-Step 0:01:55
7Bahrain McClaren 0:02:28
8Groupama-FDJ 0:02:30
9AG2R la Mondiale 0:02:53
10Astana Pro Team 0:02:55
11Bora-Hansgrohe 0:03:05
12Israel Start-Up Nation 0:03:18
13Lotto Soudal 0:03:37
14EF Pro Cycling 0:04:41
15Trek-Segafredo 0:04:45
16Cofidis 0:04:46
17Movistar Team 0:05:27
18Vini Zabu' KTM 0:06:31
19Bardiani CSF Faizane 0:06:57
20Androni Giocattoli-Sidermec 0:07:06

Final general classification after stage 21
Pos.Rider Name (Country) TeamResult
1Tao Geoghegan Hart (GBr) Ineos Grenadiers 85:40:21
2Jai Hindley (Aus) Team Sunweb 0:00:39
3Wilco Kelderman (Ned) Team Sunweb 0:01:29
4Joao Almeida (Por) Deceuninck-Quickstep 0:02:57
5Pello Bilbao (Spa) Bahrain McLaren 0:03:09
6Jakob Fuglsang (Den) Astana Pro Team 0:07:02
7Vincenzo Nibali (Ita) Trek-Segafredo 0:08:15
8Patrick Konrad (Aut) Bora-Hansgrohe 0:08:42
9Fausto Masnada (Ita) Deceuninck-Quickstep 0:09:57
10Hermann Pernsteiner (Aut) Bahrain McLaren 0:11:05
11Domenico Pozzovivo (Ita) NTT Pro Cycling 0:11:52
12Rafal Majka (Pol) Bora-Hansgrohe 0:20:31
13Sergio Samitier Samitier (Spa) Movistar Team 0:35:29
14James Knox (GBr) Deceuninck-Quickstep 0:37:41
15Brandon McNulty (USA) UAE Team Emirates 0:38:10
16Aurélien Paret Peintre (Fra) AG2R la Mondiale 0:45:04
17Lawrence Warbasse (USA) AG2R la Mondiale 0:53:25
18Ben Swift (GBr) Ineos Grenadiers 0:57:36
19Antonio Pedrero (Spa) Movistar Team 0:59:36
20Ben O'Connor (Aus) NTT Pro Cycling 1:02:57
21Sam Oomen (Ned) Team Sunweb 1:03:46
22Ilnur Zakarin (Rus) CCC Team 1:06:11
23Matteo Fabbro (Ita) Bora-Hansgrohe 1:13:49
24Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 1:16:15
25Fabio Felline (Ita) Astana Pro Team 1:25:14
26Martijn Tusveld (Ned) Team Sunweb 1:25:34
27Attila Valter (Hun) CCC Team 1:30:13
28Pieter Serry (Bel) Deceuninck-Quickstep 1:30:54
29Christopher Hamilton (Aus) Team Sunweb 1:32:26
30Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 1:34:49
31Jacopo Mosca (Ita) Trek-Segafredo 1:48:45
32Tanel Kangert (Est) EF Pro Cycling 1:55:57
33Ruben Guerreiro (Por) EF Pro Cycling 1:58:58
34Victor De la Parte (Spa) CCC Team 2:00:42
35Rohan Dennis (Aus) Ineos Grenadiers 2:04:26
36Louis Meintjes (RSA) NTT Pro Cycling 2:05:51
37Antonio Nibali (Ita) Trek-Segafredo 2:05:56
38Diego Ulissi (Ita) UAE Team Emirates 2:06:59
39François Bidard (Fra) AG2R la Mondiale 2:07:36
40Davide Villella (Ita) Movistar Team 2:10:28
41Thomas De Gendt (Bel) Lotto Soudal 2:14:51
42Carl Fredrik Hagen (Nor) Lotto Soudal 2:20:58
43Joe Dombrowski (USA) UAE Team Emirates 2:23:09
44Jesper Hansen (Den) Cofidis 2:27:05
45Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 2:32:17
46Enrico Battaglin (Ita) Bahrain McLaren 2:32:44
47Sander Armee (Bel) Lotto Soudal 2:32:48
48Daniel Navarro Garcia (Spa) Israel Start-Up Nation 2:37:43
49Julien Bernard (Fra) Trek-Segafredo 2:38:53
50Andrea Vendrame (Ita) AG2R la Mondiale 2:39:38
51Alessandro Tonelli (Ita) Bardiani CSF Faizane' 2:42:25
52Nicola Conci (Ita) Trek-Segafredo 2:43:56
53Jonas Gregaard Wilsly (Den) Astana Pro Team 2:44:59
54Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 2:47:05
55Geoffrey Bouchard (Fra) AG2R la Mondiale 2:47:38
56Salvatore Puccio (Ita) Ineos Grenadiers 2:50:11
57Eduardo Sepulveda (Arg) Movistar Team 2:50:15
58Einer Augusto Rubio Reyes (Col) Movistar Team 2:51:20
59Domen Novak (Slo) Bahrain McLaren 2:54:22
60Harm Vanhoucke (Bel) Lotto Soudal 2:55:25
61Filippo Ganna (Ita) Ineos Grenadiers 3:03:16
62Jan Tratnik (Slo) Bahrain McLaren 3:05:27
63Stéphane Rossetto (Fra) Cofidis 3:08:54
64Joseph Rosskopf (USA) CCC Team 3:10:30
65Jonathan Caicedo (Ecu) EF Pro Cycling 3:14:47
66Dario Cataldo (Ita) Movistar Team 3:21:44
67Pawel Poljanski (Pol) Bora-Hansgrohe 3:22:39
68Kamil Malecki (Pol) CCC Team 3:23:03
69Chad Haga (USA) Team Sunweb 3:23:06
70Mark Padun (Ukr) Bahrain McLaren 3:25:54
71Simon Pellaud (Swi) Androni Giocattoli-Sidermec 3:28:32
72Davide Ballerini (Ita) Deceuninck-Quickstep 3:30:50
73Jaakko Hanninen (Fin) AG2R la Mondiale 3:35:23
74Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 3:38:15
75Simon Clarke (Aus) EF Pro Cycling 3:41:04
76Matteo Sobrero (Ita) NTT Pro Cycling 3:41:58
77Kilian Frankiny (Swi) Groupama-FDJ 3:45:21
78Jefferson Alexander Cepeda (Ecu) Androni Giocattoli-Sidermec 3:49:05
79Hector Carretero (Spa) Movistar Team 3:54:39
80Mathias Le Turnier (Fra) Cofidis 4:00:46
81Matthew Holmes (GBr) Lotto Soudal 4:01:45
82Giovanni Carboni (Ita) Bardiani CSF Faizane' 4:02:55
83Nico Denz (Ger) Team Sunweb 4:03:03
84Danilo Wyss (Swi) NTT Pro Cycling 4:03:24
85Luca Chirico (Ita) Androni Giocattoli-Sidermec 4:03:58
86Josef Cerny (Cze) CCC Team 4:04:57
87Eros Capecchi (Ita) Bahrain McLaren 4:05:17
88Etienne Van Empel (Ned) Vini Zabu' KTM 4:07:49
89Yukiya Arashiro (Jpn) Bahrain McLaren 4:10:07
90Alessandro Bisolti (Ita) Androni Giocattoli-Sidermec 4:15:50
91Francesco Romano (Ita) Bardiani CSF Faizane' 4:18:52
92Peter Sagan (Svk) Bora-Hansgrohe 4:21:56
93Lorenzo Rota (Ita) Vini Zabu' KTM 4:22:59
94Cesare Benedetti (Ita) Bora-Hansgrohe 4:23:22
95Victor Campenaerts (Bel) NTT Pro Cycling 4:27:30
96Edoardo Zardini (Ita) Vini Zabu' KTM 4:30:02
97Mikkel Bjerg (Den) UAE Team Emirates 4:31:02
98Stefano Oldani (Ita) Lotto Soudal 4:33:10
99Josip Rumac (Cro) Androni Giocattoli-Sidermec 4:34:38
100Filippo Zana (Ita) Bardiani CSF Faizane' 4:45:29
101Valerio Conti (Ita) UAE Team Emirates 4:45:35
102Mattia Bais (Ita) Androni Giocattoli-Sidermec 4:49:25
103Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 4:52:03
104Kamil Gradek (Pol) CCC Team 4:56:07
105James Whelan (Aus) EF Pro Cycling 4:57:54
106Albert Torres Barcelo (Spa) Movistar Team 4:59:30
107Maciej Bodnar (Pol) Bora-Hansgrohe 5:04:10
108Marco Frapporti (Ita) Vini Zabu' KTM 5:05:15
109Filippo Fiorelli (Ita) Bardiani CSF Faizane' 5:08:17
110Rodrigo Contreras Pinzon (Col) Astana Pro Team 5:08:22
111Lachlan Morton (Aus) EF Pro Cycling 5:09:44
112Elia Viviani (Ita) Cofidis 5:10:26
113Miles Scotson (Aus) Groupama-FDJ 5:13:09
114Dylan Sunderland (Aus) NTT Pro Cycling 5:13:54
115Simone Consonni (Ita) Cofidis 5:16:07
116Simon Guglielmi (Fra) Groupama-FDJ 5:16:48
117Adam Hansen (Aus) Lotto Soudal 5:17:02
118Davide Cimolai (Ita) Israel Start-Up Nation 5:19:10
119Nathan Haas (Aus) Cofidis 5:20:50
120Alex Dowsett (GBr) Israel Start-Up Nation 5:23:04
121Arnaud Demare (Fra) Groupama-FDJ 5:26:45
122Iljo Keisse (Bel) Deceuninck-Quickstep 5:32:08
123Rick Zabel (Ger) Israel Start-Up Nation 5:32:22
124Ignatas Konovalovas (Ltu) Groupama-FDJ 5:36:34
125Giovanni Lonardi (Ita) Bardiani CSF Faizane' 5:41:00
126Matthias Brändle (Aut) Israel Start-Up Nation 5:42:40
127Simone Bevilacqua (Ita) Vini Zabu' KTM 5:45:25
128Jacopo Guarnieri (Ita) Groupama-FDJ 5:46:03
129Fabio Mazzucco (Ita) Bardiani CSF Faizane' 5:48:10
130Marco Mathis (Ger) Cofidis 5:51:35
131Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 5:53:47
132Guy Sagiv (Isr) Israel Start-Up Nation 6:12:07
133Jonathan Dibben (GBr) Lotto Soudal 6:13:59

Points classification
Pos.Rider Name (Country) TeamResult
1Arnaud Demare (Fra) Groupama-FDJ 233
2Peter Sagan (Svk) Bora-Hansgrohe 184
3Joao Almeida (Por) Deceuninck-Quickstep 108
4Filippo Ganna (Ita) Ineos Grenadiers 87
5Josef Cerny (Cze) CCC Team 78
6Andrea Vendrame (Ita) AG2R la Mondiale 78
7Diego Ulissi (Ita) UAE Team Emirates 77
8Simon Pellaud (Swi) Androni Giocattoli-Sidermec 70
9Tao Geoghegan Hart (GBr) Ineos Grenadiers 66
10Patrick Konrad (Aut) Bora-Hansgrohe 61
11Victor Campenaerts (Bel) NTT Pro Cycling 58
12Jai Hindley (Aus) Team Sunweb 54
13Wilco Kelderman (Ned) Team Sunweb 49
14Davide Ballerini (Ita) Deceuninck-Quickstep 49
15Thomas De Gendt (Bel) Lotto Soudal 48
16Ben O'Connor (Aus) NTT Pro Cycling 45
17Ben Swift (GBr) Ineos Grenadiers 45
18Brandon McNulty (USA) UAE Team Emirates 40
19Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 39
20Marco Frapporti (Ita) Vini Zabu' KTM 36
21Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 36
22Alex Dowsett (GBr) Israel Start-Up Nation 35
23Simon Clarke (Aus) EF Pro Cycling 35
24Ruben Guerreiro (Por) EF Pro Cycling 34
25Jacopo Mosca (Ita) Trek-Segafredo 34
26Rohan Dennis (Aus) Ineos Grenadiers 34
27Joseph Rosskopf (USA) CCC Team 33
28Elia Viviani (Ita) Cofidis 32
29Matthew Holmes (GBr) Lotto Soudal 31
30Jakob Fuglsang (Den) Astana Pro Team 31
31Fabio Felline (Ita) Astana Pro Team 31
32Pello Bilbao (Spa) Bahrain McLaren 30
33Enrico Battaglin (Ita) Bahrain McLaren 30
34Salvatore Puccio (Ita) Ineos Grenadiers 30
35Mattia Bais (Ita) Androni Giocattoli-Sidermec 26
36Harm Vanhoucke (Bel) Lotto Soudal 26
37Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 25
38Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 24
39Mikkel Bjerg (Den) UAE Team Emirates 24
40Davide Cimolai (Ita) Israel Start-Up Nation 24
41Jonathan Caicedo (Ecu) EF Pro Cycling 23
42Jan Tratnik (Slo) Bahrain McLaren 21
43Sander Armee (Bel) Lotto Soudal 21
44Stefano Oldani (Ita) Lotto Soudal 20
45Vincenzo Nibali (Ita) Trek-Segafredo 19
46Rafal Majka (Pol) Bora-Hansgrohe 19
47Filippo Fiorelli (Ita) Bardiani CSF Faizane' 19
48Hector Carretero (Spa) Movistar Team 18
49Mark Padun (Ukr) Bahrain McLaren 18
50Simone Consonni (Ita) Cofidis 18
51Sergio Samitier Samitier (Spa) Movistar Team 17
52Geoffrey Bouchard (Fra) AG2R la Mondiale 17
53Albert Torres Barcelo (Spa) Movistar Team 16
54Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 15
55Francesco Romano (Ita) Bardiani CSF Faizane' 14
56Lawrence Warbasse (USA) AG2R la Mondiale 14
57Etienne Van Empel (Ned) Vini Zabu' KTM 14
58Iljo Keisse (Bel) Deceuninck-Quickstep 14
59Rick Zabel (Ger) Israel Start-Up Nation 14
60Kilian Frankiny (Swi) Groupama-FDJ 13
61Josip Rumac (Cro) Androni Giocattoli-Sidermec 12
62Ilnur Zakarin (Rus) CCC Team 12
63Alessandro Tonelli (Ita) Bardiani CSF Faizane' 12
64Nico Denz (Ger) Team Sunweb 12
65Hermann Pernsteiner (Aut) Bahrain McLaren 11
66Davide Villella (Ita) Movistar Team 11
67Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 10
68Dario Cataldo (Ita) Movistar Team 10
69Matthias Brändle (Aut) Israel Start-Up Nation 10
70Lorenzo Rota (Ita) Vini Zabu' KTM 8
71Cesare Benedetti (Ita) Bora-Hansgrohe 8
72Edoardo Zardini (Ita) Vini Zabu' KTM 8
73Kamil Gradek (Pol) CCC Team 8
74Miles Scotson (Aus) Groupama-FDJ 8
75Giovanni Lonardi (Ita) Bardiani CSF Faizane' 8
76Tanel Kangert (Est) EF Pro Cycling 7
77Kamil Malecki (Pol) CCC Team 7
78James Knox (GBr) Deceuninck-Quickstep 6
79Carl Fredrik Hagen (Nor) Lotto Soudal 6
80Filippo Zana (Ita) Bardiani CSF Faizane' 6
81Daniel Navarro Garcia (Spa) Israel Start-Up Nation 5
82Eduardo Sepulveda (Arg) Movistar Team 5
83Einer Augusto Rubio Reyes (Col) Movistar Team 5
84James Whelan (Aus) EF Pro Cycling 5
85Lachlan Morton (Aus) EF Pro Cycling 5
86Nathan Haas (Aus) Cofidis 5
87Fabio Mazzucco (Ita) Bardiani CSF Faizane' 5
88Domenico Pozzovivo (Ita) NTT Pro Cycling 4
89Chad Haga (USA) Team Sunweb 4
90Matteo Sobrero (Ita) NTT Pro Cycling 4
91Jacopo Guarnieri (Ita) Groupama-FDJ 4
92Matteo Fabbro (Ita) Bora-Hansgrohe 3
93Jesper Hansen (Den) Cofidis 3
94Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 3
95Maciej Bodnar (Pol) Bora-Hansgrohe 3
96Rodrigo Contreras Pinzon (Col) Astana Pro Team 3
97Fausto Masnada (Ita) Deceuninck-Quickstep 2
98Antonio Pedrero (Spa) Movistar Team 2
99Attila Valter (Hun) CCC Team 2
100Valerio Conti (Ita) UAE Team Emirates 2
101Marco Mathis (Ger) Cofidis 2
102Sam Oomen (Ned) Team Sunweb 1
103Pieter Serry (Bel) Deceuninck-Quickstep 1
104Alessandro Bisolti (Ita) Androni Giocattoli-Sidermec 1
105Giovanni Carboni (Ita) Bardiani CSF Faizane' -3

Mountains classification
Pos.Rider Name (Country) TeamResult
1Ruben Guerreiro (Por) EF Pro Cycling 234
2Tao Geoghegan Hart (GBr) Ineos Grenadiers 157
3Thomas De Gendt (Bel) Lotto Soudal 122
4Rohan Dennis (Aus) Ineos Grenadiers 119
5Ben O'Connor (Aus) NTT Pro Cycling 71
6Jai Hindley (Aus) Team Sunweb 71
7Wilco Kelderman (Ned) Team Sunweb 55
8Filippo Ganna (Ita) Ineos Grenadiers 48
9Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 45
10Einer Augusto Rubio Reyes (Col) Movistar Team 44
11Jonathan Caicedo (Ecu) EF Pro Cycling 40
12Simon Pellaud (Swi) Androni Giocattoli-Sidermec 39
13Matthew Holmes (GBr) Lotto Soudal 35
14Jakob Fuglsang (Den) Astana Pro Team 33
15Ilnur Zakarin (Rus) CCC Team 31
16Pello Bilbao (Spa) Bahrain McLaren 27
17Kilian Frankiny (Swi) Groupama-FDJ 26
18Geoffrey Bouchard (Fra) AG2R la Mondiale 25
19Harm Vanhoucke (Bel) Lotto Soudal 22
20Joao Almeida (Por) Deceuninck-Quickstep 21
21Davide Ballerini (Ita) Deceuninck-Quickstep 21
22Domenico Pozzovivo (Ita) NTT Pro Cycling 20
23Lawrence Warbasse (USA) AG2R la Mondiale 20
24Filippo Fiorelli (Ita) Bardiani CSF Faizane' 18
25Jan Tratnik (Slo) Bahrain McLaren 18
26Edoardo Zardini (Ita) Vini Zabu' KTM 18
27Dario Cataldo (Ita) Movistar Team 18
28Pieter Serry (Bel) Deceuninck-Quickstep 18
29James Whelan (Aus) EF Pro Cycling 16
30Stéphane Rossetto (Fra) Cofidis 16
31Peter Sagan (Svk) Bora-Hansgrohe 15
32Vincenzo Nibali (Ita) Trek-Segafredo 15
33Hermann Pernsteiner (Aut) Bahrain McLaren 15
34Mikkel Bjerg (Den) UAE Team Emirates 15
35Andrea Vendrame (Ita) AG2R la Mondiale 14
36Rafal Majka (Pol) Bora-Hansgrohe 11
37Joe Dombrowski (USA) UAE Team Emirates 11
38Etienne Van Empel (Ned) Vini Zabu' KTM 11
39Patrick Konrad (Aut) Bora-Hansgrohe 8
40Louis Meintjes (RSA) NTT Pro Cycling 8
41Hector Carretero (Spa) Movistar Team 8
42Marco Frapporti (Ita) Vini Zabu' KTM 8
43Matthias Brändle (Aut) Israel Start-Up Nation 8
44Alex Dowsett (GBr) Israel Start-Up Nation 7
45Davide Villella (Ita) Movistar Team 7
46Victor De la Parte (Spa) CCC Team 6
47Jesper Hansen (Den) Cofidis 6
48Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 6
49Salvatore Puccio (Ita) Ineos Grenadiers 6
50Joseph Rosskopf (USA) CCC Team 6
51Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 6
52Alessandro Bisolti (Ita) Androni Giocattoli-Sidermec 6
53Mattia Bais (Ita) Androni Giocattoli-Sidermec 5
54Sergio Samitier Samitier (Spa) Movistar Team 5
55Brandon McNulty (USA) UAE Team Emirates 5
56Eduardo Sepulveda (Arg) Movistar Team 5
57Simon Clarke (Aus) EF Pro Cycling 4
58James Knox (GBr) Deceuninck-Quickstep 4
59Ben Swift (GBr) Ineos Grenadiers 4
60Sam Oomen (Ned) Team Sunweb 4
61Enrico Battaglin (Ita) Bahrain McLaren 4
62Alessandro Tonelli (Ita) Bardiani CSF Faizane' 4
63Diego Ulissi (Ita) UAE Team Emirates 3
64Rick Zabel (Ger) Israel Start-Up Nation 3
65Domen Novak (Slo) Bahrain McLaren 3
66Mark Padun (Ukr) Bahrain McLaren 3
67Lorenzo Rota (Ita) Vini Zabu' KTM 3
68Valerio Conti (Ita) UAE Team Emirates 3
69Kamil Malecki (Pol) CCC Team 2
70Kamil Gradek (Pol) CCC Team 2
71Fabio Mazzucco (Ita) Bardiani CSF Faizane' 2
72Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 1
73Tanel Kangert (Est) EF Pro Cycling 1
74Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 1
75Sander Armee (Bel) Lotto Soudal 1
76Cesare Benedetti (Ita) Bora-Hansgrohe 1
77Ignatas Konovalovas (Ltu) Groupama-FDJ 1
78Giovanni Carboni (Ita) Bardiani CSF Faizane' -4

Young riders classification
Pos.Rider Name (Country) TeamResult
1Tao Geoghegan Hart (GBr) Ineos Grenadiers 85:40:21
2Jai Hindley (Aus) Team Sunweb 0:00:39
3Joao Almeida (Por) Deceuninck-Quickstep 0:02:57
4Sergio Samitier Samitier (Spa) Movistar Team 0:35:29
5James Knox (GBr) Deceuninck-Quickstep 0:37:41
6Brandon McNulty (USA) UAE Team Emirates 0:38:10
7Aurélien Paret Peintre (Fra) AG2R la Mondiale 0:45:04
8Ben O'Connor (Aus) NTT Pro Cycling 1:02:57
9Sam Oomen (Ned) Team Sunweb 1:03:46
10Matteo Fabbro (Ita) Bora-Hansgrohe 1:13:49
11Attila Valter (Hun) CCC Team 1:30:13
12Christopher Hamilton (Aus) Team Sunweb 1:32:26
13Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 1:34:49
14Oscar Rodriguez Garaicoechea (Spa) Astana Pro Team 2:32:17
15Nicola Conci (Ita) Trek-Segafredo 2:43:56
16Jonas Gregaard Wilsly (Den) Astana Pro Team 2:44:59
17Einer Augusto Rubio Reyes (Col) Movistar Team 2:51:20
18Domen Novak (Slo) Bahrain McLaren 2:54:22
19Harm Vanhoucke (Bel) Lotto Soudal 2:55:25
20Filippo Ganna (Ita) Ineos Grenadiers 3:03:16
21Kamil Malecki (Pol) CCC Team 3:23:03
22Mark Padun (Ukr) Bahrain McLaren 3:25:54
23Jaakko Hanninen (Fin) AG2R la Mondiale 3:35:23
24Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 3:38:15
25Matteo Sobrero (Ita) NTT Pro Cycling 3:41:58
26Jefferson Alexander Cepeda (Ecu) Androni Giocattoli-Sidermec 3:49:05
27Hector Carretero (Spa) Movistar Team 3:54:39
28Mathias Le Turnier (Fra) Cofidis 4:00:46
29Giovanni Carboni (Ita) Bardiani CSF Faizane' 4:02:55
30Francesco Romano (Ita) Bardiani CSF Faizane' 4:18:52
31Lorenzo Rota (Ita) Vini Zabu' KTM 4:22:59
32Mikkel Bjerg (Den) UAE Team Emirates 4:31:02
33Stefano Oldani (Ita) Lotto Soudal 4:33:10
34Filippo Zana (Ita) Bardiani CSF Faizane' 4:45:29
35Mattia Bais (Ita) Androni Giocattoli-Sidermec 4:49:25
36James Whelan (Aus) EF Pro Cycling 4:57:54
37Dylan Sunderland (Aus) NTT Pro Cycling 5:13:54
38Simon Guglielmi (Fra) Groupama-FDJ 5:16:48
39Giovanni Lonardi (Ita) Bardiani CSF Faizane' 5:41:00
40Simone Bevilacqua (Ita) Vini Zabu' KTM 5:45:25
41Fabio Mazzucco (Ita) Bardiani CSF Faizane' 5:48:10
42Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 5:53:47

Combativity classification
Pos.Rider Name (Country) TeamResult
1Thomas De Gendt (Bel) Lotto Soudal 55
2Simon Pellaud (Swi) Androni Giocattoli-Sidermec 52
3Tao Geoghegan Hart (GBr) Ineos Grenadiers 45
4Ruben Guerreiro (Por) EF Pro Cycling 45
5Peter Sagan (Svk) Bora-Hansgrohe 40
6Rohan Dennis (Aus) Ineos Grenadiers 39
7Filippo Ganna (Ita) Ineos Grenadiers 37
8Jai Hindley (Aus) Team Sunweb 36
9Joao Almeida (Por) Deceuninck-Quickstep 35
10Arnaud Demare (Fra) Groupama-FDJ 33
11Marco Frapporti (Ita) Vini Zabu' KTM 28
12Ben O'Connor (Aus) NTT Pro Cycling 27
13Mattia Bais (Ita) Androni Giocattoli-Sidermec 24
14Andrea Vendrame (Ita) AG2R la Mondiale 23
15Matthew Holmes (GBr) Lotto Soudal 21
16Wilco Kelderman (Ned) Team Sunweb 20
17Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 19
18Davide Ballerini (Ita) Deceuninck-Quickstep 19
19Jan Tratnik (Slo) Bahrain McLaren 18
20Jonathan Caicedo (Ecu) EF Pro Cycling 18
21Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 17
22Ben Swift (GBr) Ineos Grenadiers 16
23Josef Cerny (Cze) CCC Team 16
24Victor Campenaerts (Bel) NTT Pro Cycling 16
25Joseph Rosskopf (USA) CCC Team 15
26Simon Clarke (Aus) EF Pro Cycling 15
27Hector Carretero (Spa) Movistar Team 14
28Mikkel Bjerg (Den) UAE Team Emirates 14
29Diego Ulissi (Ita) UAE Team Emirates 13
30Alex Dowsett (GBr) Israel Start-Up Nation 13
31Ilnur Zakarin (Rus) CCC Team 12
32Salvatore Puccio (Ita) Ineos Grenadiers 12
33Kilian Frankiny (Swi) Groupama-FDJ 12
34Patrick Konrad (Aut) Bora-Hansgrohe 11
35Alessandro Tonelli (Ita) Bardiani CSF Faizane' 11
36Geoffrey Bouchard (Fra) AG2R la Mondiale 11
37Harm Vanhoucke (Bel) Lotto Soudal 11
38Lorenzo Rota (Ita) Vini Zabu' KTM 11
39Brandon McNulty (USA) UAE Team Emirates 10
40Jacopo Mosca (Ita) Trek-Segafredo 10
41Francesco Romano (Ita) Bardiani CSF Faizane' 10
42Mark Padun (Ukr) Bahrain McLaren 9
43Edoardo Zardini (Ita) Vini Zabu' KTM 9
44Jakob Fuglsang (Den) Astana Pro Team 8
45Hermann Pernsteiner (Aut) Bahrain McLaren 8
46Lawrence Warbasse (USA) AG2R la Mondiale 8
47Carl Fredrik Hagen (Nor) Lotto Soudal 8
48Dario Cataldo (Ita) Movistar Team 8
49Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 8
50Pello Bilbao (Spa) Bahrain McLaren 7
51Fabio Felline (Ita) Astana Pro Team 7
52Sander Armee (Bel) Lotto Soudal 7
53Etienne Van Empel (Ned) Vini Zabu' KTM 7
54Mikkel Frølich Honoré (Den) Deceuninck-Quickstep 6
55Filippo Zana (Ita) Bardiani CSF Faizane' 6
56Kamil Gradek (Pol) CCC Team 6
57James Whelan (Aus) EF Pro Cycling 6
58Matthias Brändle (Aut) Israel Start-Up Nation 6
59Alvaro Jose Hodeg Chagui (Col) Deceuninck-Quickstep 6
60Sergio Samitier Samitier (Spa) Movistar Team 5
61Enrico Battaglin (Ita) Bahrain McLaren 5
62Einer Augusto Rubio Reyes (Col) Movistar Team 5
63Cesare Benedetti (Ita) Bora-Hansgrohe 5
64Josip Rumac (Cro) Androni Giocattoli-Sidermec 5
65Elia Viviani (Ita) Cofidis 5
66Rafal Majka (Pol) Bora-Hansgrohe 4
67Pieter Serry (Bel) Deceuninck-Quickstep 4
68Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 4
69Domenico Pozzovivo (Ita) NTT Pro Cycling 3
70Davide Villella (Ita) Movistar Team 3
71Kamil Malecki (Pol) CCC Team 3
72Filippo Fiorelli (Ita) Bardiani CSF Faizane' 3
73Simone Consonni (Ita) Cofidis 3
74Rick Zabel (Ger) Israel Start-Up Nation 3
75Fabio Mazzucco (Ita) Bardiani CSF Faizane' 3
76Eduardo Sepulveda (Arg) Movistar Team 2
77Stéphane Rossetto (Fra) Cofidis 2
78Miles Scotson (Aus) Groupama-FDJ 2
79Davide Cimolai (Ita) Israel Start-Up Nation 2
80Iljo Keisse (Bel) Deceuninck-Quickstep 2
81Vincenzo Nibali (Ita) Trek-Segafredo 1
82François Bidard (Fra) AG2R la Mondiale 1
83Joe Dombrowski (USA) UAE Team Emirates 1
84Jesper Hansen (Den) Cofidis 1
85Chad Haga (USA) Team Sunweb 1
86Nico Denz (Ger) Team Sunweb 1
87Alessandro Bisolti (Ita) Androni Giocattoli-Sidermec 1
88Stefano Oldani (Ita) Lotto Soudal 1

Sprints classification
Pos.Rider Name (Country) TeamResult
1Simon Pellaud (Swi) Androni Giocattoli-Sidermec 78
2Thomas De Gendt (Bel) Lotto Soudal 56
3Marco Frapporti (Ita) Vini Zabu' KTM 44
4Mattia Bais (Ita) Androni Giocattoli-Sidermec 34
5Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 28
6Andrea Vendrame (Ita) AG2R la Mondiale 25
7Peter Sagan (Svk) Bora-Hansgrohe 21
8Francesco Romano (Ita) Bardiani CSF Faizane' 20
9Hector Carretero (Spa) Movistar Team 19
10Matthew Holmes (GBr) Lotto Soudal 17
11Rohan Dennis (Aus) Ineos Grenadiers 16
12Tao Geoghegan Hart (GBr) Ineos Grenadiers 16
13Lorenzo Rota (Ita) Vini Zabu' KTM 15
14Davide Ballerini (Ita) Deceuninck-Quickstep 15
15Arnaud Demare (Fra) Groupama-FDJ 14
16Carl Fredrik Hagen (Nor) Lotto Soudal 13
17Jai Hindley (Aus) Team Sunweb 13
18Alex Dowsett (GBr) Israel Start-Up Nation 11
19Alessandro Tonelli (Ita) Bardiani CSF Faizane' 11
20Ruben Guerreiro (Por) EF Pro Cycling 11
21Josip Rumac (Cro) Androni Giocattoli-Sidermec 10
22Kilian Frankiny (Swi) Groupama-FDJ 10
23Jonathan Caicedo (Ecu) EF Pro Cycling 10
24Jan Tratnik (Slo) Bahrain McLaren 10
25Ben O'Connor (Aus) NTT Pro Cycling 10
26Ben Swift (GBr) Ineos Grenadiers 10
27Joseph Rosskopf (USA) CCC Team 9
28Salvatore Puccio (Ita) Ineos Grenadiers 9
29Josef Cerny (Cze) CCC Team 8
30Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 8
31Filippo Ganna (Ita) Ineos Grenadiers 8
32Geoffrey Bouchard (Fra) AG2R la Mondiale 8
33Jacopo Mosca (Ita) Trek-Segafredo 8
34Lawrence Warbasse (USA) AG2R la Mondiale 8
35Edoardo Zardini (Ita) Vini Zabu' KTM 7
36Cesare Benedetti (Ita) Bora-Hansgrohe 7
37Simon Clarke (Aus) EF Pro Cycling 7
38Kamil Gradek (Pol) CCC Team 6
39Filippo Zana (Ita) Bardiani CSF Faizane' 6
40Mikkel Bjerg (Den) UAE Team Emirates 6
41Victor Campenaerts (Bel) NTT Pro Cycling 6
42Mark Padun (Ukr) Bahrain McLaren 6
43Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 6
44Sander Armee (Bel) Lotto Soudal 6
45Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 6
46Joao Almeida (Por) Deceuninck-Quickstep 6
47Etienne Van Empel (Ned) Vini Zabu' KTM 5
48Dario Cataldo (Ita) Movistar Team 5
49Ilnur Zakarin (Rus) CCC Team 5
50James Whelan (Aus) EF Pro Cycling 4
51Harm Vanhoucke (Bel) Lotto Soudal 4
52Sergio Samitier Samitier (Spa) Movistar Team 4
53Fabio Mazzucco (Ita) Bardiani CSF Faizane' 3
54Elia Viviani (Ita) Cofidis 3
55Davide Villella (Ita) Movistar Team 3
56Fabio Felline (Ita) Astana Pro Team 3
57Matthias Brändle (Aut) Israel Start-Up Nation 2
58Eduardo Sepulveda (Arg) Movistar Team 2
59Wilco Kelderman (Ned) Team Sunweb 2
60Chad Haga (USA) Team Sunweb 1
61François Bidard (Fra) AG2R la Mondiale 1
62Pieter Serry (Bel) Deceuninck-Quickstep 1
63Pello Bilbao (Spa) Bahrain McLaren 1

Breakaway classification
Pos.Rider Name (Country) TeamResult
1Mattia Bais (Ita) Androni Giocattoli-Sidermec 458
2Marco Frapporti (Ita) Vini Zabu' KTM 428
3Simon Pellaud (Swi) Androni Giocattoli-Sidermec 352
4Matthew Holmes (GBr) Lotto Soudal 336
5Salvatore Puccio (Ita) Ineos Grenadiers 320
6Alessandro Tonelli (Ita) Bardiani CSF Faizane' 307
7Filippo Ganna (Ita) Ineos Grenadiers 304
8Simone Ravanelli (Ita) Androni Giocattoli-Sidermec 304
9Francesco Romano (Ita) Bardiani CSF Faizane' 263
10Thomas De Gendt (Bel) Lotto Soudal 237
11Jhonatan Restrepo Valencia (Col) Androni Giocattoli-Sidermec 231
12Jan Tratnik (Slo) Bahrain McLaren 222
13Mikkel Bjerg (Den) UAE Team Emirates 216
14Hector Carretero (Spa) Movistar Team 190
15Dario Cataldo (Ita) Movistar Team 189
16Ben O'Connor (Aus) NTT Pro Cycling 181
17Sander Armee (Bel) Lotto Soudal 181
18Joseph Rosskopf (USA) CCC Team 176
19James Whelan (Aus) EF Pro Cycling 174
20Alex Dowsett (GBr) Israel Start-Up Nation 172
21Ruben Guerreiro (Por) EF Pro Cycling 171
22Matthias Brändle (Aut) Israel Start-Up Nation 168
23Harm Vanhoucke (Bel) Lotto Soudal 160
24Victor Campenaerts (Bel) NTT Pro Cycling 159
25Filippo Zana (Ita) Bardiani CSF Faizane' 159
26Geoffrey Bouchard (Fra) AG2R la Mondiale 152
27Carl Fredrik Hagen (Nor) Lotto Soudal 151
28Edoardo Zardini (Ita) Vini Zabu' KTM 151
29Valerio Conti (Ita) UAE Team Emirates 146
30Etienne Van Empel (Ned) Vini Zabu' KTM 145
31Fabio Mazzucco (Ita) Bardiani CSF Faizane' 145
32Jonathan Caicedo (Ecu) EF Pro Cycling 144
33Jonathan Castroviejo Nicolas (Spa) Ineos Grenadiers 138
34Davide Villella (Ita) Movistar Team 138
35Ben Swift (GBr) Ineos Grenadiers 137
36Lorenzo Rota (Ita) Vini Zabu' KTM 136
37Rohan Dennis (Aus) Ineos Grenadiers 132
38Rodrigo Contreras Pinzon (Col) Astana Pro Team 132
39Peter Sagan (Svk) Bora-Hansgrohe 123
40Josip Rumac (Cro) Androni Giocattoli-Sidermec 118
41Lawrence Warbasse (USA) AG2R la Mondiale 112
42Kilian Frankiny (Swi) Groupama-FDJ 111
43Eduardo Sepulveda (Arg) Movistar Team 103
44Simon Clarke (Aus) EF Pro Cycling 103
45Josef Cerny (Cze) CCC Team 82
46Mark Padun (Ukr) Bahrain McLaren 75
47Kamil Gradek (Pol) CCC Team 75
48Daniel Navarro Garcia (Spa) Israel Start-Up Nation 68
49Tao Geoghegan Hart (GBr) Ineos Grenadiers 62
50Jai Hindley (Aus) Team Sunweb 62
51Stéphane Rossetto (Fra) Cofidis 48
52Andrea Vendrame (Ita) AG2R la Mondiale 32
53Luca Chirico (Ita) Androni Giocattoli-Sidermec 32
54Davide Ballerini (Ita) Deceuninck-Quickstep 29
55Fabio Felline (Ita) Astana Pro Team 28
56Ilnur Zakarin (Rus) CCC Team 24
57Amanuel Gebreigzabhier (Eri) NTT Pro Cycling 24
58Einer Augusto Rubio Reyes (Col) Movistar Team 23
59Hermann Pernsteiner (Aut) Bahrain McLaren 20
60François Bidard (Fra) AG2R la Mondiale 14
61Jesper Hansen (Den) Cofidis 14
62Sergio Samitier Samitier (Spa) Movistar Team 10
63Marco Mathis (Ger) Cofidis 10
64Wilco Kelderman (Ned) Team Sunweb 8
65Tanel Kangert (Est) EF Pro Cycling 8
66Pieter Serry (Bel) Deceuninck-Quickstep 7

Fair Play classification
Pos.Rider Name (Country) TeamResult
1Groupama-FDJ
2Androni Giocattoli-Sidermec
3Team Sunweb
4AG2R la Mondiale
5CCC Team
6Bora-Hansgrohe
7Deceuninck-Quick-Step
8Vini Zabu' KTM
9UAE Team Emirates
10NTT Pro Cycling
11Cofidis
12Bardiani CSF Faizane
13Lotto Soudal
14Israel Start-Up Nation
15Trek-Segafredo
16Astana Pro Team
17Bahrain McClaren
18Movistar Team
19Ineos Grenadiers
20EF Pro Cycling

Teams classification
Pos.Rider Name (Country) TeamResult
1Ineos Grenadiers 257:15:58
2Deceuninck-Quick-Step 0:22:32
3Team Sunweb 0:28:50
4Bahrain McClaren 0:32:50
5Bora-Hansgrohe 1:12:34
6NTT Pro Cycling 1:49:59
7AG2R la Mondiale 2:04:38
8Movistar Team 2:08:26
9Astana Pro Team 2:29:44
10Trek-Segafredo 2:42:36
11CCC Team 2:54:57
12UAE Team Emirates 3:41:32
13Lotto Soudal 4:24:08
14EF Pro Cycling 5:25:05
15Cofidis 7:49:22
16Androni Giocattoli-Sidermec 7:55:00
17Bardiani CSF Faizane 9:47:03
18Vini Zabu' KTM 9:50:28
19Israel Start-Up Nation 11:51:32
20Groupama-FDJ 13:34:51

Latest on Cyclingnews