Hello, Giro d’Italia Gamers!
STAGE Grade: A-
I rate today’s stage an A-. Up until about 40 kilometers to go, I was rating this a solid C. But then the thrilling outcome changed everything. We had (failed?) tactics, we had a sprint, we had surprises. An unexpectedly fun day of racing before the final rest day of the 2026 Giro d’Italia.
Route: 2/5 GC: 1/5 Tactics: 4/5 Sprint: 4/5 Surprises: 5/5
Like almost everyone else, I expected a breakaway to be caught in the final kilometers and then a bunch sprint, won by Paul Magnier or Jonathan Milan. Well okay, I thought Dylan Groenewegen would win it. There was no reason to expect otherwise. The breakaway got together, the peloton gave them two minutes, and then they controlled the gap.
Then, at 40 kilometers, with the gap still two minutes, I noticed something. The teams were sacrificing riders. Giving them up. Unibet Rose Rockets, Lidl-Trek, EF Education – EasyPost. They put riders in the front of the peloton who rode themselves into the ground and then pulled the plug.
Forty kilometers from the end. Forty!
The math, at least the old school math, says that you can make up six to twelve seconds in a kilometer. The peloton chasing the breakaway. Forty times six is a lot of seconds, more than two minutes. But the peloton was doing wasn’t controlling the gap anymore, it was a full-on chase. And they weren’t succeeding.
The math didn’t tell me that, the number of riders who were sacrificed told me that. One big name after the other were spent to chase the breakaway. It wasn’t working, the gap remained. When finally Simon Consonni was pulling the peloton, I realized all was lost for the sprinters. If Lidl-Trek is sacrificing Milan’s lead-out man, then the best they are hoping for is a chaotic bunch sprint with or without the breakaway.
Question: how did this happen? Answer: I don’t know! The breakaway was ridiculously fast in the end stages. I don’t think this was an old-school “the peloton waited too long” situation. The peloton was racing at 52, 55 km/h through the streets of Milan. The breakaway was doing 51 km/h. How? I don’t know. I’ve never seen an anonymous breakaway outlast the peloton simply by going faster. Remember: going fast has nothing to do with bike racing. Except on a day like today.
Tim Torn Teutenberg, one of Milan’s pawns today, was certain the motorcycles were pulling the breakaway. I didn’t really see it that way, but I have no other explanation. The breakaway was faster, the peloton couldn’t go any faster.
I’ll wrap up the breakaway in our focus team section, but let’s look at the decision to neutralize the race 16 km before the finish. Times were taken at that point, so any general classification riders could sit up and not risk racing through the streets of Milan at breakneck speeds. Perhaps it was a good decision, but it came after first Jonas Vingegaard and then Milan went to talk to the race director. Why organize laps through Milan if you don’t think it’s safe? I don’t like that. A race is a race. Now it was a race plus one lap for the winner.
Incidentally, I think if that decision hadn’t been made, the breakaway certainly wouldn’t have been caught. The GC teams would have been in the way. Or not — Team Jumbo – Lease-a-Bike chose to hang back in stage 1, perhaps that’s the new way of doing things.
Team Polti – VisitMalta will probably consider today a loss. They’re not completely wrong. Second and fourth is a boatload of UCI points and prize money; but they had a chance to win a stage for the first time since Davide Bais (Mattia’s brother) won stage 7 in the 2023 Giro d’Italia.
Why didn’t they win? A breakaway like this is a delicate operation. Fredrik Dversnes Lavik had won the Red Bull KM, he was probably the better sprinter. He was skipping pulls in the final kilometers. He might argue, why help two riders from the same team to the finish. You want to win, you do the work.
He’s not wrong about that, and what can Polti do in return? Refuse to work? With the peloton in full chase behind them?
I think they did the best they could do. Bais led out the sprint for Mirco Maestri. But Dversnes was faster. At least Maestri beat Martin Marcellusi, from rivals Bardiani CSF 7 Saber.
But it wasn’t a win. Both Maestri and Marcellusi beat their handlebars in frustration. Both had a chance to win a mass start pro cycling race for the first time in their careers. Instead, they got second and third.
Our Bardiani rivals made two more headlines. Well, one headline and one, uh, footnote. The footnote was that fourth place in the Red Bull KM was given to Filippo Magli. Yet we could all see that Marcellusi was fourth. I have an inquiry in with the organizers, I’ll let you know what they tell me.
The headline event was that Enrico Zanoncello was disqualified. The press reports a headbutt that caused Robert Donaldson to crash, and I saw someone else go down as well. There wasn’t good TV footage but on social media, there clearly wasn’t a headbutt. Zanoncello moved into Donaldson’s path, to be sure. Not the worst offense I’ve ever seen in a sprint, but he is out of the 2026 Giro d’Italia.
Watch the final kilometers HERE.
Watch the TNT Sports highlights HERE.
Read the TNT Sports report HERE.
Spoiler alert: only Team Amalia and Team Charles made moves today — they trade places, again.
Even in a failed sprint stage, Team Amalia comes to the front. Most points from the stage, most points overall, most riders in the Top-25 (four). Team Sam finished second and Team Tadej third.
Team Ansel had the most points from classifications, good enough for
fourth. Team Grace were just two points behind them in fifth.
The others missed the boat today. Team Charles in sixth, Team Hugo in seventh, and Team Felix in eighth.
The peloton will rest on Monday, and on Tuesday they will race the shortest mass start race of the 2026 Giro d’Italia. An interesting stage with start and finish in the Italian-speaking part of Switzerland. Just 113 kilometers, including a loop with two categorized climbs and then a long way up to Carì, a category 1 climb. Regardless of who wins: a short but hard stage like this could be trouble for the sprinters and the time limit. Keep an eye on that — unfortunately, the TV cameras don’t stay on until the end like in the Tour de France. Just look at Pro Cycling Stats for the live results.
Anyway, who will win stage 16? The computers say Giulio Ciccone and that seems fair. Except it’s not been a Ciccone kind of Giro so far. He can win, but he disappointed on Saturday. I think there are two options: Jonas Vingegaard thinks he’s Tadej Pogačar and will win it; or else Aleksandr Vlasov gets a second chance. He was strong on Saturday, he beat Ciccone by almost two minutes. Only Vingegaard can beat Vlasov — by turning this into a GC kind of day. It’s a coin flip; my coin comes up head and I say Vlasov will win on Tuesday.
Standings after stage 15:
|
Rank |
Name |
Points |
WAS |
MOVES |
|
1 |
Team Grace* |
2082 |
1 |
0 |
|
2 |
Team Ansel* |
1974 |
2 |
0 |
|
3 |
Team Sam* |
1898 |
3 |
0 |
|
4 |
Team Tadej* |
1792 |
4 |
0 |
|
5 |
Team Amalia* |
1725 |
6 |
1 |
|
6 |
Team Charles* |
1687 |
5 |
-1 |
|
7 |
Team Hugo* |
1594 |
7 |
0 |
|
8 |
Team Felix* |
1420 |
8 |
0 |
Standings after stage 15 (including adults):
|
Rank |
Name |
Points |
WAS |
MOVES |
|
1 |
Team Grace* |
2082 |
1 |
0 |
|
2 |
Team Ansel* |
1974 |
2 |
0 |
|
3 |
Team Fran |
1965 |
3 |
0 |
|
4 |
Team Amelia |
1947 |
4 |
0 |
|
5 |
Team Julie |
1922 |
5 |
0 |
|
6 |
Team Sam* |
1898 |
6 |
0 |
|
7 |
Team Doug |
1857 |
7 |
0 |
|
8 |
Team Craig |
1847 |
8 |
0 |
|
9 |
Team Laurens |
1842 |
9 |
0 |
|
10 |
Team Kent |
1819 |
10 |
0 |
|
11 |
Team Tadej* |
1792 |
11 |
0 |
|
12 |
Team Corsa |
1772 |
12 |
0 |
|
13 |
Team Amalia* |
1725 |
15 |
2 |
|
14 |
Team Paul |
1696 |
13 |
-1 |
|
15 |
Team Charles* |
1687 |
14 |
-1 |
|
16 |
Team Zach |
1656 |
17 |
1 |
|
17 |
Team Adam |
1605 |
16 |
-1 |
|
18 |
Team Hugo* |
1594 |
18 |
0 |
|
19 |
Team Jake |
1585 |
19 |
0 |
|
20 |
Team Rob |
1527 |
20 |
0 |
|
21 |
Team Felix* |
1420 |
21 |
0 |
|
22 |
Team Kate |
1357 |
22 |
0 |
|
23 |
Team Kari |
1324 |
23 |
0 |
|
24 |
Team Jonwaine |
1203 |
24 |
0 |
|
25 |
Team Roslyn |
507 |
25 |
0 |
Complete breakdown of points from stage 15:
|
Name |
STAGE RESULTS |
PINK JERSEY |
PURPLE JERSEY |
BLUE JERSEY |
WHITE JERSEY |
POINTS/CLASS |
TOTAL |
PREVIOUS |
CUM. TOTAL |
|
Team Amalia* |
88 |
37 |
8 |
7 |
4 |
56 |
144 |
1581 |
1725 |
|
Team Ansel* |
54 |
45 |
8 |
10 |
4 |
67 |
121 |
1853 |
1974 |
|
Team Charles* |
32 |
41 |
7 |
7 |
4 |
59 |
91 |
1596 |
1687 |
|
Team Felix* |
0 |
32 |
0 |
7 |
6 |
45 |
45 |
1375 |
1420 |
|
Team Grace* |
54 |
41 |
8 |
10 |
6 |
65 |
119 |
1963 |
2082 |
|
Team Hugo* |
32 |
38 |
3 |
10 |
4 |
55 |
87 |
1507 |
1594 |
|
Team Sam* |
73 |
35 |
12 |
8 |
4 |
59 |
132 |
1766 |
1898 |
|
Team Tadej* |
69 |
38 |
3 |
7 |
6 |
54 |
123 |
1669 |
1792 |
Complete breakdown of points from stage 15 (including adults):
|
Team Adam |
12 |
39 |
3 |
10 |
4 |
56 |
68 |
1537 |
1605 |
|
Team Amalia* |
88 |
37 |
8 |
7 |
4 |
56 |
144 |
1581 |
1725 |
|
Team Amelia |
51 |
45 |
3 |
10 |
4 |
62 |
113 |
1834 |
1947 |
|
Team Ansel* |
54 |
45 |
8 |
10 |
4 |
67 |
121 |
1853 |
1974 |
|
Team Charles* |
32 |
41 |
7 |
7 |
4 |
59 |
91 |
1596 |
1687 |
|
Team Corsa |
65 |
36 |
8 |
10 |
0 |
54 |
119 |
1653 |
1772 |
|
Team Craig |
73 |
34 |
8 |
10 |
6 |
58 |
131 |
1716 |
1847 |
|
Team Doug |
31 |
45 |
3 |
10 |
6 |
64 |
95 |
1762 |
1857 |
|
Team Felix* |
0 |
32 |
0 |
7 |
6 |
45 |
45 |
1375 |
1420 |
|
Team Fran |
53 |
38 |
8 |
10 |
4 |
60 |
113 |
1852 |
1965 |
|
Team Grace* |
54 |
41 |
8 |
10 |
6 |
65 |
119 |
1963 |
2082 |
|
Team Hugo* |
32 |
38 |
3 |
10 |
4 |
55 |
87 |
1507 |
1594 |
|
Team Jake |
32 |
32 |
3 |
10 |
4 |
49 |
81 |
1504 |
1585 |
|
Team Jonwaine |
0 |
31 |
0 |
7 |
0 |
38 |
38 |
1165 |
1203 |
|
Team Julie |
73 |
45 |
8 |
7 |
4 |
64 |
137 |
1785 |
1922 |
|
Team Kari |
27 |
29 |
0 |
10 |
0 |
39 |
66 |
1258 |
1324 |
|
Team Kate |
27 |
29 |
2 |
8 |
4 |
43 |
70 |
1287 |
1357 |
|
Team Kent |
51 |
45 |
3 |
7 |
4 |
59 |
110 |
1709 |
1819 |
|
Team Laurens |
73 |
35 |
8 |
7 |
4 |
54 |
127 |
1715 |
1842 |
|
Team Paul |
34 |
34 |
8 |
8 |
4 |
54 |
88 |
1608 |
1696 |
|
Team Rob |
32 |
36 |
3 |
10 |
0 |
49 |
81 |
1446 |
1527 |
|
Team Roslyn |
57 |
0 |
0 |
0 |
0 |
0 |
57 |
450 |
507 |
|
Team Sam* |
73 |
35 |
12 |
8 |
4 |
59 |
132 |
1766 |
1898 |
|
Team Tadej* |
69 |
38 |
3 |
7 |
6 |
54 |
123 |
1669 |
1792 |
|
Team Zach |
73 |
32 |
8 |
10 |
4 |
54 |
127 |
1529 |
1656 |
-Laurens.