
Saturday, September 12: Stage 20, La Calahorra - Collado del Alguacil, 186.8 km
Stage 20 map & profile | Stage 20 photos

Mikel Landa wins stage twenty.
Les Woodland's book Cycling’s 50 Craziest Stories is available in print, Kindle eBook & audiobook versions. To get your copy, just click on the Amazon link on the right.
Weather at Güejar Sierra, on the route, 9 km from the finish, at 2:35 PM, local time: 28C (82F), sunny, with the wind from the northwest at 11 km/hr (7 mph). No rain is forecast.
Rated ascents:
The stage: Final great mountain stage. A tough one with over 5,000 meters of slopes in total. The double ascent towards Hazallanas (1st category) and the Purche (1st category) will truly affect the riders’ legs and how they approach the final climb up the Collado del Aguacil, consisting of 8.3 kilometers at an inclination of 9.8%.
The race: Early in the stage Matthew Riccitello (Decathlon CMA CGM) and Chris Hamilton (Picnic-PostNL) crashed and had to abandon. Eddie Dunbar (Pinarello Q36.5 Pro Cycling Team) also did not finish the stage.
Here's the race organizer's stage 20 report:
‘Landismo’ is not dead. After his roughest season, Mikel Landa (Soudal Quick-Step) revived the greatest moments that illuminated his career with an exhilarating solo victory at Collado del Alguacil, a brutal summit finish on the eve of the grand finale in Granada. The attackers lit up the race over the many summits of the day, and Landa proved the strongest climber of the lot, eventually distancing Tobias Johannessen (Uno-X Mobility) seven kilometres from the finish to take his second La Vuelta stage win eleven years after the first one, in 2015.
The GC battle was also extremely intense, with Sepp Kuss (Visma-Lease a Bike) and Richard Carapaz (EF Education-EasyPost) launching their attacks with 100 kilometres to go. The American climber found an opening to move into the GC top 5, but the Ecuadorian was controlled by his rivals. Felix Gall (Decathlon CMA CGM) eventually distanced his rivals on the final climb, but Enric Mas (Movistar) retained La Roja and all but secured overall victory. He is set to become the first Spanish winner of La Vuelta since Alberto Contador in 2014.
The stage:
The final mountain showdown! On the eve of the grand finale in Granada, the peloton face emblematic summits such as the Puerto de El Purche en route to an unprecedented finish. The stage is packed with climbing: 5 categorised ascents (53 KOM points) and almost 5,000 metres of elevation gain between La Calahorra and Collado del Alguacil (186.8 km).
Will daring attackers be able to turn the race upside down nonsuch terrain? Although the finish is unprecedented, many riders know the final climb from training camps held in Sierra Nevada, and a rider like Richard Carapaz (EF Education-EasyPost) already completed significant long range assaults on these roads.
Another spectacular battle for the break
With the green jersey on his back, Wout van Aert (Visma-Lease a Bike) attacks as soon as the flag drops. Ivo Oliveira (UAE Emirates XRG) accompanies him. And a fierce battle ensues, leading to early splits in the bunch. Enric Mas is caught behind, but Movistar react rapidly to close the gap.
Meanwhile, Uno-X Mobility launch a daring team attack, with six riders to close the gap to Van Aert and Oliveira: Magnus Cort, Simon Dalby, Tobias Johannessen, Andreas Kron, and Andreas Leknessund. They are followed by Finn Fisher-Black, Gianni Vermeersch (Red Bull-Bora-Hansgrohe), Oscar Chamberlain (Decathlon CMA CGM), Pau Miquel (Bahrain Victorious), Bryan Coquard, and Louis Rouland (Cofidis) to make it a 14-man breakaway at km 26.
Behind them, the battle rages on. A 55-man chase group emerge. Guillaume Martin-Guyonnet (Groupama-FDJ United) is the main GC threat: 12th overall, 18’19’’ behind Mas. Santiago Buitrago (Bahrain Victorious) and Eddie Dunbar (Pinarello Q36.5) are on the move again. EF Education-EasyPost have five riders (Albanese, Mackellar, Rafferty, Rodriguez, Shaw), Visma-Lease a Bike have four (Armirail, Brennan, Kruijswijk, Nordhagen), Movistar have three (Castrillo, Garcia Pierna, Romeo)…
Kuss and Carapaz launch long range assaults
Uno-X Mobility are the driving force at the front while Wout van Aert picks up mountain points at Puerto de Blancares (cat. 3, km 50.7) and on the two ascents of the Puerto de El Purche (cat. 1, summited at km 94.3 and 125.5). The pace is much easier in the peloton, trailing by almost ten minutes when Sepp Kuss (Visma-Lease a Bike) attacks on the first climb up the Puerto de El Purche.

