# 2018 Tour de France, Stage 12 to Stage 21

The 2018 Tour de France was the 105th edition of Tour de France, one of cycling's Grand Tours. The Tour began in Noirmoutier-en-l'Île with flat stage on 7 July, and Stage 12 occurred on 19 July with a mountainous stage from Bourg-Saint-Maurice. The race finished on the Champs-Élysées in Paris on 29 July.

## Classification standings

Legend :
| Denotes the leader of the general classification | Denotes the leader of the mountains classification |
| Denotes the leader of the points classification | Denotes the leader of the young rider classification |
| Denotes the leader of the team classification | Denotes the winner of the combativity award |

## Stage 12

19 July 2018 – Bourg-Saint-Maurice to Alpe d'Huez, 175 km (108.7 mi)
The riders departed southwest from Bourg-Saint-Maurice, with racing starting at Bellentre. After continuing to Moûtiers, the riders turned northwest to Bonneval-Tarentaise and then headed southwest on the 25.3 km (15.7 mi) Hors catégorie climb of the Col de la Madeleine to 2,000 m (6,600 ft). After descending to the valley floor at La Chambre, the riders turned southeast and faced the 3.4 km (2.1 mi) climb of the category 2 Lacets de Montvernier [fr] and descended south to an intermediate sprint at Saint-Jean-de-Maurienne. The riders then began the 29 km (18 mi) climb south and then west to the Hors catégorie Col de la Croix de Fer at 2,067 m (6,781 ft). The route then descended west, passing the Grand'Maison Dam, and then south through Allemont, to the Hors catégorie 13.8 km (8.6 mi) climb from Le Bourg-d'Oisans to the stage finish at Alpe d'Huez at 1,850 m (6,070 ft).
Rigoberto Urán withdrew from the race before the start of the stage, having ridden with an injury from Stage 9. The stage was won by Geraint Thomas, becoming the first rider in the race's history to win on the legendary Alpe while wearing the yellow jersey. General classification contender Vincenzo Nibali, who was fourth overall, was forced to withdraw from the Tour following the stage after an incident near the summit of Alpe d'Huez where he fell off his bike. Although he remounted his bike and finished the stage, he was soon transported to hospital in an ambulance and diagnosed with a fractured vertebrae. It was initially suspected that the crash had been caused by a police motorcycle driving in front of him, but it later emerged that he crashed after being caught in a spectator's camera strap. Nibali's team management saw the lack of crowd control from the gendarmerie (French Armed Forces police) and spectators lighting flares as contributing factors. While race director Christian Prudhomme appealed to fans to show the riders more respect, and personally apologised to the team and promised that the safety would be improved in the future. The team management believed the ASO could be held responsible for the incident, and the incident later became a legal matter when Nibali filed a complaint to the French police.
Stage 12 result :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 5h 18' 37" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 2" |
| 3 | Romain Bardet (FRA) | AG2R La Mondiale | + 3" |
| 4 | Chris Froome (GBR) | Team Sky | + 4" |
| 5 | Mikel Landa (ESP) | Movistar Team | + 7" |
| 6 | Primož Roglič (SLO) | LottoNL–Jumbo | + 13" |
| 7 | Vincenzo Nibali (ITA) | Bahrain–Merida | + 13" |
| 8 | Jakob Fuglsang (DEN) | Astana | + 42" |
| 9 | Nairo Quintana (COL) | Movistar Team | + 47" |
| 10 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 53" |
General classification after Stage 12 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 49h 24' 43" |
| 2 | Chris Froome (GBR) | Team Sky | + 1' 39" |
| 3 | Tom Dumoulin (NED) | Team Sunweb | + 1' 50" |
| 4 | Vincenzo Nibali (ITA) | Bahrain–Merida | + 2' 37" |
| 5 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 46" |
| 6 | Romain Bardet (FRA) | AG2R La Mondiale | + 3' 07" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 3' 13" |
| 8 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 3' 43" |
| 9 | Nairo Quintana (COL) | Movistar Team | + 4' 13" |
| 10 | Dan Martin (IRL) | UAE Team Emirates | + 5' 11" |

