Richard Carapaz wins the 2019 Giro d'Italia

Richard Carapaz (Movistar) completed a flawless execution of the 2019 Giro d'Italia, speeding home to hold onto the overall victory in the 17km time trial in Verona. It was a historic ride by Carapaz who made history as the first Ecuadorian Grand Tour champion.

Vincenzo Nibali (Bahrain-Merida) put in a spirited effort to hold onto second place at 1:05, while Primoz Roglic (Jumbo-Visma) bumped Mikel Landa (Movistar) off the final podium by eight seconds for third overall, 2:30 behind Carapaz.

The emotional final stage victory went to American Chad Haga (Team Sunweb), who overhauled Victor Campenaerts' (Lotto Soudal) pace-setting effort to sit in the hot seat for the bulk of the day. His time of 22:07 was four seconds faster than the Belgian, and six up on Thomas De Gendt (Lotto Soudal), who took third on the day. It's by far the biggest win of Haga's career and saves a Giro for his team, who finished with just four riders.

After two and a half hours in the hot seat, Haga beamed as Roglic failed to threaten his time, heaving a huge sigh of relief before the tears of realization of his victory began to flow.

"I thought of my dad and my wife, I thought that Roglic must be tired," said Haga after the finish. "I had to believe that Roglic was tired. I don't even know… The way my legs felt yesterday I fully believed I could win today, I just had to do it, and I was right.

"[After Dumoulin's abandon] we showed that we came here in good shape ready to fight for him. I was sad to see him go, and I would much rather have been here celebrating another victory with him. But to make a victory here today, I don't even know.

"Following the last time trial, I knew that I'm time trialling very well and this one suits me better than the last. Thanks to the team for allowing me to not to much the last two weeks and focus on today. I had the exact preparation I want, the team treated me like I was Tom Dumoulin today, with 100 per cent focus, and I paced exactly the way I wanted to."

Carapaz's pink jersey was confirmed in Verona, and so too were the other prizes of the Giro. Giulio Ciccone (Trek-Segafredo) wins the blue jersey of the mountain classification, Miguel Angel Lopez (Astana Pro Team) took the white young riders jersey, while Pascal Ackermann (Bora-Hansgrohe) became the first German to win the points classification.

The minor classifications saw Fausto Masnada (Androni Giocattoli-Sidermec) win the intermediate sprint competition as well as the combativity prize. Damiano Cima (Nippo-Vini Fantini-Faizane) took the breakaway competition after 932km in the break, while Movistar predictably won the team classification.

How it unfolded

The final stage of the 2019 Giro d'Italia, took in a 17 kilometre route around Verona, a host for the race finish for the first time since 2010 when Gustav Erik Larsson won the stage. Knut Knudsen and, more famously, Moreno Moser, won the stage 22 time trials in the city back in 1981 and 1984.

With the destination of the maglia rosa already decided, barring disaster for Carapaz, Sunday's stage would see a battle for the final victory of the Giro, as well as a fight between Roglic and Landa for third overall. The main obstacle of the day came in the form of the 4.5km, 4.6 per cent average Torricelle climb. After a speedy but technical descent back into the city, the finish came outside the ancient amphitheatre, the Arena di Verona.

Tom Bohli (UAE Team Emirates), was unsurprisingly the fastest man of the early runners, overtaking his one- and two-minute men to set a time of 22:41. Three minutes later, Sho Hatsuyama (Nippo-Vini Fantini-Faizane) crossed the line and was given a specially-made maglia nera in the arena, as the last man in the general classification.

Josef Cerny (CCC Team) was the first man to beat Bohli's time, 23 seconds better than the Swiss. Meanwhile, out on course stage favourite Campenaerts blitzed the checkpoint, 31 seconds up on Bohli and 6 up on Cerny. The Hour Record holder duly went fastest at the finish, with a time of 22:11, but surprisingly he wouldn't last long in the hot seat.

As one-quarter of Team Sunweb's remaining squad, Haga has taken it relatively easy since the San Marino time trial, finishing in the top 100 on a stage on just one occasion. That 'rest' paid off in Verona as he overhauled Campenaerts, going four seconds faster at the finish to take his place at the top of the standings.

