2021 Tour de France, Stage 12 to Stage 21

The 2021 Tour de France was the 108th edition of Tour de France, one of cycling's Grand Tours. The Tour began in Brest, France on 26 June, and Stage 12 from Saint-Paul-Trois-Châteaux to Nîmes occurred on 8 July. The race finished on the Champs-Élysées in Paris on 18 July.
The twelfth stage featured a 159.4-kilometre (99.0 mi) long course from Saint-Paul-Trois-Châteaux to Nîmes. The undulating course featured only one categorized climb on the route, the third-category Côte du Belvédère de Tharaux, after 79 kilometres (49 mi), and one intermediate sprint in Uzès with around 27 kilometres (17 mi) left. With 16.4 kilometres (10.2 mi) to go, there was a 3.9-kilometre (2.4 mi) long uncategorized climb at an average gradient of 3 percent before a downhill run to the finish. Much like on stage 10, there was a threat of crosswinds along the way.
Before the stage, Peter Sagan (Bora–Hansgrohe) abandoned the race due to his recurring knee injury. Immediately from the start, the peloton set a furious pace that began to form echelons, with the peloton being split into three groups and all the GC contenders making it into the first group. After around 20 kilometres (12 mi) of racing, a 13-man break went away while the groups who were caught out rejoined the main peloton. Most notable of them was the world champion, Julian Alaphilippe (Deceuninck–Quick-Step), who made the break for the second consecutive day. The break immediately extended their advantage, and without any teams chasing behind, it became almost certain that the break would go all the way and contest for the stage win.
With 50 kilometres (31 mi) to go, Nils Politt (Bora–Hansgrohe) attacked with Connor Swift (Arkéa–Samsic), but the move was chased down. A few kilometres later, Politt attacked again, this time with Stefan Küng (Groupama–FDJ), Harry Sweeny (Lotto–Soudal), and Imanol Erviti (Movistar Team). The quartet gradually built up their advantage over the rest of their breakaway companions. 15 kilometres (9.3 mi) from the finish, Sweeny launched an acceleration that dropped Küng. With 12 kilometres (7.5 mi) left, Politt was once again on the attack, this time with no response from Erviti and Sweeny. On the downhill run-in to the finish, Politt extended his lead to win his first Tour stage, 31 seconds ahead of Erviti and Sweeny. Küng finished seconds ahead of a group containing most of the other breakaway riders, with Luka Mezgec (Team BikeExchange) winning the sprint for fifth. Stefan Bissegger (EF Education–Nippo) was the last of the breakaway members to finish, crossing the line by himself over five minutes behind Politt. About ten minutes after Bissegger, Mark Cavendish (Deceuninck–Quick-Step) led the peloton home, sprinting for the few remaining points on offer to slightly extend his lead in the points classification. All the GC contenders finished safely in the peloton and the top ten remained unchanged.
The thirteenth stage saw the Tour continue west across southwestern France towards the Pyrenees. With a distance of 219.9 kilometres (136.6 mi), it marked the second longest stage of this year's Tour. The undulating route ran roughly parallel to the Mediterranean coast, with crosswinds once again being a possibility. The first half of the stage featured both the day's only categorized climb and the intermediate sprint. The fourth-category Côte du Pic Saint-Loup, which is 5.5 kilometres (3.4 mi) long at an average gradient of 3.7 percent, summitted at 51.5 kilometres (32.0 mi) into the stage, while the intermediate sprint in Fontès was at 104 kilometres (65 mi). Three uncategorized climbs preceded a flat run-in to the final kilometre, with a slight uphill drag to the finish line.
The first few kilometres were marked by several attacks before a trio of riders broke away with around 190 kilometres (120 mi) to go. The break included Sean Bennett (Team Qhubeka NextHash), Pierre Latour (Team TotalEnergies), and Omer Goldstein (Israel Start-Up Nation). After a while, Georg Zimmermann (Intermarché–Wanty–Gobert Matériaux) attempted to bridge from the peloton to the break, albeit unsuccessfully. The trio built a lead of two and a half minutes before the gap came down due to several riders attempting to bridge over to the break. Eventually, Deceuninck–Quick-Step took control at the front of the peloton, allowing the break to increase their advantage once again. The trio led by a maximum of four and a half minutes before the peloton started to chase in earnest. At the intermediate sprint, the break took maximum points before Sonny Colbrelli (Team Bahrain Victorious) outsprinted Michael Matthews (Team BikeExchange) for the remaining points on offer as Mark Cavendish (Deceuninck–Quick-Step) rode closely behind. With 65 kilometres (40 mi) to go, the break started attacking each other as Bennett accelerated off the front. Latour and Goldstein managed to bridge up to Bennett before eventually dropping him as well. At around the same time, Philippe Gilbert (Lotto–Soudal) and Alex Aranburu (Astana–Premier Tech) attempted to attack from the peloton but Deceuninck–Quick-Step managed to mark the attacks.
With 62 kilometres (39 mi) to go, a crash on a descent took out several riders at the back of the peloton, with other riders also falling down a small ravine. All of them managed to get back up, but the crash led to the abandonment of Roger Kluge (Lotto–Soudal) and the Team BikeExchange duo of Simon Yates and Lucas Hamilton. Among the survivors, Tim Declercq (Deceuninck–Quick-Step) and Søren Kragh Andersen (Team DSM) seemed to fare the worst, with both riders finishing over 15 minutes down. 53 kilometres (33 mi) from the finish, Latour and Goldstein were brought back by the peloton, prompting an attack from Quentin Pacher (B&B Hotels p/b KTM) a few moments later. Pacher was allowed an advantage of a minute and a half while Jan Bakelants (Intermarché–Wanty–Gobert Matériaux) also attacked from the peloton. Bakelants was eventually reeled in with 27 kilometres (17 mi) to go while Pacher was brought back with 18 kilometres (11 mi) left to the finish. Shortly afterwards, several teams attempted to split the peloton into echelons, but the winds were not strong enough to cause such splits. The sprinters' teams soon began to go to the front to prepare for a bunch sprint. In a chaotic sprint to the line, one of Cavendish's lead-out men, Davide Ballerini, managed to get a small gap after Michael Mørkøv briefly lost his wheel. Iván García Cortina (Movistar Team) soon bridged over to Ballerini with Mørkøv, Cavendish, and Jasper Philipsen (Alpecin–Fenix) on his wheel. Mørkøv successfully led out Cavendish for the win, his fourth of the race. Mørkøv managed to hold on to second place on the stage with Philipsen finishing in third. With his win, Cavendish equalled Eddy Merckx's record for the most number of Tour stage wins with 34. He also increased his lead in the points classification to 101 over Matthews. All the GC contenders finished safely in the main peloton, leaving the top ten unchanged.
The fourteenth stage took the riders from Carcassonne to Quillan, making its debut as a Tour stage finish, with a terrain that was expected to suit a breakaway. The first few kilometres were on a false flat section before the riders tackled the third-category Col du Bac [fr], a 3.1-kilometre (1.9 mi) climb with an average gradient of 5.3 percent. Another false flat section led to the intermediate sprint in Lavelanet after 76.7 kilometres (47.7 mi) before the riders reached the second-category Col de Montségur [fr], which is 4.2 kilometres (2.6 mi) long with an average gradient of 8.7 percent. A short descent led to the second-category Col de la Croix des Morts [fr], at 6.8 kilometres (4.2 mi) long with an average gradient of 5.7 percent. A flat section and short descent led to the third-category Côte de Galinagues, a 2.2-kilometre (1.4 mi) long climb with an average gradient of 9 percent. A long downhill segment led to the final climb of the day, the second-category Col de Saint-Louis [fr]. The climb, which is 4.7 kilometres (2.9 mi) long with an average of 7.4 percent, offered eight, five, and two bonus seconds to the first three riders, respectively, to reach the summit at 16.9 kilometres (10.5 mi) from the line. From there, the descent led to the finish in Quillan.
Following the aftermath of the crash the previous day, two more riders abandoned as Søren Kragh Andersen (Team DSM) and Warren Barguil (Arkéa–Samsic) did not start the stage. There were several attempts to break away, but it eventually took almost 100 kilometres (62 mi) for the breakaway to be fully established. Trek–Segafredo was especially keen on having a representative in the break, with Toms Skujiņš and Julien Bernard involved in various moves. Kristian Sbaragli (Alpecin–Fenix) kicked off proceedings and built up a lead of almost two minutes before a four-man chase group soon went away in pursuit of him. The quartet managed to bridge over to Sbaragli but their advantage continued to decrease due to the constant attacking from behind. With 106 kilometres (66 mi) to go, just after the intermediate sprint, the quintet up front was eventually caught as several riders continued to attack. On the Col de Montségur, Wout Poels (Team Bahrain Victorious) and Mattia Cattaneo (Deceuninck–Quick-Step) were able to establish a gap, with Michael Woods (Israel Start-Up Nation) also bridging to them soon after. A seven-man chase group including Guillaume Martin (Cofidis), who started the day in ninth place, also formed behind while UAE Team Emirates began to control the peloton. Near the top, Woods attacked in pursuit of the KOM points, with Poels bridging up to him and outsprinting him for the maximum points. On the descent, Cattaneo made his way back up to Woods and Poels while a group containing Pierre Rolland (B&B Hotels p/b KTM) also attacked from the peloton. At the top of the second-category Col de la Croix des Morts, Woods outsprinted Poels for the maximum points, drawing level on points with the mountains classification leader, Nairo Quintana (Arkéa–Samsic). With 72 kilometres (45 mi) to go, the seven-man group joined up with the trio at the front while the Rolland group made it to the front group with 60 kilometres (37 mi) left, making for a total of fourteen riders in the break.
As the break neared the top of the Côte de Galinagues, Poels outsprinted Woods for the KOM points, with the single point gained by Woods giving him the lead in the KOM competition. On the descent, Woods slipped on a curve, forcing some of his breakaway companions off-road. He would get back up but he had to spend extra energy to get to the front group. With 42 kilometres (26 mi) to go and still on the descent, Bauke Mollema (Trek–Segafredo) attacked off the front. He gained an advantage of more than a minute over his breakaway companions ahead of the final climb of the Col de Saint-Louis. From behind, EF Education–Nippo made their way to the front of the peloton to protect Rigoberto Urán’s second place on GC. The chasing group soon began to attack each other but Mollema kept his lead at about a minute. Mollema crested the top of the climb with a lead of more than a minute over a group containing Woods, Cattaneo, Sergio Higuita (EF Education–Nippo), and Patrick Konrad (Bora–Hansgrohe) while Martin’s group crested the top at almost a minute and a half. Mollema would go on to solo to the stage win, his second career Tour victory after his first in 2017 from a similar move on similar terrain. He crossed the line at 1' 04" ahead of Konrad and Higuita. Martin crossed the line at almost a minute and a half behind while the yellow jersey group cruised over the finish line almost seven minutes down. As a result, Martin rose to second overall at around four minutes down while Cattaneo, who finished with the first chasing group, moved into the top ten at almost ten minutes behind Tadej Pogačar (UAE Team Emirates), who kept the maillot jaune.
The fifteenth stage took the riders outside of France for the only time in this year's Tour with the riders heading from Céret to Andorre-la-Vieille. Andorra was last visited by the Tour in 2016, when Tom Dumoulin won the summit finish to Andorra Arcalis in a stage that was marred by hailstorms. As soon as the flag dropped, the riders faced the 18.4-kilometre (11.4 mi) long uncategorized climb of the Col du Fourtrou [fr]. Following the descent, the road gradually went uphill towards the intermediate sprint in Olette after 66.9 kilometres (41.6 mi) of racing. The road continued uphill towards the first-category Montée de Mont-Louis, an 8.4-kilometre (5.2 mi) long climb with an average gradient of 5.7 percent. After the KOM checkpoint, there were still about 8 kilometres (5.0 mi) of climbing before the descent, which led to the foot of the second-category Col de Puymorens, a climb with a length of 5.8 kilometres (3.6 mi) and an average gradient of 4.7 percent. A short descent immediately led to the first-category Port d'Envalira, at 10.8 kilometres (6.7 mi) long with an average gradient of 5.9 percent, which took the riders across the border into Andorra. The top of the climb is 2,408 metres (7,900 ft) above sea level, the highest point reached in the Tour, with the first rider across the top taking the Souvenir Henri Desgrange. Following a long descent, the riders reached the first-category Col de Beixalis, a 6.4-kilometre (4.0 mi) long climb with an average gradient of 8.5 percent. The top of the climb offered eight, five, and two bonus seconds to the first three riders, respectively, to reach the summit at 14.8 kilometres (9.2 mi) from the line. From there, the descent led to the finish in Andorra la Vella.
From the start, Thomas De Gendt (Lotto–Soudal) kicked off the attacks before being joined by seven other riders. A few moments later, a large group, including most of the challengers for the king of the mountains jersey, went off the front of the peloton. This group would eventually bridge up to the eight riders at the front, making it a 32-rider breakaway. On the road to the intermediate sprint, the breakaway split as several riders refused to work at the front, but the two breakaway groups would eventually regroup. At the intermediate sprint, Michael Matthews (Team BikeExchange) took maximum points to decrease his deficit in the points classification to 72. From behind, as the road began to go uphill, Nacer Bouhanni (Arkéa–Samsic) abandoned from the race as he suffered from the crash on stage 13. As the break neared the top of the first categorized climb of the day, the Montée de Mont-Louis, Michael Woods (Israel Start-Up Nation), Wout Poels (Team Bahrain Victorious), and Wout van Aert (Team Jumbo–Visma) sprinted for the KOM points, with Poels taking the maximum points ahead of van Aert and Woods. Towards the top, De Gendt, Poels, Woods, and van Aert tried to establish a gap ahead of the other breakaway riders but they would be caught with 100 kilometres (62 mi) to go. Meanwhile, the UAE Team Emirates-led peloton crested the top of the first climb more than nine minutes behind the break.
After a lull in the action, the break soon reached the second-category climb of Col de Puymorens, with Bruno Armirail (Groupama–FDJ) pacing the break for most of the day. At the top, van Aert managed to outsprint Poels with Woods in third. As a result, Poels and Woods were tied at the top of the KOM competition. On the Port d'Envalira, Julien Bernard (Trek–Segafredo) began to set a pace that began to shed riders from the break. The breakaway riders started to attack each other until Nairo Quintana (Arkéa–Samsic) established a gap 2 kilometres (1.2 mi) from the top. Quintana soloed to the top to get the maximum KOM points as well as the Souvenir Henri Desgrange before being caught on the descent. Van Aert took 8 points while Poels took 6 points which gave him the lead in the KOM competition. As soon as the riders reached the Col de Beixalis, Quintana accelerated once again before being caught again. David Gaudu (Groupama–FDJ) also made an attack before Sepp Kuss (Team Jumbo–Visma) launched his move 5 kilometres (3.1 mi) from the top of Beixalis. Only Alejandro Valverde (Movistar Team) was able to follow his move before he began to struggle following Kuss. Kuss led Valverde by around 20 seconds at the top of the Beixalis with the first chase group at about a minute and a half. Kuss maintained his gap on the descent, eventually soloing to his first Tour stage win and his team's second in this year's Tour. Valverde finished second, 23 seconds behind, while Poels led the first chase group home, 1' 15" behind.
In the GC group, UAE Team Emirates continued to control the peloton until Ineos Grenadiers and Movistar Team started to set a fast tempo at the Col de Puymorens. The pace sent several riders out the back and leaving most of the contenders isolated. On the descent of the Envalira, two riders in the top ten, Guillaume Martin (Cofidis) and Mattia Cattaneo (Deceuninck–Quick-Step), began to get distanced and despite their best efforts, they began the climb of Beixalis at a minute down on the other contenders. On the climb's steepest section, Richard Carapaz (Ineos Grenadiers) attacked but he was marked by the other contenders. Carapaz, Jonas Vingegaard (Team Jumbo–Visma), Rigoberto Urán (EF Education–Nippo), and Ben O'Connor (AG2R Citroën Team) launched more attacks but Tadej Pogačar (UAE Team Emirates) and the other contenders were able to follow each time. O'Connor and Alexey Lutsenko (Astana–Premier Tech) were distanced near the top of the Beixalis but O'Connor made it back on the descent. The GC group finished almost five minutes down on Kuss while Lutsenko ended up finishing 29 seconds further in arrears. Martin eventually lost almost four minutes while Cattaneo lost more than five minutes.
In the GC, Pogačar retained the maillot jaune with a lead of 5' 18" over Urán, who moved back up to second place. As a result of their time loss, Martin fell to ninth place, almost eight minutes down while Cattaneo fell out of the top ten at almost 15 minutes behind. Lutsenko now sits at seventh, more than seven minutes behind while Pello Bilbao (Team Bahrain Victorious), who finished with Lutsenko on the stage, moved back into the top ten, almost 11 minutes down.
On the rest day, Vincenzo Nibali (Trek–Segafredo) and Amund Grøndahl Jansen (Team BikeExchange) both withdrew from the race, the former to focus on the Olympics and the latter as a result of injuries sustained from crashes on the first stage.
Following the second and last rest day, the riders continued through the Pyrenees and returned to France with a hilly course from El Pas de la Casa to Saint-Gaudens. The stage began with a 36-kilometre (22 mi) descent to Tarascon-sur-Ariège before the riders reached the second-category Col de Port, an 11.4-kilometre (7.1 mi) long climb with an average gradient of 5.1 percent. The descent led to the intermediate sprint at Vic d'Oust after 84.7 kilometres (52.6 mi) of racing. Shortly afterwards, the riders climbed the first-category Col de la Core, a 13.1-kilometre (8.1 mi) long climb with an average gradient of 6.6 percent. Following the descent, the riders gradually climbed uphill before tackling the second-category Col de Portet-d'Aspet, a 5.4-kilometre (3.4 mi) long climb with an average gradient of 7.1 percent. After the Col de Portet-d'Aspet's technical descent, the route continued descending to the fourth-category Côte d'Aspret-Sarrat, which crested with 7 kilometres (4.3 mi) left in the stage. Though the climb is only 800 metres (2,600 ft) long, it has an average gradient of 8.4 percent. The last 400 metres (1,300 ft) of the stage ran uphill, also at an average gradient of 8.4 percent.
As soon as the flag dropped, Kasper Asgreen (Deceuninck–Quick-Step) attacked and gained an advantage of around two minutes on the peloton. Casper Pedersen (Team DSM) and Jasper Stuyven (Trek–Segafredo) attempted to join Asgreen up front but they were not able to make inroads into his lead before being caught by the peloton. On the first climb of the day, Asgreen's lead began to decrease as several riders attacked from the peloton. Asgreen would soon be joined by teammate Mattia Cattaneo and Ineos Grenadiers's Michał Kwiatkowski, but the trio crested the top with only a lead of half a minute over the yellow jersey group. They were eventually caught on the descent, with Christopher Juul-Jensen (Team BikeExchange) closing down the trio. Ahead of the intermediate sprint, Juul-Jensen went on the attack himself along with Fabien Doubey (Team TotalEnergies) and Jan Bakelants (Intermarché–Wanty–Gobert Matériaux). The trio took maximum points at the intermediate sprint while Michael Matthews (Team BikeExchange) and Sonny Colbrelli (Team Bahrain Victorious) took 13 and 11 points, respectively, to further decrease Mark Cavendish's (Deceuninck–Quick-Step) lead in the points classification. Both riders were part of an 11-man chasing group who tried to bridge to the trio up front while UAE Team Emirates began to control the peloton and let the break go.
On the Col de la Core, Patrick Konrad (Bora–Hansgrohe) attacked from the chase group, eventually bridging up with the three riders at the front. Juul-Jensen dropped back to the chase group as Konrad led the trio at the top. From behind, EF Education–Nippo briefly worked in the peloton in a bid to protect their place in the team classification. On the descent, the trio maintained their lead at around half a minute before Konrad dropped his companions on the Col de Portet-d'Aspet. The chase group also started to split as Colbrelli and David Gaudu (Groupama–FDJ) went off in pursuit of Konrad. Colbrelli and Gaudu were eventually caught by the chase group while Konrad soloed to the stage win. Colbrelli beat Matthews in the sprint for second, though both riders would still gain points and further decrease Cavendish's lead. In the peloton, Cofidis and Wout van Aert (Team Jumbo–Visma) instigated an attack on the Côte d'Aspret-Sarrat, causing a split in the peloton; however, all the contenders made it to the front group. The yellow jersey group eventually finished almost 14 minutes down on Konrad. Apart from Guillaume Martin (Cofidis) losing 4 seconds on the uphill sprint to the line, the top ten remained unchanged ahead of two consecutive summit finishes in the Pyrenees.
Stage 17 saw the riders take on the first of two consecutive summit finishes with a route from Muret to the summit of the Col de Portet. The route was the same as that of Stage 17 of the 2018 Tour, albeit preceded with 113.5 kilometres (70.5 mi) of gradual uphill that took riders to the intermediate sprint at Bagnères-de-Luchon, where Stage 17 in 2018 had started. The final 62.5 kilometres (38.8 mi) featured three climbs that amount to just under 4,500 metres (14,800 ft) of vertical climbing. From Bagnères-de-Luchon, riders took on the first of two consecutive first-category climbs, the 13.2-kilometre (8.2 mi) long Col de Peyresourde, with an average gradient of 7 percent. A descent into Loudenvielle took riders to the Col de Val Louron-Azet, a 7.4-kilometre (4.6 mi) long climb with an average gradient of 8.3 percent. Following a descent to Saint-Lary-Soulan at the foot of the hors catégorie Col de Portet, 16 kilometres (9.9 mi) of climbing at an average gradient of 8.7 percent took the riders up to 2,215 metres (7,267 ft) above sea level for the summit finish. The final climb featured multiple sections over 10 percent and apart from a single kilometre averaging 5 per cent, the gradient barely fell below 8 percent.
As it was Bastille Day, the French national holiday, French riders were especially eager to get into the breakaway for a chance to win the stage. At the start of the stage, Pierre Rolland (B&B Hotels p/b KTM) established a gap, but no one was able to bridge up to him and he was eventually caught with 163.5 kilometres (101.6 mi) to go. After a while, a group containing Lukas Pöstlberger (Bora–Hansgrohe), Anthony Perez (Cofidis), Dorian Godon (AG2R Citroën Team), and Danny van Poppel (Intermarché–Wanty–Gobert Matériaux) broke away from the peloton. The peloton would let the break go but Anthony Turgis (Team TotalEnergies) and Maxime Chevalier (B&B Hotels p/b KTM) made a last-ditch attempt to bridge to the break. Both riders managed to make it to the front group while behind, Julien Bernard (Trek–Segafredo) also tried to attack from the peloton but he was unable to make inroads into the break's lead. As UAE Team Emirates controlled the peloton, Team Jumbo–Visma was dealt a blow when Steven Kruijswijk abandoned the Tour after suffering from illness during the rest day. The break was allowed to gain an advantage of around eight and a half minutes before Israel Start-Up Nation and Arkéa–Samsic began to set a steady tempo in the peloton for their respective contenders, Michael Woods and Nairo Quintana, in the mountains classification ahead of the day's climbs. At the intermediate sprint, the leading sextet took maximum points before Michael Matthews (Team BikeExchange) finished ahead of Mark Cavendish (Deceuninck–Quick-Step) to decrease his deficit to the Manxman to 36 points.
The break soon reached the first climb of the day, the Col de Peyresourde, with a lead of eight minutes over the peloton. Their advantage began to rapidly decrease while Quintana and his teammate Élie Gesbert attacked from the peloton, with Wout Poels (Team Bahrain Victorious) following to defend his lead in the mountains classification. Pierre Latour (Team TotalEnergies) managed to bridge up to the trio as the four riders gained a lead of about 40 seconds on the peloton. However, UAE Team Emirates started to set a furious pace that brought back the quartet, but not before Latour left the three other riders behind. Turgis led the break over the top of the Peyresourde, almost three and a half minutes over Latour and around four minutes over the peloton. The break increased their lead to four and a half minutes ahead of the second climb, the Col de Val Louron-Azet, while the peloton caught Latour ahead of the climb. On the climb itself, Perez, Godon, and Turgis dropped their breakaway companions before Perez went solo off the front. Turgis continually lost time while Godon managed to pace his efforts to stay close to Perez. Pöstlberger, van Poppel, and Chevalier were caught by the peloton before reaching the top. Perez took the maximum points while Godon rode closely behind. The peloton reached the top at just under four minutes behind Perez, with Poels sprinting to the top to add four points to his mountains classification lead.
On the descent, Godon bridged up to Perez and the duo worked together to maintain a four-minute advantage over the peloton. At the bottom of the Col du Portet, Godon accelerated but he was unable to drop Perez. Perez counterattacked further up the climb, dropping Godon in the process. Behind in the peloton, UAE Team Emirates continued to set a fast tempo, sweeping up Turgis and shedding riders out the back; among their initial victims were Enric Mas (Movistar Team) and Guillaume Martin (Cofidis), two riders in the top ten on GC. Perez's lead rapidly decreased while Godon was caught with 9 kilometres (5.6 mi) to go. At around the same time, Pello Bilbao (Team Bahrain Victorious) attacked from the yellow jersey group but he would be caught shortly thereafter. With 8.5 kilometres (5.3 mi) to go, the race leader, Tadej Pogačar (UAE Team Emirates), made his first attack, catching Perez and bringing with him the Ineos Grenadiers duo of Richard Carapaz and Jonathan Castroviejo, Jonas Vingegaard (Team Jumbo–Visma), Rigoberto Urán (EF Education–Nippo), and Ben O'Connor (AG2R Citroën Team). Pogačar made another attack a few seconds later and only Carapaz, Vingegaard, and Urán could follow him. A few moments later, Urán was dropped and would continue to lose time until the finish. Towards the top, Pogačar and Vingegaard worked together to increase their gap while Carapaz continued to sit on their wheels. From the first chase group, which included Urán, O'Connor, and Wilco Kelderman (Bora–Hansgrohe), David Gaudu (Groupama–FDJ) attempted to bridge to the front group but he would not get close to the trio. With 2 kilometres (1.2 mi) to go, Carapaz surged, dropping Vingegaard while Pogačar immediately followed the move. Vingegaard slowly paced himself back, setting up a three-man sprint for the stage win. With 100 metres (330 ft) to go, Pogačar made one final attack to take his second stage win of this year's Tour, his first while wearing the maillot jaune. Vingegaard passed Carapaz to take second, 3 seconds behind. Gaudu finished fourth, 1' 19" behind while the other contenders crossed the line in ones and twos. O'Connor, Kelderman, and Bilbao lost around a minute and a half while Urán lost almost two minutes. Mas finished two and a half minutes behind while Lutsenko and Martin lost 2' 53" and 3' 39", respectively.
In the GC, Pogačar strengthened his hold on the maillot jaune with a lead of 5' 39" over Vingegaard, who moved up to second. Carapaz moved into a podium position, 5' 43" behind Pogačar while Urán dropped to fourth at more than seven minutes behind. Apart from Lutsenko and Mas switching places, the other riders in the top ten maintained their positions but at a further distance from the maillot jaune.
The mountainous eighteenth stage featured the last chance for the pure climbers to improve their GC positions and make a difference ahead of the individual time trial in two days. It featured a pair of fourth-category and hors catégorie climbs each, and at 129.7 kilometres (80.6 mi), it was the shortest stage of the 2021 Tour, apart from the two time trials and the final stage. From the start in Pau, riders travelled gradually uphill to the intermediate sprint at Pouzac after 62.7 kilometres (39.0 mi), with the two fourth-category climbs along the way. The Côte de Notre-Dame de Piétat, 2.6 kilometres (1.6 mi) long at an average gradient of 5.6 percent, crested 10.6 kilometres (6.6 mi) into the stage, while the Côte de Loucrup, 2 kilometres (1.2 mi) long at an average gradient of 7 percent, crested 44 kilometres (27 mi) later. The route continued more noticeably uphill after Pouzac until riders reached Sainte-Marie-de-Campan at the foot of the hors catégorie Col du Tourmalet. After 17.1 kilometres (10.6 mi) of climbing at an average gradient of 7.3 percent, the first rider to reach the summit of the Tourmalet, at 2,115 metres (6,939 ft) above sea level, was awarded the Souvenir Jacques Goddet. Following the descent and a few flat kilometres, the riders tackled the final climb of the stage, the hors catégorie climb up to Luz Ardiden, which was 13.3 kilometres (8.3 mi) long at an average gradient of 7.4 percent.
As soon as the flag dropped, Matej Mohorič (Team Bahrain Victorious), Sean Bennett (Team Qhubeka NextHash), and Christopher Juul-Jensen (Team BikeExchange) immediately went off the front while Cyril Barthe (B&B Hotels p/b KTM) tried to bridge up to the trio, albeit unsuccessfully. The trio attained a gap of a minute before the attacks started behind. After a while, Julian Alaphilippe (Deceuninck–Quick-Step) tried to attack but just before he was supposed to get caught by the peloton, Pierre-Luc Périchon (Cofidis) attacked and began to pace with him. With 97 kilometres (60 mi) to go, both riders would eventually make it to the front group, with the Team Bahrain Victorious-led peloton at around a minute and a half behind. The break was not allowed to gain an advantage of more than 1' 45" as the peloton kept the break in check. As the peloton reached the second climb of the day, Team BikeExchange attempted to split the peloton to drop the points classification leader, Mark Cavendish (Deceuninck–Quick-Step). Although a large group containing Sonny Colbrelli (Team Bahrain Victorious) and Michael Matthews (Team BikeExchange) managed to get a gap, the peloton rejoined at the top of the climb with Cavendish hanging on near the back. After the break took maximum points, Cavendish was successfully led out by Michael Mørkøv (Deceuninck–Quick-Step) to add two more points to his lead, as Mørkøv finished ahead of Matthews. Just after the intermediate sprint, Trek–Segafredo attempted to break away with three of their riders along with Dan Martin (Israel Start-Up Nation) and Davide Ballerini (Deceuninck–Quick-Step) but they would be caught shortly afterwards. Ahead of the Col du Tourmalet, Pierre Rolland (B&B Hotels p/b KTM) attacked together with Juul-Jensen but the latter would be dropped before the climb.
On the climb itself, the break split, with Mohorič and Alaphilippe the only surviving riders from the original break. In the chase group at around 40 seconds behind, Rolland was soon joined by Pierre Latour (Team TotalEnergies), Kenny Elissonde (Trek–Segafredo), and Valentin Madouas (Groupama–FDJ). Further up the climb, the quartet were joined by Madouas's teammate, David Gaudu, Ruben Guerreiro (EF Education–Nippo), and the Astana–Premier Tech duo of Ion Izagirre and Omar Fraile. Nairo Quintana (Arkéa–Samsic) and Miguel Ángel López (Movistar Team) also attempted to attack but both riders were swallowed up by the peloton. At this point, Ineos Grenadiers started to set a faster tempo in the peloton, rapidly decreasing the break's advantage. The chase group, apart from Rolland who was dropped, soon bridged up to Mohorič and Alaphilippe while the peloton was less than a minute down. The lead group soon began to shed riders until only Latour and Gaudu were left at the front. From behind, Rigoberto Urán (EF Education–Nippo) began to struggle as he lost contact at the back of the peloton. Near the top, king of the mountains leader Wout Poels (Team Bahrain Victorious) and Michael Woods (Israel Start-Up Nation) attacked from the peloton as they attempted to take more points for the KOM competition. Latour was first over the top of the Tourmalet, taking the Souvenir Jacques Goddet in the process. Poels managed to take 10 points at the top while Woods took 6 points. Poels increased his tally to 88 points, 16 points ahead of Woods who moved up to virtual second in the KOM competition. The peloton crossed the summit at a minute behind while Urán was a further minute and a half in arrears.
On the descent, Gaudu immediately distanced Latour as the latter struggled going down the mountain. Latour was immediately caught by a chase group consisting of Poels, Guerreiro, and Fraile. Ineos Grenadiers kept Gaudu at around a minute while also swallowing up the chase group near the foot of Luz Ardiden. Gaudu continued to lose time until he started the climb with a lead of 20 seconds. With 9.5 kilometres (5.9 mi) to go, Gaudu was caught by the yellow jersey group, still led by Ineos Grenadiers. They continued to set the tempo until Rafał Majka (UAE Team Emirates) took over with around 5 kilometres (3.1 mi) to go as he looked to set up the race leader, Tadej Pogačar. With 3.3 kilometres (2.1 mi) left, Pogačar launched his attack, followed closely by Richard Carapaz (Ineos Grenadiers), Enric Mas (Movistar Team), and the Team Jumbo–Visma duo of Jonas Vingegaard and Sepp Kuss. Kuss soon began to pace the group until the final kilometre while behind in the chase group containing the other contenders, Dan Martin attacked as he tried to bridge to the yellow jersey group. In the final kilometre, Mas accelerated off the front, but he was immediately marked by Pogačar, Vingegaard, and Carapaz. The four riders soon started to look at each other until Mas launched another attack. He managed to build a small gap, but Pogačar closed him down before attacking as well. Carapaz and Vingegaard tried to follow him, but Pogačar gradually increased his gap, eventually soloing to his second successive stage win and his third in this year's Tour. Vingegaard outsprinted Carapaz to take second place on the stage, two seconds behind. Mas held on to finish fourth at 13 seconds down while the other contenders finished around half a minute to a minute down. Urán ended up losing almost nine minutes on the day. As a result of Pogačar's stage win, he took 40 points at the top of Luz Ardiden, taking the lead in the KOM competition by 19 points. With only two points left on offer for the rest of the Tour, Pogačar effectively clinched the mountains classification pending his completion of the race.
In the GC, Pogačar retained the maillot jaune, slightly extending his lead to 5' 45" over Vingegaard. Carapaz retained the last spot on the podium, almost six minutes down and six seconds behind Vingegaard. Due to Urán losing time, all the other riders in the top ten moved up a spot while Urán held on to tenth, at more than 16 minutes behind Pogačar.
The nineteenth stage was a transition stage from Mourenx to Libourne. The stage started on a short descent before the riders tackled the sole fourth-category climb of the day, the Côte de Bareille, a 1.9-kilometre (1.2 mi) climb with an average gradient of 5.3 percent. After the climb, the course featured rolling terrain until the intermediate sprint, situated at the top of an uncategorized climb in Saint-Sever, after 54.1 kilometres (33.6 mi) of racing. From there, the stage was mostly flat apart from several lumps in the final 40 kilometres (25 mi).
Only 142 riders started the stage as Michael Woods (Israel Start-Up Nation) and Miguel Ángel López (Movistar Team) left the Tour to focus on the Olympics. A few moments after the flag dropped, a massive crash took place, taking down several riders but no one was seriously hurt. The crash split the peloton into several groups while a group containing Julien Bernard (Trek–Segafredo), Franck Bonnamour (B&B Hotels p/b KTM), Simon Clarke (Team Qhubeka NextHash), Matej Mohorič (Team Bahrain Victorious), Jonas Rutsch (EF Education–Nippo), and Georg Zimmermann (Intermarché–Wanty–Gobert Matériaux) broke away from the peloton. After a regrouping in the peloton, the six-man group built a lead of four and a half minutes before Alpecin–Fenix began to chase them down. With around 160 kilometres (99 mi) to go, another crash took down several riders in the peloton, including Enric Mas (Movistar Team) and most of Deceuninck–Quick-Step, but everyone got back up and rejoined the peloton. At the intermediate sprint, the sextet took maximum points while behind in the peloton, Michael Matthews (Team BikeExchange) and Sonny Colbrelli (Team Bahrain Victorious) took 9 and 8 points, respectively. Mark Cavendish (Deceuninck–Quick-Step) managed to take 6 points as his lead in the points classification decreased to 35 points.
After the intermediate sprint, Alpecin–Fenix stopped working in the peloton as several riders attempted to break away. Eventually, a 20-man group detached themselves and built a lead of around a minute over the peloton. Israel Start-Up Nation, Team Bahrain Victorious, Team BikeExchange, and Ineos Grenadiers soon started to work together to bring the gap to the chasers down. After their lead over the peloton was brought down to around 20 seconds, the chasing group started to split and began to slowly build their advantage. The 14-man chase group managed to bridge up to the original six-man break with 100 kilometres (62 mi) to go. Despite the best efforts of Israel Start-Up Nation and Team BikeExchange to chase, the break's lead continued to increase, and the peloton eventually knocked off the chase with 81 kilometres (50 mi) to go. The break immediately increased their advantage to more than 10 minutes until the attacks started with 45 kilometres (28 mi) to go as Élie Gesbert (Arkéa–Samsic) kicked off the hostilities. Several riders continued to attack, shedding riders from the break and splitting the group in two after an attack from Christophe Laporte (Cofidis). With 25 kilometres (16 mi) to go, after an unsuccessful attack from Nils Politt (Bora–Hansgrohe), Mohorič launched an attack and immediately built a gap. Laporte tried to bridge up to him, but Mohorič gradually increased his advantage. The chase group was unable to work together as they began to attack each other. Mohorič eventually soloed to his second stage win in this year's Tour, almost a minute ahead of Laporte, Casper Pedersen (Team DSM), and Mike Teunissen (Team Jumbo–Visma). The peloton, led by UAE Team Emirates, rolled across the line at almost 21 minutes behind Mohorič. The top ten remained unchanged ahead of the penultimate stage individual time trial.
The penultimate stage of the Tour featured the race's second individual time trial, with the riders travelling from Libourne to Saint-Émilion. The course was similar to the first time trial on Stage 5 with a rolling terrain greeted the riders on the road. The first intermediate time check was situated at Pomerol after 7.6 kilometres (4.7 mi) of racing. After 16.5 kilometres (10.3 mi), there was a short 500-metre (1,600 ft) uphill ramp with an average gradient of around 4.5 percent. There was another short ramp towards the second intermediate time check at Montagne after 20.1 kilometres (12.5 mi). The final few kilometres of the course featured a false flat towards the finish line in Saint-Émilion.
As is customary for an individual time trial, the riders set off in reverse order of their GC places. As a result, Tim Declercq (Deceuninck–Quick-Step) was the first rider off the start ramp. The first riders to set fast times were Mikkel Bjerg (UAE Team Emirates) and Stefan Bissegger (EF Education–Nippo). Bjerg set a time of 36' 45", putting him in the hot seat, but Bissegger set faster times at both intermediate time checks by slim margins. Bissegger eventually beat Bjerg's time by eight seconds. He would stay in the hot seat before Kasper Asgreen (Deceuninck–Quick-Step) began to threaten Bissegger's time. Asgreen was six seconds up at the first time check before extending his lead to 23 seconds at the second time check. He maintained his advantage to the finish, setting a time of 36' 14" and becoming the first rider to average 51 km/h (32 mph) on the day. The European time trial champion, Stefan Küng (Groupama–FDJ), soon went off the start ramp as one of the favorites for the win. Küng started out fast, beating Asgreen's time by 10 seconds at the first time check. He started to slow by the second time check as his advantage was down to 0.25 seconds. Küng eventually had to settle for a time of 36' 31", 17 seconds slower than Asgreen. Asgreen's time stood for a long time until Wout van Aert (Team Jumbo–Visma) started his ride. He set the fastest times at both intermediate time checks before setting a time of 35' 53", the only time on the day under 36 minutes. His time stood for the rest of the day as he won his second stage of this year's Tour.
The focus soon shifted to the top ten riders as there were several spots still up for grabs. Pello Bilbao (Team Bahrain Victorious), sitting in ninth on GC, was only 1' 02" behind Guillaume Martin (Cofidis) and was expected to overhaul the Frenchman. However, Bilbao struggled with the placement of his radio and ended up setting a time of 39' 06". Martin managed to limit his losses to 31 seconds as he retained his eighth place on GC. In the battle for sixth, Enric Mas (Movistar Team) had a lead of 1' 11" over Alexey Lutsenko (Astana–Premier Tech), with the latter recognized as a superior time trialist. Lutsenko eventually set a time of 37' 51" while Mas finished with a time of 38' 22", which meant that Mas protected his sixth place. Meanwhile, in fourth place, Ben O'Connor (AG2R Citroën Team) had a lead of only 32 seconds over Wilco Kelderman (Bora–Hansgrohe), who was recognized as the better time trialist. However, O'Connor was five seconds faster at the first time check. Although he lost time for the rest of the course, O'Connor only ended up losing 21 seconds to Kelderman and thus kept his fourth place on GC. Lastly, Jonas Vingegaard (Team Jumbo–Visma) was only six seconds up on Richard Carapaz (Ineos Grenadiers) in the battle for second, with the Dane recognized as the faster time trialist. Vingegaard ended up setting the third best time of 36' 25" to keep his second place while Carapaz lost more than a minute and a half to the Dane. The last rider off the start ramp was Tadej Pogačar (UAE Team Emirates), the maillot jaune. With a lead of 5' 45" over Vingegaard, Pogačar could afford to ride more conservatively and avoid taking any risks. The Slovenian eventually set a time of 36' 50", the eighth best time on the day and effectively sealed his second consecutive Tour title ahead of the procession to Paris.
The last stage of the race featured the traditional sprint finish in Paris on the Champs-Élysées. The first 42.3 kilometres (26.3 mi) featured a lumpy parcours with a single fourth-category climb, the Côte des Grès, on the way. The riders reached Paris and passed through the finish line for the first time after 53.9 kilometres (33.5 mi). The riders completed eight laps around the Champs-Élysées, with the intermediate sprint taking place in the third lap at around 40.1 kilometres (24.9 mi) from the finish. The circuit was slightly altered as the finish line was moved 300 metres (980 ft) further from the last right-hand bend and closer towards the Arc de Triomphe.
Prior to the stage, there was one non-starter as Jakob Fuglsang (Astana–Premier Tech) left the Tour due to sickness following the ITT. Much like every year, the first half of the stage was a celebratory procession with no one attacking prior to reaching Paris. UAE Team Emirates led the field onto the first passage through the finish line. Immediately afterwards, 13 riders went off the front of the peloton, but the break was quickly shut down. After a regrouping, a three-man group composed of Stefan Bissegger (EF Education–Nippo), Harry Sweeny (Lotto–Soudal), and Casper Pedersen (Team DSM) broke away from the peloton. They took maximum points at the intermediate sprint while behind, Mark Cavendish (Deceuninck–Quick-Step) was successfully led out by Michael Mørkøv to add two more points to his lead for the green jersey. The break was joined by Patrick Konrad (Bora–Hansgrohe) while Pedersen was soon called back by his team. The trio built a lead of around half a minute before being caught by the peloton with 32 kilometres (20 mi) to go.
Several riders launched more attacks before another three-man group composed of Ide Schelling (Bora–Hansgrohe), Brent Van Moer (Lotto–Soudal), and Michael Valgren (EF Education–Nippo) broke away with around 27 kilometres (17 mi) to go. The peloton kept the break under control, not letting them get a lead of more than 30 seconds. Heading into the penultimate lap, two riders from B&B Hotels p/b KTM, Cyril Gautier and Franck Bonnamour, attempted to bridge up to the trio but the peloton shut down the move. The front trio was eventually caught with around 6 kilometres (3.7 mi) remaining, just inside the final lap, as the sprinters' teams set their riders up for the final sprint. Towards the finish line, Mike Teunissen (Team Jumbo–Visma) managed to lead out his teammate, Wout van Aert, who started his sprint with around 230 metres (750 ft) to go. Jasper Philipsen (Alpecin–Fenix) tried to come around him while Cavendish was boxed in just behind van Aert. Van Aert held both riders off to win the sprint, his second consecutive win and third win in this year's race, while Philipsen and Cavendish finished second and third, respectively. Van Aert added a sprint win to his mountain stage win on stage 11 and his time trial win the previous day. Tadej Pogačar (UAE Team Emirates) finished safely in the bunch to confirm his second consecutive Tour title. The traditional prize-giving commenced shortly afterwards.