As it happened: GC stars put on a show as gap to pink shrinks again after stage 9 of Giro d'Italia 2026
The riders head to the ski resort of Corno alle Scale for the Giro's second summit finish
Giro d'Italia 2026 - Contenders
How to watch the 2026 Giro d'Italia
Results
Giro d'Italia: Jonas Vingegaard sends signal to rivals with solo stage 9 victory atop Corno alle Scale
Have your say
Good morning and welcome to Cyclingnews' live coverage of stage 9 of the Giro d'Italia!
We'll be here all day with all the updates and actions from what is set to be an exciting day of racing, the last one before the first (proper) rest day.
Here's what is on the cards today:
The Corno alle Scale is 10.8km long, but with the Quesciola climb coming right before, there's actually a good 21km of climbing to finish the stage.
Want a deeper preview look at the stage? We've got you: Giro d'Italia stage 9 preview - Will high drama atop Corno alle Scale see the pink jersey change hands?
Once you've read the preview and looked at the profile, don't forget to vote above on who you think is going to win the stage!
Even better, let us know in the comments how you think the stage is going to play out.
It is very likely that we will see a breakaway succeed today for one simple reason. Jonas Vingegaard will not want to ride the ITT on Tuesday in the blue KOM skinsuit. He leads the classification by one point over Diego Pablo Sevilla (Polti-Visit Malta) thanks to his win on Blockhaus.
There are a maximum of 59 points available today but they all come right at the very end of the day. Everyone in the top 11 of the KOM classification can take the jersey but most are top GC riders. It will be a difficult race to balance for Visma-Lease a Bike.
The riders are due to start racing after the neutral zone at 12:50 local time.
The riders will start the neutralised section in about 5 minutes.
We are expecting a chaotic start with multiple riders battling to get into the break of the day. Visma-Lease a Bike will have to be on high alert so riders like Enric Mas (Movistar), Lennert Van Eetvelt (Lotto-Intermarche), Markel Beloki (EF Education-EasyPost), Egan Bernal (Netcompany-Ineos) and others don't get in the break of the day. And, if they do, manage the gap sufficiently to let them go all the way but to also not gain massively on their Danish leader as well as dropping pink jersey Afonso Eulálio (Bahrain Victorious) along the way,
The riders have started the neutral zone and are roughly 10 minutes away from racing.
Jerseys and other Giro competitions after stage 8:
Pink - Afonso Eulálio (Bahrain Victorious)
Purple - Paul Magnier (Soudal-QuickStep)
Blue - Jonas Vingegaard (Visma-Lease a Bike)
White - Afonso Eulálio (Bahrain Victorious)*
Int sprint - Manuele Tarozzi (Bardiani CSF-7 Sabre)
Fuga - Diego Pablo Sevilla (Polti-Visit Malta)
Red Bull KM - Manuele Tarozzi (Bardiani CSF-7 Sabre)
Team - Red Bull-Bora-Hansgrohe
It is a beautiful roll out for the riders in a very sunny Emilia Romagna. However, the forecast for the final climb says we may have temperatures at around 4 degrees Celsius!
184km to go
Racing begins with Uno-X Mobility sending two riders up the road immediately on the national day of Norway! Bardiani CSF-7 Sabre also kick clear in their home region as well.
Max Walscheid is leading out his Lidl-Trek teammate Giulio Ciccone in an attack. Also, Lennert Van Eetvelt (Lotto-Intermarche) is in that group. Interesting early tactics with Decathlon-CMA CGM getting Oliver Naesen up the road as well.
Forming a breakaway on a major summit finish day in a Grand Tour is really like a game of chess. The riders close back together again as Martin Marcellusi (Bardiani CSF-7 Sabre) hit the front.
Davide Ballerini (XDS-Astana) launches for the second time. They will be very keen to get Christian Scaroni into the days break.
The rider who finished last yesterday, Edward Planckaert (Alpecin-Premier Tech) joins Ballerini alongside Lorenzo Milesi (Movistar). They have 11" gap on the bunch who are looking to have stalled in their pacing for now.
Uno-X Mobility starts chasing but Andrea Raccagni (Soudal-Quickstep) launches to try and force a new break.
The counter moves continue to stall with Milesi, Planckaert, and Ballerini still hodling 14" on the peloton.
Ecuadorian and Colombian champions of Jhonatan Narváez (UAE Team Emirates-XRG) and Egan Bernal (Netcompany-Ineos) sitting at the back as the peloton have really eased on the pace with the leading trio now taking their gap to 24".
Filippo Turconi (Bardiani CSF-7 Sabre) and Ludovico Crescioli (Polti-Visit Malta) try to move but then Jonathan Milan (Lidl-Trek) tries to lead out Giulio Ciccone. That sees points jersey Paul Magnier and teammate Jasper Stuyven (Soudal-QuickStep) coaxed out of the bunch.
Walscheid tries to take Ciccone clear but as the race splits, Visma-Lease a Bike send Tim Rex across with James Shaw (EF Education-EasyPost). And, of course, Red Bull-Bora-Hansgrohe are all over that and the game gets another reset.
Walscheid continues the pressure with Ciccone locked onto his wheel. Behind, Unibet-Rose-Rockets try to go clear as Antonio Morgado (UAE Team Emirates-XRG) starts to get involved for the first time since Bulgaria.
And it is back together with just Ballerini, Milesi and Planckaert still 28" clear as Picnic-PostNL and Bardiani CSF-7 Sabre start the game again.
So many riders have tried to bridge to the trio out front but now the gap goes beyond 40" as the peloton sits up again.
Pinarello-Q36.5, EF Edcuation-EasyPost, Uno-X Mobility and Movistar all keen to be up there as well as Bardiani CSF-7 Sabre and Polti-Visit Malta.
More moves go clear with Unibet-Rose-Rockets, Alpecin-Premier Tech, Uno-X Mobility and Bardiani CSF-7 Sabre going clear with Lidl-Trek trying to chase but as Walscheid swings off to encourage Ciccone to kick across, the move pulls away further.
More riders continue to try and bridge to this new move as Crescioli does make the bridge.
More moves go clear as that counter was caught. Milan joins with Magnier latched onto his wheel again. Milan's purple shadow.
Lidl-Trek miss the move with Ciccone and can't bridge the gap as this new counter move appears to be going clear.
Another new move comes from the peloton, though. Yesterday's runner up, Andreas Leknessund (Uno-X Mobility) goes clear but has a string of riders following.
Planckaert has sat up from the lead group and joins the chasers to make a group of 10 behind the two leaders.
Interesting that Manuele Tarozzi (Bardiani CSF-7 Sabre) has made it into this chase group as he is in the fight with Sevilla for the Fuga prize for most kilometres out front of the race. He also leads the intermediate sprint and Red Bull kilometre competitions. However, that is all brought back with Ballerini and Milesi out front by 33".
A new attack from Morgado. He has a long line of riders following him but a group of 8 gets a good gap. That move doesn't last long, though. Groupama-FDJ United are keen to join in which brings the peloton back to them.
The peloton splitting into multiple groups out front but Morgado and co sit up as it comes together again. Maltese rider Andrea Mifsud (Polti-Visit Malta) goes clear with Larry Warbasse (Tudor) trying to follow. Mifsud gets a gap but is quickly closed again.
Marcellusi goes again with a teammate on his wheel taking a few others with them but, again, the peloton comes back as Milan and his Magnier shadow come out of the bunch again.
150km to go
Milesi and Ballerini have 22" on the peloton who are still being peppered by a plethora of attacks.
Einer Rubio (Movistar) goes clear with a man from Uno-X Mobility and Picnic-PostNL as Alpecin-Premier Tech try to send a rider across. Rubio is the first climber to actually make a gap on the peloton.
A couple more riders break free of the peloton and the bunch looks to have sat up and that appears to be that! The break may be sorted for the day as multiple teams have riders up the road. Lidl-Trek the main team missing the split.
The peloton goes round a huge roundabout and Picnic-PostNL with Gijs Leemreize and Unibet-Rose-Rockets going on an attack with the peloton trying to block the road again.
Break:
Einer Rubio (MOV)
Lorenzo Milesi (MOV)
Mattia Bais (PTM)
Martin Marcellusi (BCF)
Tim Naberman (TPP)
Davide Ballerini (XAT)
Sakarias Koller Løland (UXM)
Jonas Geens (APT)
Leemreize and his Unibet Rose Rockets rider partner have been caught by the now Lidl-Trek led peloton with Walscheid trying to chase for Ciccone.
The open front of the peloton means that there is still space for new attackers as well with Picnic-PostNL unhappy with just having Naberman out front when riders like Rubio have made it in there as well.
Milan attacks and gets away without Magnier with him. That sees Soudal-QuickStep hit the front of the peloton to chase down the big Italian sprinter. This isn't good news for the leaders as they gap drops slightly.
140km to go
Milan sees Soudal-QuickStep chasing and decides to pull the pin on his effort with Decathlon-CMA CGM taking over on the point of the pack. Almost a minute to the eight leaders.
The peloton is back to being one long line again as teams are unhappy about missing the break or not getting the right riders up the road.
Out front, the break are working together well with everyone coming through to take their turns. The gap is just sat under a minute to the peloton, though.
Picnic-PostNL and Bardiani CSF-7 Sabre go again and, this time, it looks like the peloton has fully sat up and this will be the break of the day. These new attackers have about a minute to bridge, though.
The counter attack is from Tarozzi as well as Chris Hamilton. The frustrating thing for Visma-Lease a Bike is that not one of the riders in the break are dangerous in the KOM classification. If the break is to go the distance they would've wanted the blue jersey to be taken from them as well.
If someone in the break took the maximum 59 points in the KOM standings today they would slot into third place one point behind Sevilla and two points behind Vingegaard.
After an hour of racing the average speed is said to be 44.7kph.
The leaders have about a minute on Tarozzi and Hamilton with a further minute back from them to the peloton.
130km to go
The leaders have 1'22" on the chasing duo and 2'20" on the peloton. There is a very long flat part of this stage with a brutal sting in the tail.
The riders out front now have their team cars up with them and are taking the opportunity to take on gels, bars, bidons etc as they settle into the day.
It looks like Tarozzi and Hamilton have given up on the chase as the gap goes beyond two minutes. They can now drift back to the bunch.
And now the race shows it's true colours. Decathlon-CMA CGM hit the front of the peloton with a high tempo being set. Bahrain Victorious sit behind the sole rider from Decathlon-CMA CGM with Visma-Lease a Bike also following behind them.
Tarozzi and Hamilton get caught with the gap to the leaders just under three minutes. This is a stage for the GC riders whether Vingegaard wants it or not. The one bonus for Visma-Lease a Bike is that they will probably take the stage in this scenario and maybe put another big chunk of time into Eulálio as well.
120km to go
The gap is coming down for the break with 2'42" splitting them and the peloton led by Decathlon-CMA CGM.
Jonas Vingegaard doesn't want to be all conquering like Tadej Pogačar was in 2024. He just wants to win the race in an sustainable way with the Tour de France on his calendar as well...
The gap continues to fall. The break now have 2'32" on the bunch.
Red Bull-Bora-Hansgrohe are currently finding it difficult to manage the balance between former Giro winner Hindley and young Italian up-and-comer Pellizzari...
The peloton have really got this breakaway on a tight leash now with just 2'25" splitting the eight out front and the Decathlon-CMA CGM led bunch.
The peloton is in one long line thanks to Rasmus Søjberg Pedersen (Decathlon-CMA CGM) setting a high tempo.
The pace remains high with 90km to go and 2'25" gap between the groups.
The breakaway now only have 2'04" on the peloton with the pace being incredibly high.
Enjoying our live Giro d'Italia race coverage? Subscribe to Cyclingnews for an all-access pass to our unrivalled reporting of WorldTour racing, bike tech and exclusive in-depth features. Plus, access to the Cyclingnews app to follow the action on-the-go! Find out more.
A brief lull in pace as both Eulálio and Gall went for a nature break, but they're back in the bunch now.
The riders are on one of the few lumps of the day before the actual mountains start. Both break and peloton are on the ascent with just 1'45" splitting them.
Pedersen continues his pacing for Felix Gall.
Attack!
Giulio Ciccone (Lidl-Trek)
Diego Ulissi (XDS-Astana)
The two Italians use this little ascent with cyclocross star Toon Aerts (Lotto-Intermarché) joining.
70km to go
Breakaway have a gap on the counter attacking trio of 1'35" with the peloton at 2'17". It is a bold move by Ciccone, Ulissi and Aerts but is it good enough to get across and make the break a winning move?
Ciccone, Ulissi and Aerts are now halfway across the gap as Pedersen and his Decathlon-CMA CGM restart their chase after the little climb.
The chasers now inside 40" from the front with the peloton about 1'10" behind them.
Aerts is currently not coming through with Ciccone and Ulissi in the chase with Ballerini now sitting on in the break out front as he waits for Ulissi to come across.
About 2km to the intermediate sprint in Marzabotto.
Ciccone, Ulissi and Aerts look like they are going to make the catch as they are about 10" down but the peloton are now just 1'20" behind them as the pace ramps up.
Davide Ballerini takes the max points in Marzabotto with 12 points added to his tally.
Ciccone, Ulissi and Aerts make it across just after the intermediate sprint in Marzabotto. The gap back to the peloton now just over a minute.
Intermediate sprint (Marzabotto)
1. Ballerini (XAT) 12pts
2. Geens (APT) 8pts
3. Marcellusi (BCF) 5pts
4. M. Bais (PTM) 3pts
5. Ulissi (XAT) 1pt
The riders are now slowly gaining elevation from here on with the gradients getting more and more as they go on with the first categorised climb of the day, the Querciola, not too far away.
20km to the base of the Querciola climb.
The peloton still have control but the gap has gone out to almost two minutes with Ballerini working hard in the break.
The leaders are pushing hard but their gap sits at 1'52" over the peloton led by Decathlon-CMA CGM.
Decathlon-CMA CGM are still pushing hard in the peloton. However, Ballerini has almost single-handily taken the time gap back up to 2'25".
The race is about to start properly climbing with the break coming to the base of the Querciola with a max of 9 points available at the top with just over 4km from the top to the start of the final climb up to Corno alle Scale.
Uno-X Mobility use a roundabout to momentarily block the peloton but then multiple teams push up to challenge Decathlon-CMA CGM with Netcompany-Ineos and Tudor joining them.
Ballerini is pushing hard as the breakaway is starting to splinter with Geens starting to be distanced.
Ballerini is giving every ounce of energy for Ulissi and swings off as they go onto the Querciola climb with Ulissi leading the way.
Ballerini, Geens, Naberman, Løland, and Marcellusi all dropped from the breakaway.
The peloton is absolutely flying now with the gap plummeting to just under 2 minutes.
Bais starting to lose touch out front as the gap starts to yawn open.
The sprinters starting to head out of the back of the peloton. Dylan Groenewegen surrounded by his Unibet Rose Rockets teammates. They should all easily make the time cut.
Johannes Staune-Mittet takes over the pacing for Gall at the front of the peloton.
Interestingly, Jan Christen (UAE Team Emirates-XRG) has just lost contact in the peloton. The former white jersey wearer maybe feeling the effort from the break yesterday. Maybe he's saving his legs for a breakaway on another day.
Rubio and Ulissi are working very hard as Ciccone forces Aerts and Milesi to come through before then attacking and joining Rubio as he ghosts clear with Ulissi chasing.
Pink jersey Eulálio sat right towards the back for some time but is now right up towards the front. Pellizzari also doing the same.
20km to go
The breakaway have 2'07" gap on the Decathlon-CMA CGM led peloton with just over 3km from the top.
Visma-Lease a Bike take over the pacing in the peloton after Decathlon-CMA CGM worked all day long. This is a statement of intent by Vingegaard but will they really up the pace for the stage win or will they just allow the break slowly go away?
Milesi and Aerts off the back but I think that may be more Milesi trying to get the Belgian cyclocrosser to do more work.
Visma-Lease a Bike weren't setting the pace for the stage win so Decathlon-CMA CGM return to the front to keep the pace high.
There's a real amalgamation of teams at the front of the peloton at the moment with the gap stable to the five riders with them holding 2'12" gap.
If Rubio wins the stage and Vingegaard doesn't take any points at the finish then Rubio will take the KOM jersey by 11 points.
Visma-Lease a Bike, EF Education-EasyPost, Netcompany-Ineos and Tudor lead the peloton over the climb with Vingegaard eases into second wheel as they catch Mattia Bais.
The peloton have taken 20" off the break in this fight for positioning in the descent.
The break lead onto the final climb, the Corno alle Scale with a 1'48" gap.
Into the Red Bull Kilometre now as well.
Ulissi left to chase on his own as Aerts is refusing to work with the veteran Italian as Milesi loses contact.
10km to go
Visma-Lease a Bike and Decathlon-CMA CGM ride side-by-side into this final climb as the break have 1'56" on the bunch.
Eulálio sitting near the back in pink but Pellizzari is right at the very back of the bunch onto the final climb. Not a good sign for the Italian.
Callum Scotson hits the front again for Gall with Gregor Mühlberger sitting in between them. Decathlon-CMA CGM are really pushing the pace.
Eulálio and Pellizzari are still a long way down the group but do look like they're using a mid-climb descent to move up.
Attack
Ciccone launches again with Rubio trying to chase but the Italian kicks clear and is going all in with 7.4km to go. Just over a minute back to the peloton.
Visma-Lease a Bike come back to the front of the peloton as they catch Milesi with a stage win looking potentially on the cards for Vingegaard.
5km to go
Ciccone has 12" on Rubio and just over a minute on the Visma-Lease a Bike led peloton as the gradient gets harder and harder from here on in.
Bart Lemmen leading the way for Visma-Lease a Bike with the gap up to Ciccone down to 1'03".
Just 4km to go for Ciccone doesn't sound like much but he has the steepest gradients of 15% to come with the peloton now inside a minute to the Italian with Rubio in the gap.
Pellizzari looks to be in trouble. He has a teammate with him but he is right at the back of the peloton with the rest of his team around Hindley out front.
Campenaerts now ups the tempo in the peloton and Pellizzari is starting to lose touch with Aleotti trying to keep him in touch.
Enric Mas (Movistar) having yet another shocker as he flies out of the back of the bunch with Pellizzari now losing touch with the bunch.
Inside 3km to go and the peloton are now 43" down on Ciccone as Mühlberger comes to the front to distance Pellizzari for Gall. The young Italian losing over 20" already.
Attack
Felix Gall (Decathlon-CMA CGM)
Jonas Vingegaard (Visma-Lease a Bike)
They fly by Rubio and drop everyone else in search of Ciccone with the leader having 2km left to ride.
Thymen Arensman (Netcompany-Ineos) has starting bridging across to Gall and Vingegaard as they catch Ciccone with 1.8km to go.
Ciccone now distanced by the pave set by Gall and Vingegaard.
Gall gaining 36" on the pink jersey and 58" on Pellizzari.
Arensman joins Ciccone at about 10".
Eulálio riding very well to limit his losses. He's 37" down just off the back of Hindley, Van Eetvelt, Gee-West and the rest.
Flamme Rouge
Gall keeps trying to get Vingegaard to come through and work but the Austrian has to do the work.
Attack
Jonas Vingegaard (Visma-Lease a Bike)
The blue jersey goes clear and gaps Gall immediately with the Austrian trying to give his all to limit the gap as the Dane is flying. 500 metres to go.
250 metres left to go.
Jonas Vingegaard wins stage 9 of the Giro d'Italia 2026!
Felix Gall finishes second at just 12".
Davide Piganzoli (Visma-Lease a Bike) storms by Arensman to take third but Eulálio takes fifth at 40" and he will keep pink by almost three minutes!
Giulio Pellizzari finishes 1'27" back on Jonas Vingegaard.
Afonso Eulálio now has a gap of 2'24" on Jonas Vingegaard in the GC with Felix Gall sitting at 2'59". Jai Hindley lost time to the Portuguese leader but is up to fourth at 4'32" with Christian Scaroni continuing his amazing start to the race at 4'43" to round out the top five.
In sixth Thymen Arensman is at 5'00" with Matya Rondel just one second behind. Ben O'Connor at 5'03" and then the big loser of the day, Giulio Pellizzari at 5'15". Rounding out the top 10 is Michael Storer at 5'20".
Afonso Eulálio retains his pink jersey and will wear it into week two. Can he hold off Jonas Vingegaard in the time trial on Tuesday and take it to, at least, stage 14 with the massive mountain stage from Aosta to Pila?
Eulálio also keeps his white jersey but, of course, won't wear that on Tuesday. The new second place after Pellizzari slipped down the order is now Rondel, who will surely be wearing that skinsuit for the ITT as it will be a huge moment for the Frenchman and the Swiss team.
Whether he likes it or not, Jonas Vingegaard will be in the blue KOM skinsuit for the time trial on Tuesday as he leads the competition by 51 points over Diego Pablo Sevilla.
Paul Magnier holds onto the points jersey with 130 points and a 44 point lead over Jhonatan Narvaez after a superb first week for the Frenchman.
That brings our live report to a close here on Cyclingnews but make sure to keep looking at our home page for all the reaction and analysis from the Giro and all the other races that have been going on today.
Also, tomorrow's rest day should see quotes and reactions from the first week as well as the look forward to week two and the time trial on Tuesday.
We'll see you there! Ciao!
You must confirm your public display name before commenting
Please logout and then login again, you will then be prompted to enter your display name.