A number of strong time trialists came and went, not getting close to Haga's time. Tobias Ludvigsson (Groupama-FDJ) came closest, with his time of 22:18 a full 11 seconds off the American. Thomas De Gendt (Lotto Soudal) put in a strong effort too, taking third, just two seconds behind teammate and friendly rival Campenaerts.

Bob Jungels (Deceuninck-Quick Step) completed a disappointing campaign for him personally, with his time of 22:51 just about in the provisional top ten. Great rides from Italians Mattia Cattaneo (Androni Giocattoli-Sidermec) and Damiano Caruso (Bahrain-Merida) saw them put in times of 22:27 and 22:16 respectively, placing them comfortably in the top ten.

The big hitters of the top 20 were up next, with the stage win, the fight for minor placings and that last podium spot still to be decided. Riders came and went, but few troubled the top ten. At the checkpoint atop the climb, Roglic had 20 seconds on his podium rival Landa but was nine seconds down on Haga's time.

Shortly afterwards, it became clear that Landa would lose third, as the gap went out on the descent. It was a close-run thing heading into the final kilometre, but Roglic prevailed, taking the final podium spot by just eight seconds.

Further back, Nibali's and Carapaz's places were under no threat, though Nibali still put in a strong effort to take ninth at the finish. He gained 51 seconds on Carapaz, who burst into tears of emotion on the stage shortly after completing his effort.

Full Results