## Stage 13

20 July 2018 – Le Bourg-d'Oisans to Valence, 169 km (105 mi)
The stage departed heading north and then downhill west to Vizille. After passing over the category 3 Côte de Brié, the riders turned northwest and descended into Grenoble. The route continued north and then west to an intermediate sprint at Saint-Quentin-sur-Isère. Heading southwest through Rovon, the riders eventually turned southeast to Pont-en-Royans and then south over the category 4 Côte de Sainte-Eulalie-en-Royans. The route then meandered west to Hostun and continued on an uncategorised climb southwest, through Rochefort-Samson, and gradually descending to Peyrus. The race then turned west, heading around the outskirts of Chabeuil, to a flat finish in Valence.
Vincenzo Nibali withdrew from the race before the start of the stage, suffering from a fracture of a vertebra as a consequence of a collision with a spectator on the climbing of the Alpe d'Huez. Until his withdrawal, he was fourth on the general classification.
Stage 13 result :
| Rank | Rider | Team | Time |
| 1 | Peter Sagan (SVK) | Bora–Hansgrohe | 3h 45' 55" |
| 2 | Alexander Kristoff (NOR) | UAE Team Emirates | + 0" |
| 3 | Arnaud Démare (FRA) | Groupama–FDJ | + 0" |
| 4 | John Degenkolb (GER) | Trek–Segafredo | + 0" |
| 5 | Greg Van Avermaet (BEL) | BMC Racing Team | + 0" |
| 6 | Yves Lampaert (BEL) | Quick-Step Floors | + 0" |
| 7 | Magnus Cort Nielsen (DEN) | Astana | + 0" |
| 8 | Andrea Pasqualon (ITA) | Wanty–Groupe Gobert | + 0" |
| 9 | Sonny Colbrelli (ITA) | Bahrain–Merida | + 0" |
| 10 | Taylor Phinney (USA) | EF Education First–Drapac | + 0" |
General classification after Stage 13 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 53h 10' 38" |
| 2 | Chris Froome (GBR) | Team Sky | + 1' 39" |
| 3 | Tom Dumoulin (NED) | Team Sunweb | + 1' 50" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 46" |
| 5 | Romain Bardet (FRA) | AG2R La Mondiale | + 3' 07" |
| 6 | Mikel Landa (ESP) | Movistar Team | + 3' 13" |
| 7 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 3' 43" |
| 8 | Nairo Quintana (COL) | Movistar Team | + 4' 13" |
| 9 | Dan Martin (IRL) | UAE Team Emirates | + 5' 11" |
| 10 | Jakob Fuglsang (DEN) | Astana | + 5' 45" |

## Stage 14

