Matej Mohorič, Christopher Juul-Jensen en Sean Bennett vormden de eerste ontsnapping van de etappe met Julian Alaphilippe solo achter hen aan. Pierre-Luc Périchon sloot zich bij Alaphilippe aan, en samen wisten ze het gat met de koplopers te dichten. Juul-Jensen liet zich afzakken om Michael Matthews te helpen bij de tussensprint. Dit had echter geen positief resultaat, want het was Thomas Cavendish die de sprint voor de vijfde plaats won. Direct na de sprint probeerde Trek-Segafredo een ontsnapping te vormen om Kenny Elissonde te lanceren, maar pakten te weinig ruimte om weg te kunnen blijven. Nog voor de beklimming van de Col du Tourmalet begon, lieten Bennett en Périchon de andere twee koplopers gaan, terwijl Juul-Jensen samen met Pierre Rolland een nieuwe poging deed om bij de koplopers te komen.
Juul-Jensen moest zich laten terugzakken naar het peloton, maar Pierre Latour, Elissonde en Valentin Madouas gingen ook in de aanval en de vier Fransen kwamen samen tot een achtervolgingsgroep. David Gaudu, Jon Izagirre, Ruben Guerreiro en Omar Fraile sloten zich bij deze groep aan en op het moment dat zij erbij kwamen, ontsnapte Elissonde. INEOS Grenadiers leidde het peloton in dienst van Richard Carapaz. De beide kopgroepen kwamen bij elkaar, maar vielen toen direct weer uit elkaar met Gaudu, Alaphilippe en Guerrero en later ook Latour als nieuwe kopgroep. Alaphilippe viel nog voor de top weg. Rigoberto Urán moest het peloton al vroeg laten gaan. Michael Woods viel kort voor de top aan voor de bergpunten samen met bolletjestruidrager Wout Poels. Latour was met Gaudu het eerst boven, achter hen volgden Guerrero, Poels, Fraile en Woods. Het peloton had iets minder dan een minuut achterstand.
Al vroeg in de afdaling loste Gaudu Latour. Het peloton, met nog circa veertig renners in de groep, haalde de achtervolgers bij. Bij het begin van de eindklim naar Luz-Ardiden had Gaudu nog iets minder dan twintig seconden voorsprong. Vroeg in de klim werd hij teruggehaald, waarna de groep langzaam bleef krimpen onder het geweld van INEOS Grenadiers. Met nog ruim drie kilometer te rijden ging Tadej Pogačar aan. Richard Carapaz, Jonas Vingegaard, Sepp Kuss en Enric Mas konden de Sloveen volgen. Kuss leidde deze groep verder de berg op in dienst van Vingegaard. In de groep achter hen ging Daniel Martin in de tegenaanval. In de laatste kilometer liet Kuss de anderen gaan. Mas probeerde te demarreren, maar Pogačar haalde hem terug en ging door, daarmee de etappe winnende vlak voor Vingegaard en Carapaz. Door de bonuspunten bij de bergaankomsten in de voorafgaande en deze etappe, pakte Pogačar hiermee niet alleen de etappezege en het algemeen klassement, maar ook het bergklassement.