Italy's Filippo Ganna won the stage 10 time-trial at the Giro d'Italia on Tuesday, as overnight leader Afonso Eulalio clung on to the pink jersey.
Eulalio now leads race favourite Jonas Vingegaard by just 27 seconds, a lead that stood at around five minutes when he won last week's rain-lashed stage five.
Eulalio had led by over two minutes and looked set to lose the pink Tuesday before rallying in the latter half of the long time trial.
🔻 Clear skies, a flight time of about 45', and an arrival ahead of schedule. Filippo Ganna was on a mission today
— Giro d'Italia (@giroditalia) May 19, 2026
🔻Cielo sereno, un tempo di volo di circa 45' e un arrivo in anticipo rispetto al previsto. Filippo Ganna oggi era in missione.
⏪ The @continentaltire Ultimo… pic.twitter.com/Fel7ValojF
🩷 Unbelievable. Afonso Eulalio keeps the Maglia Rosa, against the odds.
— Giro d'Italia (@giroditalia) May 19, 2026
📺 Follow the #Giroditalia on TV, and on socials, wherever you are 🌐 pic.twitter.com/AXPown3XHC
"I suffered, suffered and suffered," said Bahrain Victorious climber Eulalio. "But here I am still in the lead."
Ineos rider Thymen Arensman had a great day and climbed to third at 1min 57sec while Felix Gall dropped to fourth at 2min 24sec. Australian Ben O'Connor climbed to fifth at 2min 48sec.
The potentially decisive stage was held on a flat 42km coastal run between Viareggio and Massa on the Tuscan coast.
This was an eighth Giro stage win for Ganna, seven in the time-trial, and the 1min 52sec winning margin speaks for itself.
"This was built for me," said the former track specialist who like Tuesday's runner-up Arensman rides for Ineos. "This is the result of the work the team did this winter."
A picture-postcard run, the same route which often features on the Giro warm-up race the Tirreno-Adriatico, included two long, straight stretches meaning power rather than technique was the order of the day.
While Ganna's win was expected, so was the shake up in the overall standings with Jai Hindley and Gall losing time.
Wednesday's stage 11 is a hilly affair with Eulalio tipped to keep the overall lead as far as the weekend mountain stages.
STAGE 10 RESULTS
1. Filippo Ganna (ITA) Netcompany INEOS 45:53
2. Thymen Arensman (NED) Netcompany INEOS +1:54
3. Rémi Cavagna (FRA) Groupama - FDJ United +1:59
4. Sjoerd Bax (NED) Pinarello - Q36.5 Pro +2:04
Cycling Team
5. Derek Gee-West (CAN) Lidl - Trek +2:16
6. Max Walscheid (GER) Lidl - Trek +2:17
7. Johan Price-Pejtersen (DEN) Alpecin - Premier Tech +2:29
8. Mikkel Bjerg (DEN) UAE Team Emirates - XRG +2:33
9. Lorenzo Milesi (ITA) Movistar Team +2:40
10. Niklas Larsen (DEN) Unibet Rose Rockets +2:42
11. Ben O'Connor (AUS) Team Jayco AlUla "
12. David De La Cruz (ESP) Pinarello - Q36.5 Pro +2:52
Cycling Team
13. Jonas Vingegaard (DEN) Team Visma - Lease a Bike +3:00
14. Will Barta (USA) Tudor Pro Cycling Team +3:02
15. Michael Storer (AUS) Tudor Pro Cycling Team +3:05
16. Alec Segaert (BEL) Bahrain Victorious "
17. Markel Beloki (ESP) EF Education - EasyPost +3:11
18. Giulio Pellizzari (ITA) Red Bull - BORA - +3:18
hansgrohe
19. Andreas Leknessund (NOR) Uno-X Mobility +3:24
20. Nickolas Zukowsky (CAN) Pinarello - Q36.5 Pro +3:29
Cycling Team
GENERAL CLASSIFICATION
1. Afonso Eulálio (POR) Bahrain Victorious 39:40:34
2. Jonas Vingegaard (DEN) Team Visma - Lease a Bike +27
3. Thymen Arensman (NED) Netcompany INEOS +1:57
4. Felix Gall (AUT) Decathlon CMA CGM Team +2:24
5. Ben O'Connor (AUS) Team Jayco AlUla +2:48
6. Jai Hindley (AUS) Red Bull - BORA - +3:06
hansgrohe
7. Michael Storer (AUS) Tudor Pro Cycling Team +3:28
8. Derek Gee-West (CAN) Lidl - Trek +3:34
9. Giulio Pellizzari (ITA) Red Bull - BORA - +3:36
hansgrohe
10. Markel Beloki (ESP) EF Education - EasyPost +4:16