21 July 2018 – Saint-Paul-Trois-Châteaux to Mende, 187 km (116 mi)
The riders departed west from Saint-Paul-Trois-Châteaux, though Bourg-Saint-Andéol and Vallon-Pont-d'Arc. After heading around the northern side of Sampzon, the route turned southwest to the category 4 Côte du Grand Châtaignier and wound south to an intermediate sprint at Bessèges. Continuing west, the race passed through Génolhac, going over the category 2 climb of the Col de la Croix-de-Berthel [fr] to 1,088 m (3,570 ft), with a short descent to Le Pont-de-Montvert, and then climbing the category 3 Col du Pont sans Eau to 1,084 m (3,556 ft). After descending to Balsièges, the race turned north and then headed west through Mende, to the finish on the plateau beyond the 3 km (1.9 mi) 10.2% gradient climb of the category 2 Côte de la Croix Neuve [fr] to 1,055 m (3,461 ft).
Stage 14 result :
| Rank | Rider | Team | Time |
| 1 | Omar Fraile (ESP) | Astana | 4h 41' 57" |
| 2 | Julian Alaphilippe (FRA) | Quick-Step Floors | + 6" |
| 3 | Jasper Stuyven (BEL) | Trek–Segafredo | + 6" |
| 4 | Peter Sagan (SVK) | Bora–Hansgrohe | + 12" |
| 5 | Damiano Caruso (ITA) | BMC Racing Team | + 17" |
| 6 | Simon Geschke (GER) | Team Sunweb | + 19" |
| 7 | Nicolas Edet (FRA) | Cofidis | + 19" |
| 8 | Lilian Calmejane (FRA) | Direct Énergie | + 23" |
| 9 | Daryl Impey (RSA) | Mitchelton–Scott | + 30" |
| 10 | Thomas De Gendt (BEL) | Lotto–Soudal | + 37" |
General classification after Stage 14 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 58h 10' 44" |
| 2 | Chris Froome (GBR) | Team Sky | + 1' 39" |
| 3 | Tom Dumoulin (NED) | Team Sunweb | + 1' 50" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 38" |
| 5 | Romain Bardet (FRA) | AG2R La Mondiale | + 3' 21" |
| 6 | Mikel Landa (ESP) | Movistar Team | + 3' 42" |
| 7 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 3' 57" |
| 8 | Nairo Quintana (COL) | Movistar Team | + 4' 23" |
| 9 | Jakob Fuglsang (DEN) | Astana | + 6' 14" |
| 10 | Dan Martin (IRL) | UAE Team Emirates | + 6' 54" |

## Stage 15

22 July 2018 – Millau to Carcassonne, 181 km (112 mi)
The race departed west from Millau, reaching the category 3 Côte de Luzençon after 9 km (5.6 mi). After passing through Saint-Affrique and Belmont-sur-Rance, the riders faced the 10.2 km (6.3 mi) category 2 climb of the Col de Sié, then descending through Lacaune-les-Bains, Brassac and Boissezon. The riders then turned south and, after reaching an intermediate sprint at Mazamet, the race climbed the 12.3 km (7.6 mi) category 1 Pic de Nore to 1,205 m (3,953 ft). The route then descended through Cabrespine to Villalier, and continued to a slight uphill finish in Carcassonne.
Stage 15 result :
| Rank | Rider | Team | Time |
| 1 | Magnus Cort Nielsen (DEN) | Astana | 4h 25' 52" |
| 2 | Ion Izagirre (ESP) | Bahrain–Merida | + 0" |
| 3 | Bauke Mollema (NED) | Trek–Segafredo | + 2" |
| 4 | Michael Valgren (DEN) | Astana | + 29" |
| 5 | Toms Skujiņš (LAT) | Trek–Segafredo | + 34" |
| 6 | Domenico Pozzovivo (ITA) | Bahrain–Merida | + 34" |
| 7 | Lilian Calmejane (FRA) | Direct Énergie | + 34" |
| 8 | Rafał Majka (POL) | Bora–Hansgrohe | + 37" |
| 9 | Nikias Arndt (GER) | Team Sunweb | + 2' 31" |
| 10 | Julien Bernard (FRA) | Trek–Segafredo | + 2' 31" |
General classification after Stage 15 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 62h 49' 47" |
| 2 | Chris Froome (GBR) | Team Sky | + 1' 39" |
| 3 | Tom Dumoulin (NED) | Team Sunweb | + 1' 50" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 38" |
| 5 | Romain Bardet (FRA) | AG2R La Mondiale | + 3' 21" |
| 6 | Mikel Landa (ESP) | Movistar Team | + 3' 42" |
| 7 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 3' 57" |
| 8 | Nairo Quintana (COL) | Movistar Team | + 4' 23" |
| 9 | Jakob Fuglsang (DEN) | Astana | + 6' 14" |
| 10 | Dan Martin (IRL) | UAE Team Emirates | + 6' 54" |

## Rest day 2

