The Quick-Step Floors rider finished the 229km route, which was the longest of the race, in 5:18:55. Wilier Triestina’s Jakub Mareczko and Bora-Hansgrohe’s Sam Bennett rounded out the podium.
There is no change to the overall situation with Team Sunweb’s Tom Dumoulin still at the top in 52:41:08, followed by Movistar’s Nairo Quintana 2’23” later with Trek-Segafredo’s Bauke Mollema 2’38” behind.
The stage winner profited from a strong lead-out from Max Richeze in the final few hundred metres and comfortably held off Mareczko.
Gaviria responded to thoughts about him being the best sprinter at the Giro by saying that he was not sure about him being at the top of the sprinter list.
“The best sprinter in this giro is Andre Gripel,” said Gaviria.
“He’s won more stages in his career than me and won more stages of the Giro. I’ve got maybe better form than him but he’s the better sprinter.”
Gaviria is the first rider to win three stages on his Grand Tour debut since Uwe Raab at the 1990 Vuelta.
Top ten results
|1.||Fernando Gaviria (Quick-Step Floors)||5:18:55|
|2.||Jakub Mareczko (Wilier Triestina)||"|
|3.||Sam Bennett (Bora-Hansgrohe)||"|
|4.||Phil Bauhaus (Team Sunweb)||"|
|5.||Maximiliano Richeze (Quick-Step Floors)||"|
|6.||Ryan Gibbons (Dimension Data)||"|
|7.||Sacha Modolo (UAE Team Emirates)||"|
|8.||André Greipel (Lotto Soudal)||"|
|9.||Jasper Stuyven (Trek-Segafredo)||"|
|10.||Roberto Ferrari (UAE Team Emirates)||"|
|1.||Tom Dumoulin - Team Sunweb||52:41:08|
|2.||Nairo Quintana - Movistar Team||+2'23"|
|3.||Bauke Mollema - Trek-Segafredo||+2'38"|
|4.||Thibaut Pinot - FDJ||+2'40"|
|5.||Vincenzo Nibali - Bahrain-Merida||+2'47"|
|6.||Andrey Amador - Movistar Team||+3'05"|
|7.||Bob Jungels - Quick-Step Floors||+3'56"|
|8.||Domenico Pozzovivo (AG2R La Mondiale)||+3'59"|
|9.||Tanel Kangert (Astana Pro Team)||"|
|10.||Ilnur Zakarin - Katusha-Alpecin||+4'17"|
Full Stage 12 results