The peloton begins ascending the day's second climb, El Purche. A break with Wout van Aert is almost 11 minutes up the road. Photo: Cxcling
Richard Carapaz also sets off on the climb, with 99 kilometres to go. He rapidly joins Kuss and forces Felix Gall (Decathlon CMA CGM) to chase. The Austrian climber closes the gap at the summit. Only Enric Mas and Primoz Roglic (Red Bull-Bora-Hansgrohe) follow. Carapaz tries again on the second ascent but he doesn’t find an opening against Mas, Gall and Roglic.
As Van Aert goes first at the intermediate sprint (Güejar Sierra, km 144.0), the Belgian superstar all but secures the green jersey on the eve of the grand finale in Granada.
Landa resuscitates, Mas survives
Mikel Landa (Soudal Quick-Step) joins the front group on the following downhill, and Ramses Debruyne (Alpecin-Premier Tech) does it at the bottom of the climb up Puerto de El Duque (cat. 1, km 155.4). The Belgian youngster immediately accelerates. Only Landa and Johannessen can follow him. Behind them, Sepp Kuss attacks again from the GC group. The American climber manages to get away while Carapaz launches a flurry of unsuccessful attacks.
The trio stick together en route to the final climb: 8.3 km at 9.8%, with gradients up to 22%. Landa goes solo with 7 kilometres remaining. The Spanish veteran flies to his second La Vuelta stage win, eleven years after the first in Cortals d’Encamp (Andorra, 2015).
With the support of Van Aert and eventually Nordhagen, Kuss cross the line in 8th place, with a gap of 4’35’’. In the GC group, Gall proves the strongest in the final two kilometres. He gains 17’’ on Mas, 55’’ on Roglic, and 1’54’’ on Carapaz. The top 4 positions overall don’t change: Mas is set to become the first Spanish winner of La Vuelta since Alberto Contador in 2014, ahead of Roglic and Gall. Kuss moves to fifth place, while Oscar Onley (Netcompany Ineos) drops to sixth and all but secure the white jersey against Jakob Omrzel (Bahrain Victorious).
Complete results:
186.8 kilometers raced at an average speed of 37.609 km/hr
| 1 | Mikel Landa | Soudal Quick-Step | 4hr 58min 1sec |
| 2 | Tobias Halland Johannessen | Uno-X Mobility | @ 47sec |
| 3 | Ramses Debruyne | Alpecin-Premier Tech | 1:27 |
| 4 | Pau Miquel Delgado | Bahrain Victorious | 3:00 |
| 5 | Urko Berrade | Equipo Kern Pharma | 4:12 |
| 6 | Jan Hirt | NSN Cycling Team | 4:18 |
| 7 | Jørgen Nordhagen | Team Visma | Lease a Bike | 4:35 |
| 8 | Sepp Kuss | Team Visma | Lease a Bike | s.t. |
| 9 | Walter Calzoni | Pinarello-Q36.5 Pro Cycling Team | 4:48 |
| 10 | Lorenzo Fortunato | XDS Astana Team | 4:53 |
| 11 | Kevin Vermaerke | UAE Team Emirates-XRG | 5:26 |
| 12 | Jarno Widar | Lotto-Intermarché | 6:35 |
| 13 | Felix Gall | Decathlon CMA CGM Team | 6:37 |
| 14 | Enric Mas | Movistar Team | 6:54 |
| 15 | Primoz Roglic | Red Bull-BORA-hansgrohe | 7:32 |
| 16 | Mario Aparicio | Burgos Burpellet BH | 8:22 |
| 17 | Ivan Sosa | Equipo Kern Pharma | 8:31 |
| 18 | Richard Carapaz | EF Education-EasyPost | s.t. |
| 19 | Oscar Onley | Netcompany INEOS Cycling Team | 10:19 |
| 20 | Jakob Omrzel | Bahrain Victorious | 10:26 |
| 21 | Cristian Rodriguez | XDS Astana Team | 10:32 |
| 22 | Guillaume Martin-Guyonnet | Groupama-FDJ United | 10:38 |
| 23 | Clément Berthet | Groupama-FDJ United | s.t. |
| 24 | Harold Tejada | XDS Astana Team | 11:07 |
| 25 | William Barta | Tudor Pro Cycling Team | 11:15 |
| 26 | Ivo Oliveira | UAE Team Emirates-XRG | 12:18 |
| 27 | Embret Svestad-Bårdseng | Netcompany INEOS Cycling Team | 14:29 |
| 28 | Léo Bisiaux | Decathlon CMA CGM Team | 14:29 |
| 29 | Jose Manuel Diaz | Burgos Burpellet BH | 15:52 |
| 30 | Wout van Aert | Team Visma | Lease a Bike | 16:36 |
| 31 | Filippo Zana | Soudal Quick-Step | 16:40 |
| 32 | Valentin Paret-Peintre | Soudal Quick-Step | s.t. |
| 33 | Koen Bouwman | Team Jayco-AlUla | 16:40 |
| 34 | Finn Fisher-Black | Red Bull-BORA-hansgrohe | 16:56 |
| 35 | Emanuel Buchmann | Cofidis | 16:59 |
| 36 | Santiago Buitrago | Bahrain Victorious | 17:05 |
| 37 | Valentin Madouas | Groupama-FDJ United | 17:14 |
| 38 | Michael Gogl | Alpecin-Premier Tech | 17:56 |
| 39 | Pablo Castrillo | Movistar Team | 18:02 |
| 40 | Juan Rodríguez | EF Education-EasyPost | 18:32 |
| 41 | Jack Haig | Netcompany INEOS Cycling Team | 18:58 |
| 42 | Hannes Wilksch | Tudor Pro Cycling Team | 22:37 |
| 43 | Gijs Leemreize | Team Picnic PostNL | 22:47 |
| 44 | Rudy Porter | Team Jayco-AlUla | 23:01 |
| 45 | Raúl García | Movistar Team | 23:26 |
| 46 | Carlos Rodriguez | Netcompany INEOS Cycling Team | 23:26 |
| 47 | Iván Romeo | Movistar Team | s.t. |
| 48 | Oscar Chamberlain | Decathlon CMA CGM Team | 24:31 |
| 49 | Jesus Herrada | Burgos Burpellet BH | s.t. |
| 50 | Luke Tuckwell | Red Bull-BORA-hansgrohe | 24:58 |
| 51 | David de la Cruz | Pinarello-Q36.5 Pro Cycling Team | 25:13 |
| 52 | Attila Valter | Bahrain Victorious | 25:16 |
| 53 | Mattias Skjelmose | Lidl-Trek | 25:20 |
| 54 | Finlay Pickering | Team Jayco-AlUla | 25:26 |
| 55 | Pau Martí | NSN Cycling Team | 26:03 |
| 56 | Fabian Weiss | Tudor Pro Cycling Team | 26:14 |
| 57 | Gianmarco Garofoli | Soudal Quick-Step | 26:32 |
| 58 | Axel Laurance | Netcompany INEOS Cycling Team | 26:51 |
| 59 | Rémy Rochas | Groupama-FDJ United | s.t. |
| 60 | Louis Rouland | Cofidis | s.t. |
| 61 | Sylvain Moniquet | Cofidis | 27:02 |
| 62 | Lawrence Warbasse | Tudor Pro Cycling Team | s.t. |
| 63 | Ibon Ruiz | Equipo Kern Pharma | 27:20 |
| 64 | Mauri Vansevenant | Soudal Quick-Step | 27:22 |
| 65 | Bruno Armirail | Team Visma | Lease a Bike | s.t. |
| 66 | Steven Kruijswijk | Team Visma | Lease a Bike | 28:50 |
| 67 | Julien Bernard | Lidl-Trek | 28:55 |
| 68 | Andreas Kron | Uno-X Mobility | 29:39 |
| 69 | Simon Dalby | Uno-X Mobility | s.t. |
| 70 | James Shaw | EF Education-EasyPost | 31:45 |
| 71 | Andreas Leknessund | Uno-X Mobility | 32:05 |
| 72 | Clément Alleno | Burgos Burpellet BH | 33:18 |
| 73 | Mathijs Paasschens | Bahrain Victorious | 33:55 |
| 74 | Sergio Samitier | Cofidis | 33:57 |
| 75 | Juan Martinez | Team Picnic PostNL | 33:58 |
| 76 | Reuben Thompson | Lotto-Intermarché | 34:11 |
| 77 | Lars Craps | Lotto-Intermarché | 34:50 |
| 78 | Sander De Pestel | Decathlon CMA CGM Team | 34:54 |
| 79 | João Almeida | UAE Team Emirates-XRG | 35:02 |
| 80 | Gal Glivar | Alpecin-Premier Tech | s.t. |
| 81 | Darren Rafferty | EF Education-EasyPost | 36:22 |
| 82 | Lucas Hamilton | Netcompany INEOS Cycling Team | 37:57 |
| 83 | Gianni Vermeersch | Red Bull-BORA-hansgrohe | 38:58 |
| 84 | Pello Bilbao | Bahrain Victorious | 39:06 |
| 85 | Xabier Azparren | Pinarello-Q36.5 Pro Cycling Team | s.t. |
| 86 | Henok Mulubrhan | XDS Astana Team | s.t. |
| 87 | Roland Thalmann | Tudor Pro Cycling Team | s.t. |
| 88 | Marco Brenner | Tudor Pro Cycling Team | s.t. |
| 89 | Paul Ourselin | Cofidis | s.t. |
| 90 | José Luis Faura | Burgos Burpellet BH | 39:49 |
| 91 | Martin Tjøtta | Uno-X Mobility | 40:12 |
| 92 | Callum Thornley | Red Bull-BORA-hansgrohe | 40:22 |
| 93 | Rasmus Tiller | Uno-X Mobility | 40:27 |
| 94 | Fredrik Dversnes | Uno-X Mobility | 40:36 |
| 95 | Iñigo Elosegui | Equipo Kern Pharma | 40:48 |
| 96 | Asbjørn Hellemose | Team Jayco-AlUla | 41:27 |
| 97 | Alessandro Covi | Team Jayco-AlUla | s.t. |
| 98 | Alessandro Romele | XDS Astana Team | s.t. |
| 99 | Enzo Paleni | Groupama-FDJ United | s.t. |
| 100 | Callum Scotson | Decathlon CMA CGM Team | s.t. |
| 101 | Carlos Canal | Movistar Team | s.t. |
| 102 | Jorge Arcas | Movistar Team | s.t. |
| 103 | Thomas Gloag | Pinarello-Q36.5 Pro Cycling Team | s.t. |
| 104 | Hugo Hofstetter | NSN Cycling Team | s.t. |
| 105 | Nick Schultz | NSN Cycling Team | s.t. |
| 106 | Jasha Sütterlin | Team Jayco-AlUla | s.t. |
| 107 | Sinuhé Fernandez | Burgos Burpellet BH | s.t. |
| 108 | Lorenzo Rota | Lotto-Intermarché | s.t. |
| 109 | Marcel Camprubí | Pinarello-Q36.5 Pro Cycling Team | 41:49 |
| 110 | Roman Ermakov | Bahrain Victorious | 41:52 |
| 111 | Lennard Kämna | Lidl-Trek | s.t. |
| 112 | Darren van Bekkum | XDS Astana Team | 42:05 |
| 113 | Vincenzo Albanese | EF Education-EasyPost | 43:00 |
| 114 | Ivan Cobo | Equipo Kern Pharma | 43:04 |
| 115 | Marc Brustenga | Equipo Kern Pharma | s.t. |
| 116 | Orluis Aular | Movistar Team | 43:09 |
| 117 | Alastair Mackellar | EF Education-EasyPost | 43:19 |
| 118 | Thibau Nys | Lidl-Trek | 43:23 |
| 119 | Gianni Moscon | Red Bull-BORA-hansgrohe | 43:27 |
| 120 | Domen Novak | UAE Team Emirates-XRG | 43:38 |
| 121 | Cesar Macias | Burgos Burpellet BH | 44:48 |
| 122 | Mats Wenzel | Equipo Kern Pharma | 45:04 |
| 123 | Magnus Cort | Uno-X Mobility | s.t. |
| 124 | Bryan Coquard | Cofidis | 45:34 |
| 125 | Milan Vader | Pinarello-Q36.5 Pro Cycling Team | 45:39 |
| 126 | Rudy Molard | Groupama-FDJ United | 45:55 |
| 127 | Bastien Tronchon | Groupama-FDJ United | s.t. |
| 128 | Olivier Le Gac | Groupama-FDJ United | s.t. |
| 129 | Georg Steinhauser | EF Education-EasyPost | 46:00 |
| 130 | Patrick Konrad | Lidl-Trek | 46:15 |
| 131 | Frederik Wandahl | Red Bull-BORA-hansgrohe | s.t. |
| 132 | Timo de Jong | Team Picnic PostNL | 46:48 |
| 133 | Ethan Hayter | Soudal Quick-Step | 46:57 |
| 134 | Matevz Govekar | Bahrain Victorious | 47:37 |
| 135 | Alberto Dainese | Soudal Quick-Step | 47:56 |
| 136 | Jacopo Mosca | Lidl-Trek | 49:05 |
| 137 | Steffen De Schuyteneer | Lotto-Intermarché | s.t. |
| 138 | Vito Braet | Lotto-Intermarché | s.t. |
| 139 | Fabio Van den Bossche | Soudal Quick-Step | 49:08 |
| 140 | Matthew Brennan | Team Visma | Lease a Bike | 49:18 |
| 141 | Mathias Sunekær Norsgaard | Lidl-Trek | 50:37 |
| 142 | Jordi Meeus | Red Bull-BORA-hansgrohe | 53:46 |
GC after stage 20:
2,912.6 kilometers raced so far at an average speed of 41.052 km/hr
| 1 | Enric Mas | Movistar Team | 70hr 56min 58sec |
| 2 | Primoz Roglic | Red Bull-BORA-hansgrohe | @ 2min 15sec |
| 3 | Felix Gall | Decathlon CMA CGM Team | 2:44 |
| 4 | Richard Carapaz | EF Education-EasyPost | 6:54 |
| 5 | Sepp Kuss | Team Visma | Lease a Bike | 8:45 |
| 6 | Oscar Onley | Netcompany INEOS Cycling Team | 9:28 |
| 7 | Jakob Omrzel | Bahrain Victorious | 10:38 |
| 8 | Clément Berthet | Groupama-FDJ United | 11:41 |
| 9 | Cristian Rodriguez | XDS Astana Team | 11:59 |
| 10 | Harold Tejada | XDS Astana Team | 14:40 |
| 11 | Guillaume Martin-Guyonnet | Groupama-FDJ United | 22:03 |
| 12 | Léo Bisiaux | Decathlon CMA CGM Team | 26:52 |
| 13 | Mattias Skjelmose | Lidl-Trek | 27:32 |
| 14 | Mario Aparicio | Burgos Burpellet BH | 42:17 |
| 15 | Jan Hirt | NSN Cycling Team | 45:09 |
| 16 | Juan Rodríguez | EF Education-EasyPost | 47:56 |
| 17 | Santiago Buitrago | Bahrain Victorious | 52:45 |
| 18 | Filippo Zana | Soudal Quick-Step | 58:44 |
| 19 | Urko Berrade | Equipo Kern Pharma | 1:01:09 |
| 20 | Embret Svestad-Bårdseng | Netcompany INEOS Cycling Team | 1:12:35 |
| 21 | Koen Bouwman | Team Jayco-AlUla | 1:14:26 |
| 22 | Raúl García | Movistar Team | 1:16:45 |
| 23 | Jarno Widar | Lotto-Intermarché | 1:20:41 |
| 24 | Jack Haig | Netcompany INEOS Cycling Team | 1:21:35 |
| 25 | Emanuel Buchmann | Cofidis | 1:24:50 |
| 26 | Tobias Halland Johannessen | Uno-X Mobility | 1:27:52 |
| 27 | Gijs Leemreize | Team Picnic PostNL | 1:28:16 |
| 28 | Finlay Pickering | Team Jayco-AlUla | 1:29:26 |
| 29 | Kevin Vermaerke | UAE Team Emirates-XRG | 1:33:38 |
| 30 | Mikel Landa | Soudal Quick-Step | 1:36:39 |
| 31 | Manuel Diaz Jose | Burgos Burpellet BH | 1:44:33 |
| 32 | Ramses Debruyne | Alpecin-Premier Tech | 1:52:20 |
| 33 | Pello Bilbao | Bahrain Victorious | 1:55:51 |
| 34 | Valentin Madouas | Groupama-FDJ United | 1:56:47 |
| 35 | Valentin Paret-Peintre | Soudal Quick-Step | 1:58:30 |
| 36 | Carlos Rodriguez | Netcompany INEOS Cycling Team | 1:59:41 |
| 37 | Jørgen Nordhagen | Team Visma | Lease a Bike | 2:02:30 |
| 38 | Callum Scotson | Decathlon CMA CGM Team | 2:03:02 |
| 39 | Lorenzo Fortunato | XDS Astana Team | 2:07:42 |
| 40 | Patrick Konrad | Lidl-Trek | 2:08:19 |
| 41 | Lawrence Warbasse | Tudor Pro Cycling Team | 2:10:02 |
| 42 | Henok Mulubrhan | XDS Astana Team | 2:14:30 |
| 43 | Pau Miquel Delgado | Bahrain Victorious | 2:14:50 |
| 44 | Wout van Aert | Team Visma | Lease a Bike | 2:17:24 |
| 45 | Attila Valter | Bahrain Victorious | 2:18:39 |
| 46 | Luke Tuckwell | Red Bull-BORA-hansgrohe | 2:23:51 |
| 47 | Milan Vader | Pinarello-Q36.5 Pro Cycling Team | 2:28:23 |
| 48 | Hannes Wilksch | Tudor Pro Cycling Team | 2:28:27 |
| 49 | Julien Bernard | Lidl-Trek | 2:31:02 |
| 50 | Marco Brenner | Tudor Pro Cycling Team | 2:31:16 |
| 51 | Rudy Molard | Groupama-FDJ United | 2:33:24 |
| 52 | Mauri Vansevenant | Soudal Quick-Step | 2:36:25 |
| 53 | William Barta | Tudor Pro Cycling Team | 2:37:27 |
| 54 | Finn Fisher-Black | Red Bull-BORA-hansgrohe | 2:38:12 |
| 55 | Rudy Porter | Team Jayco-AlUla | 2:38:50 |
| 56 | Gianmarco Garofoli | Soudal Quick-Step | 2:39:01 |
| 57 | Andreas Leknessund | Uno-X Mobility | 2:39:07 |
| 58 | Reuben Thompson | Lotto-Intermarché | 2:39:29 |
| 59 | Paul Ourselin | Cofidis | 2:39:35 |
| 60 | Pau Martí | NSN Cycling Team | 2:41:57 |
| 61 | Bruno Armirail | Team Visma | Lease a Bike | 2:42:22 |
| 62 | Enzo Paleni | Groupama-FDJ United | 2:44:58 |
| 63 | James Shaw | EF Education-EasyPost | 2:46:32 |
| 64 | Axel Laurance | Netcompany INEOS Cycling Team | 2:48:12 |
| 65 | Andreas Kron | Uno-X Mobility | 2:51:03 |
| 66 | Marcel Camprubí | Pinarello-Q36.5 Pro Cycling Team | 2:52:44 |
| 67 | Thomas Gloag | Pinarello-Q36.5 Pro Cycling Team | 2:53:29 |
| 68 | Ibon Ruiz | Equipo Kern Pharma | 2:54:03 |
| 69 | Rémy Rochas | Groupama-FDJ United | 2:55:00 |
| 70 | Walter Calzoni | Pinarello-Q36.5 Pro Cycling Team | 2:56:58 |
| 71 | Lennard Kämna | Lidl-Trek | 2:57:47 |
| 72 | Fabian Weiss | Tudor Pro Cycling Team | 3:01:13 |
| 73 | Iván Romeo | Movistar Team | 3:01:28 |
| 74 | Hugo Hofstetter | NSN Cycling Team | 3:01:37 |
| 75 | Clément Alleno | Burgos Burpellet BH | 3:03:44 |
| 76 | José Luis Faura | Burgos Burpellet BH | 3:05:08 |
| 77 | Bastien Tronchon | Groupama-FDJ United | 3:05:20 |
| 78 | Sergio Samitier | Cofidis | 3:08:26 |
| 79 | Steven Kruijswijk | Team Visma | Lease a Bike | 3:08:32 |
| 80 | Sander De Pestel | Decathlon CMA CGM Team | 3:14:21 |
| 81 | Pablo Castrillo | Movistar Team | 3:14:39 |
| 82 | Simon Dalby | Uno-X Mobility | 3:16:53 |
| 83 | Vincenzo Albanese | EF Education-EasyPost | 3:17:02 |
| 84 | Lucas Hamilton | Netcompany INEOS Cycling Team | 3:20:41 |
| 85 | Jesus Herrada | Burgos Burpellet BH | 3:21:29 |
| 86 | Roland Thalmann | Tudor Pro Cycling Team | 3:22:35 |
| 87 | Ivan Sosa | Equipo Kern Pharma | 3:24:24 |
| 88 | Gianni Vermeersch | Red Bull-BORA-hansgrohe | 3:29:09 |
| 89 | Lars Craps | Lotto-Intermarché | 3:29:12 |
| 90 | Carlos Canal | Movistar Team | 3:30:08 |
| 91 | João Almeida | UAE Team Emirates-XRG | 3:32:05 |
| 92 | Alessandro Romele | XDS Astana Team | 3:33:02 |
| 93 | Jacopo Mosca | Lidl-Trek | 3:35:41 |
| 94 | Michael Gogl | Alpecin-Premier Tech | 3:39:10 |
| 95 | Frederik Wandahl | Red Bull-BORA-hansgrohe | 3:42:07 |
| 96 | Sylvain Moniquet | Cofidis | 3:43:18 |
| 97 | Fredrik Dversnes | Uno-X Mobility | 3:45:26 |
| 98 | Gal Glivar | Alpecin-Premier Tech | 3:46:27 |
| 99 | Ivo Oliveira | UAE Team Emirates-XRG | 3:47:31 |
| 100 | Xabier Azparren | Pinarello-Q36.5 Pro Cycling Team | 3:48:45 |
| 101 | Mathijs Paasschens | Bahrain Victorious | 3:48:51 |
| 102 | Lorenzo Rota | Lotto-Intermarché | 3:50:33 |
| 103 | Mats Wenzel | Equipo Kern Pharma | 3:50:54 |
| 104 | Darren Rafferty | EF Education-EasyPost | 3:53:05 |
| 105 | Nick Schultz | NSN Cycling Team | 3:56:43 |
| 106 | David de la Cruz | Pinarello-Q36.5 Pro Cycling Team | 3:57:34 |
| 107 | Darren van Bekkum | XDS Astana Team | 3:58:58 |
| 108 | Magnus Cort | Uno-X Mobility | 4:00:19 |
| 109 | Jorge Arcas | Movistar Team | 4:00:31 |
| 110 | Matthew Brennan | Team Visma | Lease a Bike | 4:01:53 |
| 111 | Martin Tjøtta | Uno-X Mobility | 4:02:19 |
| 112 | Thibau Nys | Lidl-Trek | 4:08:16 |
| 113 | Oscar Chamberlain | Decathlon CMA CGM Team | 4:08:22 |
| 114 | Ivan Cobo | Equipo Kern Pharma | 4:10:10 |
| 115 | Iñigo Elosegui | Equipo Kern Pharma | 4:11:57 |
| 116 | Sinuhé Fernandez | Burgos Burpellet BH | 4:13:07 |
| 117 | Georg Steinhauser | EF Education-EasyPost | 4:14:06 |
| 118 | Roman Ermakov | Bahrain Victorious | 4:16:27 |
| 119 | Bryan Coquard | Cofidis | 4:17:18 |
| 120 | Timo de Jong | Team Picnic PostNL | 4:24:01 |
| 121 | Gianni Moscon | Red Bull-BORA-hansgrohe | 4:24:15 |
| 122 | Orluis Aular | Movistar Team | 4:25:11 |
| 123 | Jasha Sütterlin | Team Jayco-AlUla | 4:25:31 |
| 124 | Alastair Mackellar | EF Education-EasyPost | 4:26:34 |
| 125 | Callum Thornley | Red Bull-BORA-hansgrohe | 4:28:20 |
| 126 | Rasmus Tiller | Uno-X Mobility | 4:29:51 |
| 127 | Alessandro Covi | Team Jayco-AlUla | 4:30:49 |
| 128 | Fabio Van den Bossche | Soudal Quick-Step | 4:34:06 |
| 129 | Juan Martinez | Team Picnic PostNL | 4:34:08 |
| 130 | Olivier Le Gac | Groupama-FDJ United | 4:37:40 |
| 131 | Alberto Dainese | Soudal Quick-Step | 4:38:17 |
| 132 | Cesar Macias | Burgos Burpellet BH | 4:46:36 |
| 133 | Vito Braet | Lotto-Intermarché | 4:48:14 |
| 134 | Steffen De Schuyteneer | Lotto-Intermarché | 4:54:33 |
| 135 | Louis Rouland | Cofidis | 4:55:04 |
| 136 | Marc Brustenga | Equipo Kern Pharma | 4:56:16 |
| 137 | Matevz Govekar | Bahrain Victorious | 4:59:05 |
| 138 | Asbjørn Hellemose | Team Jayco-AlUla | 5:09:22 |
| 139 | Ethan Hayter | Soudal Quick-Step | 5:13:18 |
| 140 | Domen Novak | UAE Team Emirates-XRG | 5:19:58 |
| 141 | Jordi Meeus | Red Bull-BORA-hansgrohe | 5:20:31 |
| 142 | Mathias Sunekær Norsgaard | Lidl-Trek | 6:11:51 |
Stage 20 map & profile

Stage 20 map

Stage 20 profile
Stage 20 photos by Fotoreporter Sirotti:

Mikel Landa wins stage twenty.

Second-place Tobias Halland Johannessen came in 47 seconds later.

GC third place rider Felix Gall was thirteenth in the stage, seventeen seconds ahead of the next finisher, GC leader Enric Mas.

Enric Mas finished 14th, good enough to stay in red for the final stage.

Primoz Roglic finished 15th, 38 seconds after Enric Mas, good enough to keep his GC second place.

Best Young Rider Oscar Onley was 19th.

Points classification leader Wout van Aert was 30th in the stage.

Mikel Landa just after winning the stage.

Stage winner Mikel Landa

GC leader Enric Mas has one more stage to go.