Brukowany odcinek Tour de France, który przebiegał po odcinkach znany z Paryż-Roubaix, był doskonałą okazją dla specjalistów od klasyków, ale także sprawdzianem dla faworytów, z którego nie każdy wyszedł obronną ręką. Największym pechowcem etapu był Richie Porte (BMC Racing Team), który upadł jeszcze przed pierwszym odcinkiem bruku, po zaledwie 10 kilometrach jazdy, i musiał wycofać się z wyścigu.
Pozostali faworyci trzymali się blisko czuba peletonu na najtrudniejszych odcinkach bruku, będąc eskortowanym przez swoich pomocników. Mimo to nie ustrzegli się upadków i defektów – na asfalcie leżał Rafał Majka (Bora-hansgrohe), choć jemu udało się dołączyć do grupy, a kilka defektów miał Romain Bardet (Ag2R La Mondiale), który na mecie poniósł straty.
Po pokonaniu 156 kilometrów, na które składało się też 15 odcinków bruku o łącznej długośc 22 kilometrów, na finiszu o zwycięstwo walczyli Van Avermaet, Degenkolb oraz Yves Lampaert (Quick-Step Floors), którzy oderwali się od peletonu na jednym z trudniejszych odcinków bruku - Camphin-en-Pévèle – na 17 kilometrów przed metą i razem dojechali do Roubaix. Tam, choć długo wcześniej jechał na prowadzeniu, najszybszy był Degenkolb, który rozpoczął finisz z pierwszej pozycji i nie dał się wyprzedzić pozostałej dwójce.
Czwarte miejsce wywalczył po akcji na ostatnich kilometrach Peter Sagan (Bora-hansgrohe), dzięki czemu umocnił się na prowadzeniu w klasyfikacji punktowej. Majka finiszował na 30. miejscu i awansował na 6. miejsce w klasyfikacji generalnej.
Wyniki 9. etapu:
1 John Degenkolb (Ger) Trek-Segafredo 3:24:26
2 Greg Van Avermaet (Bel) BMC Racing Team
3 Yves Lampaert (Bel) Quick-Step Floors
4 Philippe Gilbert (Bel) Quick-Step Floors 0:00:19
5 Peter Sagan (Svk) Bora-Hansgrohe 0:00:19
6 Jasper Stuyven (Bel) Trek-Segafredo 0:00:19
7 Bob Jungels (Lux) Quick-Step Floors 0:00:19
8 André Greipel (Ger) Lotto Soudal 0:00:27
9 Edvald Boasson Hagen (Nor) Dimension Data
10 Timothy Dupont (Bel) Wanty-Groupe Gobert
Klasyfikacja generalna po 9. etapie:
1 Greg Van Avermaet (Bel) BMC Racing Team 36:07:17
2 Geraint Thomas (GBr) Team Sky 0:00:43
3 Philippe Gilbert (Bel) Quick-Step Floors 0:00:44
4 Bob Jungels (Lux) Quick-Step Floors 0:00:50
5 Alejandro Valverde (Spa) Movistar Team 0:01:31
6 Rafał Majka (Pol) Bora-Hansgrohe 0:01:32
7 Jakob Fuglsang (Den) Astana Pro Team 0:01:33
8 Chris Froome (GBr) Team Sky 0:01:42
9 Adam Yates (GBr) Mitchelton-Scott
10 Mikel Landa (Spa) Movistar Team