23 July 2018 – Carcassonne
Damien Howson retired from the race, due to a wrist fracture sustained during a crash the previous day.

## Stage 16

24 July 2018 – Carcassonne to Bagnères-de-Luchon, 218 km (135 mi)
The race departed west from Carcassonne, heading through Montréal to the category 4 Côte de Fanjeaux. After passing through Belpech, the riders reached the category 4 Côte de Pamiers. The route traveled through Le Mas-d'Azil and Lescure, to an intermediate sprint at Saint-Girons. The race then began a gradual climb to the category 2 Col de Portet d'Aspet to 1,069 m (3,507 ft), followed by a short descent, and then climbed the category 1 Col de Menté to 1,349 m (4,426 ft). Meandering south into Spain, the race headed through Les and Bossòst, to begin the climb of the category 1 Col du Portillon to 1,292 m (4,239 ft) and descend back into France, to the finish line at Bagnères-de-Luchon.
At 26 km (16 mi) into the stage, the police used tear gas to stop a protest by local farmers who had placed hay bales on the road. When the riders crossed that point, there was still tear gas in the air. The race was neutralized for about 15 minutes because several riders had problems with their eyes and had to rinse them.
Philippe Gilbert led the stage at the descent from the Col de Portet d'Aspet. On the descent, he crashed into a wall and fell down a ravine, but managed to recover himself to continue to the end of the stage. However, on medical inspection of his leg injury, after the stage, he was found unfit to continue the race. Adam Yates suffered a crash at 6.5 km (4 mi) from the finish, while leading the stage on the descent from the Col du Portillon, but was able to continue the race with minor injury.
Stage 16 result :
| Rank | Rider | Team | Time |
| 1 | Julian Alaphilippe (FRA) | Quick-Step Floors | 5h 13' 22" |
| 2 | Gorka Izagirre (ESP) | Bahrain–Merida | + 15" |
| 3 | Adam Yates (GBR) | Mitchelton–Scott | + 15" |
| 4 | Bauke Mollema (NED) | Trek–Segafredo | + 15" |
| 5 | Domenico Pozzovivo (ITA) | Bahrain–Merida | + 18" |
| 6 | Robert Gesink (NED) | LottoNL–Jumbo | + 37" |
| 7 | Michael Valgren (DEN) | Astana | + 56" |
| 8 | Gregor Mühlberger (AUT) | Bora–Hansgrohe | + 56" |
| 9 | Marc Soler (ESP) | Movistar Team | + 1' 10" |
| 10 | Pierre Latour (FRA) | AG2R La Mondiale | + 1' 18" |
General classification after Stage 16 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 68h 12' 01" |
| 2 | Chris Froome (GBR) | Team Sky | + 1' 39" |
| 3 | Tom Dumoulin (NED) | Team Sunweb | + 1' 50" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 38" |
| 5 | Romain Bardet (FRA) | AG2R La Mondiale | + 3' 21" |
| 6 | Mikel Landa (ESP) | Movistar Team | + 3' 42" |
| 7 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 3' 57" |
| 8 | Nairo Quintana (COL) | Movistar Team | + 4' 23" |
| 9 | Jakob Fuglsang (DEN) | Astana | + 6' 14" |
| 10 | Dan Martin (IRL) | UAE Team Emirates | + 6' 54" |

## Stage 17