Swipe to scroll horizontally
#Rider Name (Country) TeamResult
1Chad Haga (USA) Team Sunweb0:22:07
2Victor Campenaerts (Bel) Lotto Soudal0:00:04
3Thomas De Gendt (Bel) Lotto Soudal0:00:06
4Damiano Caruso (Ita) Bahrain-Merida0:00:09
5Tobias Ludvigsson (Swe) Groupama-FDJ0:00:11
6Josef Cerny (Cze) CCC TeamRow 5 - Cell 2
7Pello Bilbao (Spa) Astana Pro Team0:00:17
8Mattia Cattaneo (Ita) Androni Giocattoli-Sidermec0:00:20
9Vincenzo Nibali (Ita) Bahrain-Merida0:00:23
10Primoz Roglic (Slo) Team Jumbo-Visma0:00:26
11Luke Durbridge (Aus) Mitchelton-Scott0:00:27
12Tom Bohli (Swi) UAE Team Emirates0:00:34
13Ilnur Zakarin (Rus) Katusha-Alpecin0:00:36
14Jan Polanc (Slo) UAE Team Emirates0:00:37
15Rafal Majka (Pol) Bora-Hansgrohe0:00:40
16Jos van Emden (Ned) Team Jumbo-Visma0:00:42
17Bob Jungels (Lux) Deceuninck-QuickStep0:00:44
18Jack Bauer (NZl) Mitchelton-Scott0:00:48
19Andrey Amador (CRc) Movistar Team0:00:53
20Pavel Sivakov (Rus) Team Ineos0:00:57
21Mikel Landa (Spa) Movistar TeamRow 20 - Cell 2
22Davide Formolo (Ita) Bora-Hansgrohe0:00:58
23Dario Cataldo (Ita) Astana Pro Team0:01:00
24Simon Yates (GBr) Mitchelton-ScottRow 23 - Cell 2
25Koen Bouwman (Ned) Team Jumbo-Visma0:01:03
26Bauke Mollema (Ned) Trek-Segafredo0:01:04
27Jasha Sütterlin (Ger) Movistar TeamRow 26 - Cell 2
28Diego Ulissi (Ita) UAE Team Emirates0:01:06
29Victor De La Parte (Spa) CCC Team0:01:07
30Jay Mc Carthy (Aus) Bora-Hansgrohe0:01:09
31Kamil Gradek (Pol) CCC TeamRow 30 - Cell 2
32Luis Mas Bonet (Spa) Movistar TeamRow 31 - Cell 2
33Arnaud Demare (Fra) Groupama-FDJ0:01:10
34Amaro Antunes (Por) CCC TeamRow 33 - Cell 2
35Lucas Hamilton (Aus) Mitchelton-ScottRow 34 - Cell 2
36Richard Carapaz (Ecu) Movistar Team0:01:12
37Joe Dombrowski (USA) EF Education FirstRow 36 - Cell 2
38Michael Gogl (Aut) Trek-Segafredo0:01:17
39Jai Hindley (Aus) Team Sunweb0:01:18
40Scott Davies (GBr) Dimension DataRow 39 - Cell 2
41Miles Scotson (Aus) Groupama-FDJ0:01:19
42Krists Neilands (Lat) Israel Cycling AcademyRow 41 - Cell 2
43Miguel Angel Lopez (Col) Astana Pro Team0:01:20
44Ben O'Connor (Aus) Dimension Data0:01:22
45Tanel Kangert (Est) EF Education First0:01:23
46Francisco Ventoso (Spa) CCC Team0:01:26
47Ion Izagirre Insausti (Spa) Astana Pro Team0:01:27
48Mikkel Frølich Honoré (Den) Deceuninck-QuickStep0:01:28
49Alexis Vuillermoz (Fra) AG2R La Mondiale0:01:29
50Domenico Pozzovivo (Ita) Bahrain-Merida0:01:30
50Andrey Zeits (Kaz) Astana Pro TeamRow 50 - Cell 2
52Mikel Nieve (Spa) Mitchelton-Scott0:01:36
53Amanuel Ghebreigzabhier (Eri) Dimension Data0:01:37
54Ruben Plaza (Spa) Israel Cycling Academy0:01:38
55Fabio Sabatini (Ita) Deceuninck-QuickStepRow 54 - Cell 2
56Christopher Juul Jensen (Den) Mitchelton-Scott0:01:39
57Sean Bennett (USA) EF Education FirstRow 56 - Cell 2
58Manuele Boaro (Ita) Astana Pro Team0:01:40
59Dmitrii Strakhov (Rus) Katusha-AlpecinRow 58 - Cell 2
60Jan Bakelants (Bel) Team Sunweb0:01:42
61Andrea Vendrame (Ita) Androni Giocattoli-SidermecRow 60 - Cell 2
62Christopher Hamilton (Aus) Team Sunweb0:01:43
63Fausto Masnada (Ita) Androni Giocattoli-Sidermec0:01:46
64Marco Marcato (Ita) UAE Team Emirates0:01:48
65Michael Schwarzmann (Ger) Bora-HansgroheRow 64 - Cell 2
66Nicola Conci (Ita) Trek-Segafredo0:01:49
67Pieter Serry (Bel) Deceuninck-QuickStep0:01:50
68Hugh John Carthy (GBr) EF Education First0:01:51
69Lukasz Owsian (Pol) CCC Team0:01:53
70Reto Hollenstein (Swi) Katusha-AlpecinRow 69 - Cell 2
71Giovanni Carboni (Ita) Bardiani CSF0:01:55
72Valentin Madouas (Fra) Groupama-FDJ0:01:58
73Will Clarke (Aus) Trek-Segafredo0:02:01
74Larry Warbasse (USA) AG2R La MondialeRow 73 - Cell 2
75Pawel Poljanski (Pol) Bora-Hansgrohe0:02:07
76Eros Capecchi (Ita) Deceuninck-QuickStepRow 75 - Cell 2
77Matteo Montaguti (Ita) Androni Giocattoli-Sidermec0:02:09
78Ben Gastauer (Lux) AG2R La MondialeRow 77 - Cell 2
79Giulio Ciccone (Ita) Trek-Segafredo0:02:11
80Gianluca Brambilla (Ita) Trek-SegafredoRow 79 - Cell 2
81Marco Canola (Ita) Nippo-Vini Fantini-FaizaneRow 80 - Cell 2
82Markel Irizar (Spa) Trek-Segafredo0:02:13
83Enrico Gasparotto (Ita) Dimension Data0:02:15
84Rüdiger Selig (Ger) Bora-HansgroheRow 83 - Cell 2
85Nans Peters (Fra) AG2R La Mondiale0:02:19
86Ryan Gibbons (RSA) Dimension DataRow 85 - Cell 2
87Davide Cimolai (Ita) Israel Cycling Academy0:02:21
88Hubert Dupont (Fra) AG2R La MondialeRow 87 - Cell 2
89Sebastian Henao (Col) Team Ineos0:02:22
90Marco Haller (Aut) Katusha-Alpecin0:02:23
91François Bidard (Fra) AG2R La MondialeRow 90 - Cell 2
92Jonathan Caicedo (Ecu) EF Education First0:02:25
93Nico Denz (Ger) AG2R La Mondiale0:02:27
94Mirco Maestri (Ita) Bardiani CSF0:02:29
95Danilo Wyss (Swi) Dimension DataRow 94 - Cell 2
96Esteban Chaves (Col) Mitchelton-Scott0:02:31
97Davide Villella (Ita) Astana Pro Team0:02:32
98Jan Hirt (Cze) Astana Pro TeamRow 97 - Cell 2
99José Rojas (Spa) Movistar Team0:02:33
100Ramon Sinkeldam (Ned) Groupama-FDJRow 99 - Cell 2
101Salvatore Puccio (Ita) Team Ineos0:02:34
102Simone Consonni (Ita) UAE Team EmiratesRow 101 - Cell 2
103Jenthe Biermans (Bel) Katusha-Alpecin0:02:35
104Christian Knees (Ger) Team IneosRow 103 - Cell 2
105Ivan Santaromita (Ita) Nippo-Vini Fantini-Faizane0:02:36
106Marco Frapporti (Ita) Androni Giocattoli-Sidermec0:02:37
107Valerio Agnoli (Ita) Bahrain-Merida0:02:39
108Jonnathan Narvaez (Ecu) Team Ineos0:02:41
109Cesare Benedetti (Ita) Bora-Hansgrohe0:02:42
110Grega Bole (Slo) Bahrain-MeridaRow 109 - Cell 2
111Enrico Battaglin (Ita) Katusha-Alpecin0:02:43
112Hector Carretero (Spa) Movistar TeamRow 111 - Cell 2
113Tosh Van Der Sande (Bel) Lotto Soudal0:02:50
114Paolo Simion (Ita) Bardiani CSFRow 113 - Cell 2
115Antwan Tolhoek (Ned) Team Jumbo-Visma0:02:54
116Jacopo Guarnieri (Ita) Groupama-FDJ0:02:57
117Luca Covili (Ita) Bardiani CSF0:02:59
118Pascal Ackermann (Ger) Bora-HansgroheRow 117 - Cell 2
119Sepp Kuss (USA) Team Jumbo-Visma0:03:00
120Adam Hansen (Aus) Lotto Soudal0:03:01
120Andrea Garosio (Ita) Bahrain-MeridaRow 120 - Cell 2
122Kristian Sbaragli (Ita) Israel Cycling Academy0:03:03
123Olivier Le Gac (Fra) Groupama-FDJ0:03:05
124Conor Dunne (Irl) Israel Cycling Academy0:03:07
125Damiano Cima (Ita) Nippo-Vini Fantini-Faizane0:03:08
126Lorenzo Rota (Ita) Bardiani CSF0:03:12
127Nathan Brown (USA) EF Education First0:03:17
128Antonio Nibali (Ita) Bahrain-MeridaRow 127 - Cell 2
129Antonio Pedrero (Spa) Movistar Team0:03:18
130Manuel Belletti (Ita) Androni Giocattoli-Sidermec0:03:21
131Francesco Gavazzi (Ita) Androni Giocattoli-Sidermec0:03:23
132Paul Martens (Ger) Team Jumbo-Visma0:03:25
133Awet Andemeskel (Eri) Israel Cycling Academy0:03:27
134Guillaume Boivin (Can) Israel Cycling Academy0:03:31
135Manuel Senni (Ita) Bardiani CSF0:03:33
136Guy Niv (Isr) Israel Cycling AcademyRow 135 - Cell 2
137Miguel Eduardo Florez Lopez (Col) Androni Giocattoli-Sidermec0:03:34
138Thomas Leezer (Ned) Team Jumbo-Visma0:03:36
139Sho Hatsuyama (Jpn) Nippo-Vini Fantini-Faizane0:03:37
140Juan Jose Lobato Del Valle (Spa) Nippo-Vini Fantini-Faizane0:03:54
141Ivan Sosa (Col) Team Ineos0:04:04
142Edward Dunbar (Irl) Team Ineos0:04:20
Swipe to scroll horizontally
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Chad Haga (USA) Team Sunweb15pts
2Victor Campenaerts (Bel) Lotto Soudal12Row 1 - Cell 3
3Thomas De Gendt (Bel) Lotto Soudal9Row 2 - Cell 3
4Damiano Caruso (Ita) Bahrain-Merida7Row 3 - Cell 3
5Tobias Ludvigsson (Swe) Groupama-FDJ6Row 4 - Cell 3
6Josef Cerny (Cze) CCC Team5Row 5 - Cell 3
7Pello Bilbao (Spa) Astana Pro Team4Row 6 - Cell 3
8Mattia Cattaneo (Ita) Androni Giocattoli-Sidermec3Row 7 - Cell 3
9Vincenzo Nibali (Ita) Bahrain-Merida2Row 8 - Cell 3
10Primoz Roglic (Slo) Team Jumbo-Visma1Row 9 - Cell 3
Swipe to scroll horizontally
Mountain 1
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Victor Campenaerts (Bel) Lotto Soudal3pts
2Damiano Caruso (Ita) Bahrain-Merida2Row 1 - Cell 3
3Chad Haga (USA) Team Sunweb1Row 2 - Cell 3
Swipe to scroll horizontally
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Chad Haga (USA) Team Sunweb6pts
2Victor Campenaerts (Bel) Lotto Soudal6Row 1 - Cell 3
3Thomas De Gendt (Bel) Lotto Soudal4Row 2 - Cell 3
4Damiano Caruso (Ita) Bahrain-Merida3Row 3 - Cell 3
5Tobias Ludvigsson (Swe) Groupama-FDJ2Row 4 - Cell 3
6Josef Cerny (Cze) CCC Team1Row 5 - Cell 3
Swipe to scroll horizontally
#Rider Name (Country) TeamResult
2Team Jumbo-Visma0:00:09
4UAE Team Emirates0:00:15
5CCC Team0:00:25
6Astana Pro Team0:00:35
9Movistar Team0:00:52
10Team Sunweb0:00:58
11Lotto SoudalRow 10 - Cell 2
12Androni Giocattoli-Sidermec0:01:46
16EF Education First0:02:12
17Dimension Data0:02:15
18Israel Cycling Academy0:03:16
19AG2R La Mondiale0:03:37
20Team Ineos0:03:51
21Bardiani CSF0:05:12
22Nippo-Vini Fantini-Faizane0:05:53
Swipe to scroll horizontally
Final general classification
#Rider Name (Country) TeamResult
1Richard Carapaz (Ecu) Movistar Team90:01:47
2Vincenzo Nibali (Ita) Bahrain-Merida0:01:05
3Primoz Roglic (Slo) Team Jumbo-Visma0:02:30
4Mikel Landa (Spa) Movistar Team0:02:38
5Bauke Mollema (Ned) Trek-Segafredo0:05:43
6Rafal Majka (Pol) Bora-Hansgrohe0:06:56
7Miguel Angel Lopez (Col) Astana Pro Team0:07:26
8Simon Yates (GBr) Mitchelton-Scott0:07:49
9Pavel Sivakov (Rus) Team Ineos0:08:56
10Ilnur Zakarin (Rus) Katusha-Alpecin0:12:14
11Hugh John Carthy (GBr) EF Education First0:16:36
12Joe Dombrowski (USA) EF Education First0:20:12
13Valentin Madouas (Fra) Groupama-FDJ0:21:59
14Jan Polanc (Slo) UAE Team Emirates0:22:38
15Davide Formolo (Ita) Bora-HansgroheRow 14 - Cell 2
16Giulio Ciccone (Ita) Trek-Segafredo0:27:19
17Mikel Nieve (Spa) Mitchelton-Scott0:27:46
18Tanel Kangert (Est) EF Education First0:30:11
19Domenico Pozzovivo (Ita) Bahrain-Merida0:33:40
20Fausto Masnada (Ita) Androni Giocattoli-Sidermec0:34:52
21Victor De La Parte (Spa) CCC Team0:39:51
22Edward Dunbar (Irl) Team Ineos0:42:26
23Damiano Caruso (Ita) Bahrain-Merida0:49:06
24Sebastian Henao (Col) Team Ineos0:58:45