Richard Carapaz came through the final stage unscathed to win the Giro d'Italia general classification as Chad Haga claimed Sunday's 21st stage.

Movistar rider Carapaz had led since winning stage 14 - his second victory of the race - and all but sealed the pink jersey on Saturday when he retained a healthy advantage over Vincenzo Nibali.

The Ecuadorian needed only to finish within one minute and 54 seconds of Nibali in the time trial, a task he took to with ease.

There was no drama to speak to at the front of the race as Carapaz came home in 23 minutes and 19 seconds, with Nibali having finished in 22:30.

Carapaz finished fourth last year in just his second Grand Tour finish, with this his first such title triumph.

For the stage victory, Haga's benchmark of 22:07 could not be matched, but he was joined on the podium by Victor Campenaerts and Thomas de Gendt.

Giulio Ciccone was a long way out of the picture on Sunday but was officially crowned the King of the Mountains in the blue jersey.

Bora-Hansgrohe's Pascal Ackermann came out on top in the points classification.

 

LITTLE GC MOVEMENT

Primoz Roglic did enough to steal third place overall in the only real GC action, finishing 10th in the stage to move eight seconds ahead of Mikel Landa.

Miguel Angel Lopez was nudged down to seventh as Rafal Majka moved up a place, but the rest of the top 10 finished unchanged.

 

STAGE RESULT

1. Chad Haga (Team Sunweb) 22:07
2. Victor Campenaerts (Lotto Soudal) +0:04
3. Thomas de Gendt (Lotto Soudal) +0:06
4. Damiano Caruso (Bahrain-Merida) +0:09
5. Tobias Ludvigsson (Groupama-FDJ) +0:11

CLASSIFICATION STANDINGS   

General Classification  

1. Richard Carapaz (Movistar) 90:01:47
2. Vincenzo Nibali (Bahrain-Merida) +1:05
3. Primoz Roglic (Jumbo-Visma) +2:30

Points Classification   

1. Pascal Ackermann (Bora-Hansgrohe) 226
2. Arnaud Demare (Groupama) 213
3. Damiano Cima (Nippo-Vini Fantini) 104

King of the Mountains    

1. Giulio Ciccone (Trek-Segafredo) 267
2. Fausto Masnada (Androni Giocattoli–Sidermec) 115
3. Damiano Caruso (Bahrain-Merida) 86