25 July 2018 – Bagnères-de-Luchon to Saint-Lary-Soulan Col de Portet, 65 km (40 mi)
For the shortest mass start route of the Tour, riders departed west from Bagnères-de-Luchon, ascending the 14.9 km (9.3 mi) category 1 climb through the Col de Peyresourde to the Montée de Peyragudes at 1,645 m (5,397 ft). The race then descended to a sprint at Loudenvielle, before the 7.4 km (4.6 mi) category 1 climb to the Col de Val Louron-Azet at 1,580 m (5,180 ft). Following a descent to Saint-Lary-Soulan, the race began the Hors catégorie 16 km (9.9 mi) climb to the finish at the Col de Portet at an altitude of 2,215 m (7,267 ft), for the Souvenir Henri Desgrange.
Stage 17 result :
| Rank | Rider | Team | Time |
| 1 | Nairo Quintana (COL) | Movistar Team | 2h 21' 27" |
| 2 | Dan Martin (IRL) | UAE Team Emirates | + 28" |
| 3 | Geraint Thomas (GBR) | Team Sky | + 47" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 52" |
| 5 | Tom Dumoulin (NED) | Team Sunweb | + 52" |
| 6 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 1' 05" |
| 7 | Egan Bernal (COL) | Team Sky | + 1' 33" |
| 8 | Chris Froome (GBR) | Team Sky | + 1' 35" |
| 9 | Mikel Landa (ESP) | Movistar Team | + 1' 35" |
| 10 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 2' 01" |
General classification after Stage 17 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 70h 34' 11" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 1' 59" |
| 3 | Chris Froome (GBR) | Team Sky | + 2' 31" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 47" |
| 5 | Nairo Quintana (COL) | Movistar Team | + 3' 30" |
| 6 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 4' 19" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 4' 34" |
| 8 | Romain Bardet (FRA) | AG2R La Mondiale | + 5' 13" |
| 9 | Dan Martin (IRL) | UAE Team Emirates | + 6' 33" |
| 10 | Jakob Fuglsang (DEN) | Astana | + 9' 31" |

## Stage 18

26 July 2018 – Trie-sur-Baïse to Pau, 172 km (107 mi)
The race departed from Trie-sur-Baïse, heading north to Miélan. The riders then continued northwest to Marciac, and then southwest to Maubourguet. After heading northwest and climbing the category 4 Côte de Madiran, the race continued to an intermediate sprint at Aurensan and headed on to Aire-sur-l'Adour. The route then meandered west through Geaune to Samadet and turned southeast. The race then continued through Auriac to the category 4 climb of the Côte d'Anos. The riders continued south to the western outskirts of Morlaàs, before heading southwest to a flat finish in Pau.
Stage 18 result :
| Rank | Rider | Team | Time |
| 1 | Arnaud Démare (FRA) | Groupama–FDJ | 3h 46' 50" |
| 2 | Christophe Laporte (FRA) | Cofidis | + 0" |
| 3 | Alexander Kristoff (NOR) | UAE Team Emirates | + 0" |
| 4 | Edvald Boasson Hagen (NOR) | Team Dimension Data | + 0" |
| 5 | Sonny Colbrelli (ITA) | Bahrain–Merida | + 0" |
| 6 | Maximiliano Richeze (ARG) | Quick-Step Floors | + 0" |
| 7 | John Degenkolb (GER) | Trek–Segafredo | + 0" |
| 8 | Peter Sagan (SVK) | Bora–Hansgrohe | + 0" |
| 9 | Taylor Phinney (USA) | EF Education First–Drapac | + 0" |
| 10 | Timothy Dupont (BEL) | Wanty–Groupe Gobert | + 0" |
General classification after Stage 18 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 74h 21' 01" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 1' 59" |
| 3 | Chris Froome (GBR) | Team Sky | + 2' 31" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 47" |
| 5 | Nairo Quintana (COL) | Movistar Team | + 3' 30" |
| 6 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 4' 19" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 4' 34" |
| 8 | Romain Bardet (FRA) | AG2R La Mondiale | + 5' 13" |
| 9 | Dan Martin (IRL) | UAE Team Emirates | + 6' 33" |
| 10 | Jakob Fuglsang (DEN) | Astana | + 9' 31" |

## Stage 19

27 July 2018 – Lourdes to Laruns, 200 km (120 mi)
The race departed east from Lourdes with racing starting at Arcizac-ez-Angles. The riders then climbed the category 4 Côte de Loucrup, and headed south through Montgaillard to Bagnères-de-Bigorre. The riders continued east through Mauvezin to the category 4 Côte de Capvern-les-Bains. Continuing south, the race eventually reached an intermediate sprint at Sarrancolin. On turning northwest at Arreau, the riders began the 12 km (7.5 mi) climb to the category 1 Col d'Aspin to 1,490 m (4,890 ft), followed by a descent to Sainte-Marie-de-Campan. The race then took the climb through La Mongie to the summit of the Hors catégorie Col du Tourmalet, for the Souvenir Jacques Goddet, at 2,115 m (6,939 ft). On descending through Luz-Saint-Sauveur, the race then took the road north, through Pierrefitte-Nestalas to the valley floor at Argelès-Gazost. Turning southwest, the route passed over the 8.6 km (5.3 mi) category 2 climb to the Col des Bordères [fr] at 1,156 m (3,793 ft). With a brief descent to Arrens, the riders then began the 16.6 km (10.3 mi) climb, through the uncategorised Col du Soulor, to the Hors catégorie Col d'Aubisque to 1,709 m (5,607 ft). The race then descended through Eaux-Bonnes to the finish line in Laruns.
Stage 19 result :
| Rank | Rider | Team | Time |
| 1 | Primož Roglič (SLO) | LottoNL–Jumbo | 5h 28' 17" |
| 2 | Geraint Thomas (GBR) | Team Sky | + 19" |
| 3 | Romain Bardet (FRA) | AG2R La Mondiale | + 19" |
| 4 | Dan Martin (IRL) | UAE Team Emirates | + 19" |
| 5 | Rafał Majka (POL) | Bora–Hansgrohe | + 19" |
| 6 | Tom Dumoulin (NED) | Team Sunweb | + 19" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 19" |
| 8 | Chris Froome (GBR) | Team Sky | + 19" |
| 9 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 31" |
| 10 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 31" |
General classification after Stage 19 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 79h 49' 31" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 2' 05" |
| 3 | Primož Roglič (SLO) | LottoNL–Jumbo | + 2' 24" |
| 4 | Chris Froome (GBR) | Team Sky | + 2' 37" |
| 5 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 4' 37" |
| 6 | Mikel Landa (ESP) | Movistar Team | + 4' 40" |
| 7 | Romain Bardet (FRA) | AG2R La Mondiale | + 5' 15" |
| 8 | Dan Martin (IRL) | UAE Team Emirates | + 6' 39" |
| 9 | Nairo Quintana (COL) | Movistar Team | + 10' 26" |
| 10 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 11' 49" |

## Stage 20

28 July 2018 – Saint-Pée-sur-Nivelle to Espelette, 31 km (19 mi) (ITT)
The riders departed northeast, from Saint-Pée-sur-Nivelle, to the first timecheck on the outskirts of Ustaritz. The route then turned south to Souraïde and headed northwest to the second timecheck, before returning through the village. The riders then turned south to climb the Col de Pinodieta, a route covering a distance of 900 m (980 yd) to an elevation of 172 m (564 ft) at a gradient of 10.2%, and then descended northeast to the finish at Espelette. The route was expected to take each rider around 44 minutes.
Stage 20 result :
| Rank | Rider | Team | Time |
| 1 | Tom Dumoulin (NED) | Team Sunweb | 40' 52" |
| 2 | Chris Froome (GBR) | Team Sky | + 1" |
| 3 | Geraint Thomas (GBR) | Team Sky | + 14" |
| 4 | Michał Kwiatkowski (POL) | Team Sky | + 50" |
| 5 | Søren Kragh Andersen (DEN) | Team Sunweb | + 51" |
| 6 | Bob Jungels (LUX) | Quick-Step Floors | + 52" |
| 7 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 1' 02" |
| 8 | Primož Roglič (SLO) | LottoNL–Jumbo | + 1' 12" |
| 9 | Marc Soler (ESP) | Movistar Team | + 1' 22" |
| 10 | Michael Hepburn (AUS) | Mitchelton–Scott | + 1' 23" |
General classification after Stage 20 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 80h 30' 37" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 1' 51" |
| 3 | Chris Froome (GBR) | Team Sky | + 2' 24" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 3' 22" |
| 5 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 6' 08" |
| 6 | Romain Bardet (FRA) | AG2R La Mondiale | + 6' 57" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 7' 37" |
| 8 | Dan Martin (IRL) | UAE Team Emirates | + 9' 05" |
| 9 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 12' 37" |
| 10 | Nairo Quintana (COL) | Movistar Team | + 14' 18" |

## Stage 21

29 July 2018 – Houilles to Paris (Champs-Élysées), 115 km (71 mi)
The race departed west from Houilles travelling to Maisons-Laffitte. The route then turned southwest to Saint-Germain-en-Laye, northwest to Poissy and then southwest to the western side of Feucherolles. The riders then headed southeast through Chavenay to Villepreux, and continued east through Rocquencourt to Saint-Cloud. The route then turned north to Suresnes and turned west to cross the River Seine at the Pont de Suresnes [fr]. The riders then crossed the Bois de Boulogne, to enter Paris at the Porte Maillot, and travelled along the Avenue de la Grande Armée. After travelling along the Rue de Presbourg, the riders turned onto the Avenue Marceau and then the Avenue Montaigne, before entering the usual circuit at the Marcel Dassault roundabout [fr]. The race then continued along the Champs-Élysées to the Quai des Tuileries, turned left into the tunnel beneath the Tuileries Garden and then left onto the Rue de Rivoli. The riders then passed through the Place de la Concorde and headed back onto the Champs-Élysées, for the first pass of the finish line. The circuit continued around the Arc de Triomphe and back down the Champs-Élysées. An intermediate sprint took place near the top of the Champs-Élysées, after passing the finish line for the third time. The race ended on the ninth crossing of the finish line.
Stage 21 result :
| Rank | Rider | Team | Time |
| 1 | Alexander Kristoff (NOR) | UAE Team Emirates | 2h 46' 36" |
| 2 | John Degenkolb (GER) | Trek–Segafredo | + 0" |
| 3 | Arnaud Démare (FRA) | Groupama–FDJ | + 0" |
| 4 | Edvald Boasson Hagen (NOR) | Team Dimension Data | + 0" |
| 5 | Christophe Laporte (FRA) | Cofidis | + 0" |
| 6 | Maximiliano Richeze (ARG) | Quick-Step Floors | + 0" |
| 7 | Sonny Colbrelli (ITA) | Bahrain–Merida | + 0" |
| 8 | Peter Sagan (SVK) | Bora–Hansgrohe | + 0" |
| 9 | Andrea Pasqualon (ITA) | Wanty–Groupe Gobert | + 0" |
| 10 | Jasper De Buyst (BEL) | Lotto–Soudal | + 0" |
General classification after Stage 21 :
| Rank | Rider | Team | Time |
| 1 | Geraint Thomas (GBR) | Team Sky | 83h 17' 13" |
| 2 | Tom Dumoulin (NED) | Team Sunweb | + 1' 51" |
| 3 | Chris Froome (GBR) | Team Sky | + 2' 24" |
| 4 | Primož Roglič (SLO) | LottoNL–Jumbo | + 3' 22" |
| 5 | Steven Kruijswijk (NED) | LottoNL–Jumbo | + 6' 08" |
| 6 | Romain Bardet (FRA) | AG2R La Mondiale | + 6' 57" |
| 7 | Mikel Landa (ESP) | Movistar Team | + 7' 37" |
| 8 | Dan Martin (IRL) | UAE Team Emirates | + 9' 05" |
| 9 | Ilnur Zakarin (RUS) | Team Katusha–Alpecin | + 12' 37" |
| 10 | Nairo Quintana (COL) | Movistar Team | + 14' 18" |