Etap, kończący się w Szczyrku, rozstrzygnął się na ostatnich 500 metrach wyścigu, kiedy to kolarze pokonywali stromą ściankę, prowadzącą na metę. Tam zaatakował Teuns, a przy spóźnionej reakcji rywali, zdołał dowieźć do mety niewielką przewagę nad atakującymi na ostatnich 100 metrach Saganem i Majką. Tuż za tą trójka zameldował się Wilco Keldermann (Team Sunweb), a cała czwórka finiszowała kilka sekund przed rywalami, którzy na metę wjeżdżali w kilkumetrowych odstępach.
Dzięki bonifikacie za drugie miejsce Sagan wrócił na pozycję lidera wyścigu, a na trzecie miejsce awansował Majka. Dwójkę kolarzy Bora-hansgrohe rozdziela dzisiejszy zwycięzca, Teuns.
Nieco nietypowo, już w pierwszej fazie wyścigu kolarze ścigali się w górach. Etap z Jaworzna do Szczyrku liczył 161 kilometrów i wiódł przez podjazdy pod Salmopol i Zameczek, a na metę prowadziła krótka, ale sztywna ścianka. Po pierwszych płaskich 70 kilometrach, na których utworzyła się siedmioosobowa czołówka, peleton rozpoczął rundy, na których wspinał się dwukrotnie pod Salmopol i Zameczek. Trzyminutowa przewaga ucieczki, w skład której wychodzili Maciej Paterski (CCC Sprandi Polkowice) i Adam Stachowiak (Orlen CCC Polska), a także Jose Goncalves (Katiusza-Alpecin), Sebastien Reichenbach (FDJ), Remi Cavagna (Quick-Step Floors), Maxime Monfort (Lotto Soudal) oraz Bert-Jan Lindeman (LottoNL-Jumbo), zaczęła wtedy spadać. Szczególnie aktywny na górskich premiach był Paterski, który był pierwszy pod Salmopol i drugi pod Zameczek, zapewniając sobie koszulkę najlepszego górala Tauron, ale potem siły opuściły uciekinierów i peleton skasował tę akcję na 40 kilometrów przed metą.
Kolarze Team Sky dyktowali mocne tempo, uniemożliwiając skuteczne ataki. Dopiero na dwa kilometry przed szczytem drugiej wspinaczki pod Salmopol zaatakował Ilnur Zakarin (Katiusza-Alpecin), ale skuteczniejsza była kontra Jacka Haiga (Orica-Scott). Australijczyk prowadził przez kilkanaście kilometrów i dopiero na kilometr przed metą został doścignięty przez grupę faworytów wyścigu, która wyłoniła się na wcześniejszym podjeździe i która na ściance miała walczyć o zwycięstwo.
Valerio Conti (UAE Team Emirates) dał sygnał do ataku. Włoch prowadził przez kilkaset metrów, zanim zmienił go Adam Yates (Orica-Scott). Dopiero atak Teunsa był jednak skuteczny, a wobec braku reakcji rywali, Belg utrzymał minimalną przewagę i odniósł pierwsze w karierze zwycięstwo w World Tour.
Wyniki 3. etapu:
- 1 Dylan Teuns (Bel) BMC Racing Team 3:51:41
- 2 Peter Sagan (Svk) Bora-Hansgrohe
- 3 Rafał Majka (Pol) Bora-Hansgrohe
- 4 Wilco Kelderman (Ned) Team Sunweb
- 5 Tom-Jelte Slagter (Ned) Cannondale-Drapac 0:00:05
- 6 Odd Christian Eiking (Nor) FDJ 0:00:07
- 7 Domenico Pozzovivo (Ita) AG2R La Mondiale 0:00:08
- 8 Adam Yates (GBr) Orica-Scott 0:00:09
- 9 Wout Poels (Ned) Team Sky 0:00:12
- 10 Sam Oomen (Ned) Team Sunweb 0:00:14
- 11 Nathan Haas (Aus) Dimension Data 0:00:15
- 12 Vincenzo Nibali (Ita) Bahrain-Merida
- 13 Gorka Izagirre (Spa) Movistar Team
- 14 Rui Costa (Por) UAE Team Emirates 0:00:14
- 15 Bart De Clercq (Bel) Lotto Soudal 0:00:20
- 16 Valerio Conti (Ita) UAE Team Emirates 0:00:23
- 17 Bob Jungels (Lux) Quick-Step Floors
- 18 Ilnur Zakarin (Rus) Katusha-Alpecin
- 19 Laurens De Plus (Bel) Quick-Step Floors
- 20 Nelson Oliveira (Por) Movistar Team 0:00:38
- 21 Tomasz Marczyński (Pol) Lotto Soudal 0:00:41
- 22 Daan Olivier (Ned) Team LottoNl-Jumbo 0:00:46
- 23 Jan Hirt (Cze) CCC Sprandi Polkowice 0:00:50
- 24 Diego Rosa (Ita) Team Sky
- 25 Luis León Sanchez (Spa) Astana Pro Team 0:01:12
- 26 Marek Rutkiewicz (Pol) Orlen CCC Polska 0:01:17
- 27 Ivan Rovny (Rus) Gazprom – Rusvelo 0:01:21
- 28 Jack Haig (Aus) Orica-Scott 0:01:34
- 29 Giovanni Visconti (Ita) Bahrain-Merida 0:01:58
- 30 Ben O'Connor (Aus) Dimension Data 0:02:19
- 31 Simon Spilak (Slo) Katusha-Alpecin 0:02:22
- 32 Dayer Quintana (Col) Movistar Team 0:02:28
- 33 Pavel Kochetkov (Rus) Katusha-Alpecin
- 34 Petr Vakoc (Cze) Quick-Step Floors
- 35 François Bidard (Fra) AG2R La Mondiale
- 36 Winner Anacona (Col) Movistar Team
- 37 Maximilian Schachmann (Ger) Quick-Step Floors
- 38 Tejay Van Garderen (USA) BMC Racing Team 0:02:38
- 39 Matvey Mamykin (Rus) Katusha-Alpecin 0:13:57
- 40 Sander Armee (Bel) Lotto Soudal 0:02:41
- 41 Gregor Mühlberger (Aut) Bora-Hansgrohe 0:02:57
- 42 Samuel Sanchez (Spa) BMC Racing Team 0:02:59
- 43 Rohan Dennis (Aus) BMC Racing Team
- 44 Emanuel Piaskowy (Pol) Orlen CCC Polska 0:03:45
- 45 Floris Gerts (Ned) BMC Racing Team
- 46 Antwan Tolhoek (Ned) Team LottoNl-Jumbo
- 47 Jérémy Maison (Fra) FDJ
- 48 David Lozano (Spa) Team Novo Nordisk 0:03:48
- 49 Javier Megias (Spa) Team Novo Nordisk
- 50 Jose Rojas (Spa) Movistar Team 0:03:58
- 51 Przemysław Niemiec (Pol) UAE Team Emirates
- 52 Koen Bouwman (Ned) Team LottoNl-Jumbo 0:04:12
- 53 Ruben Plaza (Spa) Orica-Scott
- 54 Rob Power (Aus) Orica-Scott 0:04:50
- 55 Davide Villella (Ita) Cannondale-Drapac 0:05:26
- 56 Paweł Cieślik (Pol) Orlen CCC Polska 0:05:30
- 57 Sergey Lagutin (Rus) Gazprom – Rusvelo 0:05:39
- 58 Jesus Hernandez (Spa) Trek-Segafredo
- 59 Natnael Berhane (Eri) Dimension Data
- 60 Michal Schlegel (Cze) CCC Sprandi Polkowice 0:05:44
- 61 Matej Mohoric (Slo) UAE Team Emirates 0:05:49
- 62 Rafael Valls (Spa) Lotto Soudal 0:05:57
- 63 Hubert Dupont (Fra) AG2R La Mondiale 0:06:17
- 64 Chad Haga (USA) Team Sunweb 0:06:22
- 65 Pavel Brutt (Rus) Gazprom – Rusvelo 0:08:37
- 66 Jelle Wallays (Bel) Lotto Soudal
- 67 Salvatore Puccio (Ita) Team Sky
- 68 Enrico Battaglin (Ita) Team LottoNl-Jumbo
- 69 Nick Dougall (RSA) Dimension Data
- 70 Franco Pellizotti (Ita) Bahrain-Merida 0:10:10
- 71 Matteo Montaguti (Ita) AG2R La Mondiale
- 72 Michał Gołaś (Pol) Team Sky
- 73 Luka Mezgec (Slo) Orica-Scott
- 74 Matti Breschel (Den) Astana Pro Team
- 75 Cesare Benedetti (Ita) Bora-Hansgrohe
- 76 Julien Bernard (Fra) Trek-Segafredo
- 77 Domen Novak (Slo) Bahrain-Merida
- 78 Youcef Reguigui (Alg) Dimension Data
- 79 Rory Sutherland (Aus) Movistar Team
- 80 Toms Skujins (Lat) Cannondale-Drapac
- 81 Daniel Oss (Ita) BMC Racing Team 0:10:56
- 82 Maxim Belkov (Rus) Katusha-Alpecin
- 83 Patrick Konrad (Aut) Bora-Hansgrohe 0:11:11
- 84 José Gonçalves (Por) Katusha-Alpecin 0:13:13
- 85 Boy van Poppel (Ned) Trek-Segafredo 0:13:25
- 86 Lennard Kämna (Ger) Team Sunweb 0:13:40
- 87 Rémi Cavagna (Fra) Quick-Step Floors
- 88 Fumiyuki Beppu (Jpn) Trek-Segafredo
- 89 Gregory Daniel (USA) Trek-Segafredo
- 90 Maxime Monfort (Bel) Lotto Soudal
- 91 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo 0:13:57
- 92 Alex Dowsett (GBr) Movistar Team
- 93 Tom Van Asbroeck (Bel) Cannondale-Drapac
- 94 Jens Debusschere (Bel) Lotto Soudal
- 95 Adam Stachowiak (Pol) Orlen CCC Polska
- 96 Kristian Sbaragli (Ita) Dimension Data
- 97 Alberto Losada (Spa) Katusha-Alpecin 0:14:04
- 98 Bert De Backer (Bel) Team Sunweb
- 99 Martijn Keizer (Ned) Team LottoNl-Jumbo
- 100 Nico Denz (Ger) AG2R La Mondiale
- 101 Łukasz Wiśniowski (Pol) Team Sky
- 102 Alexander Porsev (Rus) Gazprom – Rusvelo
- 103 Maciej Paterski (Pol) CCC Sprandi Polkowice
- 104 Oscar Gatto (Ita) Astana Pro Team
- 105 Daniil Fominykh (Kaz) Astana Pro Team
- 106 Kamil Gradek (Pol) Orlen CCC Polska
- 107 Kristijan Koren (Slo) Cannondale-Drapac
- 108 Anass Ait El Abdia (Mor) UAE Team Emirates
- 109 Charles Planet (Fra) Team Novo Nordisk
- 110 Jan Tratnik (Slo) CCC Sprandi Polkowice
- 111 Joe Dombrowski (USA) Cannondale-Drapac 0:14:13
- 112 Sébastien Reichenbach (Swi) FDJ
- 113 Adrian Kurek (Pol) CCC Sprandi Polkowice
- 114 Frantisek Sisr (Cze) CCC Sprandi Polkowice
- 115 Niki Terpstra (Ned) Quick-Step Floors
- 116 Evgeny Shalunov (Rus) Gazprom – Rusvelo
- 117 Manuele Boaro (Ita) Bahrain-Merida 0:14:22
- 118 Roberto Ferrari (Ita) UAE Team Emirates 0:15:09
- 119 Niccolo Bonifazio (Ita) Bahrain-Merida
- 120 Lorenzo Manzin (Fra) FDJ
- 121 Sondre Holst Enger (Nor) AG2R La Mondiale 0:15:23
- 122 Johannes Fröhlinger (Ger) Team Sunweb 0:16:16
- 123 Moreno Moser (Ita) Astana Pro Team
- 124 Caleb Ewan (Aus) Orica-Scott
- 125 Danny Van Poppel (Ned) Team Sky
- 126 Antonio Nibali (Ita) Bahrain-Merida 0:16:23
- 127 Tyler Farrar (USA) Dimension Data 0:16:31
- 128 Sacha Modolo (Ita) UAE Team Emirates 0:17:55
- 129 Floris De Tier (Bel) Team LottoNl-Jumbo 0:23:51
- 130 Christopher Williams (Aus) Team Novo Nordisk
- 131 Andrea Peron (Ita) Team Novo Nordisk 0:23:55
- 132 Joonas Henttala (Fin) Team Novo Nordisk
- 133 Marc Fournier (Fra) FDJ
- 134 Erik Baska (Svk) Bora-Hansgrohe
- 135 Paweł Franczak (Pol) Orlen CCC Polska
- 136 Riccardo Minali (Ita) Astana Pro Team
- 137 Ian Boswell (USA) Team Sky
- 138 Marco Coledan (Ita) Trek-Segafredo
- 139 Max Walscheid (Ger) Team Sunweb
- 140 Martijn Verschoor (Ned) Team Novo Nordisk
- 141 Paweł Bernas (Pol) Orlen CCC Polska
- 142 Aleksei Tcatevich (Rus) Gazprom – Rusvelo
- 143 Ruslan Tleubayev (Kaz) Astana Pro Team
- 144 Aleksejs Saramotins (Lat) Bora-Hansgrohe
- 145 Alan Banaszek (Pol) CCC Sprandi Polkowice
- 146 Christophe Riblon (Fra) AG2R La Mondiale
- 147 Roman Maikin (Rus) Gazprom – Rusvelo 0:24:04
- 148 Kevin Reza (Fra) FDJ 0:24:47
- 149 Davide Martinelli (Ita) Quick-Step Floors 0:26:58
- 150 Daniel Hoelgaard (Nor) FDJ
- DNF Ben Hermans (Bel) BMC Racing Team
- DNS Sam Bewley (NZl) Orica-Scott
- Klasyfikacja punktowa:
- 1 Dylan Teuns (Bel) BMC Racing Team 20 pkt
- 2 Peter Sagan (Svk) Bora-Hansgrohe 19
- 3 Rafał Majka (Pol) Bora-Hansgrohe 18
- 4 Wilco Kelderman (Ned) Team Sunweb 17
- 5 Tom-Jelte Slagter (Ned) Cannondale-Drapac 16
- 6 Odd Christian Eiking (Nor) FDJ 15
- 7 Domenico Pozzovivo (Ita) AG2R La Mondiale 14
- 8 Adam Yates (GBr) Orica-Scott 13
- 9 Wout Poels (Ned) Team Sky 12
- 10 Sam Oomen (Ned) Team Sunweb 11
- 11 Nathan Haas (Aus) Dimension Data 10
- 12 Vincenzo Nibali (Ita) Bahrain-Merida 9
- 13 Gorka Izagirre (Spa) Movistar Team 8
- 14 Rui Costa (Por) UAE Team Emirates 7
- 15 Bart De Clercq (Bel) Lotto Soudal 6
- 16 Valerio Conti (Ita) UAE Team Emirates 5
- 17 Bob Jungels (Lux) Quick-Step Floors 4
- 18 Ilnur Zakarin (Rus) Katusha-Alpecin 3
- 19 Laurens De Plus (Bel) Quick-Step Floors 2
- 20 Nelson Oliveira (Por) Movistar Team 1
- Sprint 1 - Mysłowice (10.6 km)
- 1 Niccolo Bonifazio (Ita) Bahrain-Merida
- 2 Matti Breschel (Den) Astana Pro Team
- 3 Luis León Sanchez (Spa) Astana Pro Team
- Sprint 2 - Bielsko-Biała, plac Chrobrego (67.2 km)
- 1 Maciej Paterski (Pol) CCC Sprandi Polkowice
- 2 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo
- 3 Adam Stachowiak (Pol) Orlen CCC Polska
- Sprint 3 - Wisła ul. 1 Maja (136.0 km)
- 1 Toms Skujins (Lat) Cannondale-Drapac
- 2 Wout Poels (Ned) Team Sky
- 3 Matteo Montaguti (Ita) AG2R La Mondiale
- Górska Premia 1 (kat. 1) Salmopol (92.1 km)
- 1 Maciej Paterski (Pol) CCC Sprandi Polkowice 10 pkt
- 2 Maxime Monfort (Bel) Lotto Soudal 7
- 3 Sébastien Reichenbach (Swi) FDJ 5
- 4 Adam Stachowiak (Pol) Orlen CCC Polska 3
- 5 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo 2
- Górska Premia 2 (kat. 1) Zameczek Przełęcz Szarcula (106.7 km)
- 1 Sébastien Reichenbach (Swi) FDJ 10 pkt
- 2 Maciej Paterski (Pol) CCC Sprandi Polkowice 7
- 3 Maxime Monfort (Bel) Lotto Soudal 5
- 4 Rémi Cavagna (Fra) Quick-Step Floors 3
- 5 Adam Stachowiak (Pol) Orlen CCC Polska 2
- Górska Premia 3 (kat. 1) Zameczek Przełecz Szarcula (126.2 km)
- 1 Laurens De Plus (Bel) Quick-Step Floors 10 pkt
- 2 Dayer Quintana (Col) Movistar Team 7
- 3 Diego Rosa (Ita) Team Sky 5
- 4 Vincenzo Nibali (Ita) Bahrain-Merida 3
- 5 Wilco Kelderman (Ned) Team Sunweb 2
- Górska Premia 4 (kat. 1) Salmopol (149.7 km)
- 1 Jack Haig (Aus) Orica-Scott 10 pkt
- 2 Diego Rosa (Ita) Team Sky 7
- 3 Domenico Pozzovivo (Ita) AG2R La Mondiale 5
- 4 Dylan Teuns (Bel) BMC Racing Team 3
- 5 Wout Poels (Ned) Team Sky 2
Klasyfikacja generalna po 3. etapie:
- 1 Peter Sagan (Svk) Bora-Hansgrohe 10:03:02
- 2 Dylan Teuns (Bel) BMC Racing Team 0:00:06
- 3 Rafał Majka (Pol) Bora-Hansgrohe 0:00:12
- 4 Wilco Kelderman (Ned) Team Sunweb 0:00:16
- 5 Tom-Jelte Slagter (Ned) Cannondale-Drapac 0:00:21
- 6 Odd Christian Eiking (Nor) FDJ 0:00:23
- 7 Domenico Pozzovivo (Ita) AG2R La Mondiale 0:00:24
- 8 Wout Poels (Ned) Team Sky 0:00:25
- 9 Adam Yates (GBr) Orica-Scott
- 10 Nathan Haas (Aus) Dimension Data 0:00:30
- 11 Sam Oomen (Ned) Team Sunweb
- 12 Rui Costa (Por) UAE Team Emirates
- 13 Vincenzo Nibali (Ita) Bahrain-Merida 0:00:31
- 14 Gorka Izagirre (Spa) Movistar Team
- 15 Bart De Clercq (Bel) Lotto Soudal 0:00:36
- 16 Laurens De Plus (Bel) Quick-Step Floors 0:00:39
- 17 Ilnur Zakarin (Rus) Katusha-Alpecin
- 18 Bob Jungels (Lux) Quick-Step Floors
- 19 Valerio Conti (Ita) UAE Team Emirates
- 20 Nelson Oliveira (Por) Movistar Team 0:00:54
- 21 Tomasz Marczyński (Pol) Lotto Soudal 0:00:57
- 22 Daan Olivier (Ned) Team LottoNl-Jumbo 0:01:02
- 23 Jan Hirt (Cze) CCC Sprandi Polkowice 0:01:06
- 24 Diego Rosa (Ita) Team Sky
- 25 Luis León Sanchez (Spa) Astana Pro Team 0:01:27
- 26 Marek Rutkiewicz (Pol) Orlen CCC Polska 0:01:33
- 27 Ivan Rovny (Rus) Gazprom – Rusvelo 0:01:37
- 28 Jack Haig (Aus) Orica-Scott 0:01:50
- 29 Giovanni Visconti (Ita) Bahrain-Merida 0:02:14
- 30 Ben O'Connor (Aus) Dimension Data 0:02:35
- 31 Simon Spilak (Slo) Katusha-Alpecin 0:02:38
- 32 Dayer Quintana (Col) Movistar Team 0:02:44
- 33 François Bidard (Fra) AG2R La Mondiale
- 34 Petr Vakoc (Cze) Quick-Step Floors
- 35 Winner Anacona (Col) Movistar Team
- 36 Pavel Kochetkov (Rus) Katusha-Alpecin
- 37 Maximilian Schachmann (Ger) Quick-Step Floors
- 38 Tejay Van Garderen (USA) BMC Racing Team 0:02:54
- 39 Sander Armee (Bel) Lotto Soudal 0:03:10
- 40 Gregor Mühlberger (Aut) Bora-Hansgrohe 0:03:13
- 41 Samuel Sanchez (Spa) BMC Racing Team 0:03:15
- 42 Rohan Dennis (Aus) BMC Racing Team
- 43 Floris Gerts (Ned) BMC Racing Team 0:04:01
- 44 Antwan Tolhoek (Ned) Team LottoNl-Jumbo
- 45 Jérémy Maison (Fra) FDJ
- 46 Emanuel Piaskowy (Pol) Orlen CCC Polska
- 47 Javier Megias (Spa) Team Novo Nordisk 0:04:04
- 48 Jose Rojas (Spa) Movistar Team 0:04:14
- 49 Przemysław Niemiec (Pol) UAE Team Emirates
- 50 Koen Bouwman (Ned) Team LottoNl-Jumbo 0:04:28
- 51 Ruben Plaza (Spa) Orica-Scott
- 52 David Lozano (Spa) Team Novo Nordisk 0:04:34
- 53 Rob Power (Aus) Orica-Scott 0:05:06
- 54 Davide Villella (Ita) Cannondale-Drapac 0:05:42
- 55 Paweł Cieślik (Pol) Orlen CCC Polska 0:05:46
- 56 Sergey Lagutin (Rus) Gazprom – Rusvelo 0:05:55
- 57 Jesus Hernandez (Spa) Trek-Segafredo
- 58 Natnael Berhane (Eri) Dimension Data
- 59 Michal Schlegel (Cze) CCC Sprandi Polkowice 0:06:00
- 60 Matej Mohoric (Slo) UAE Team Emirates 0:06:05
- 61 Rafael Valls (Spa) Lotto Soudal 0:06:13
- 62 Hubert Dupont (Fra) AG2R La Mondiale 0:07:32
- 63 Chad Haga (USA) Team Sunweb 0:08:02
- 64 Salvatore Puccio (Ita) Team Sky 0:08:53
- 65 Pavel Brutt (Rus) Gazprom – Rusvelo 0:09:06
- 66 Nick Dougall (RSA) Dimension Data 0:10:17
- 67 Toms Skujins (Lat) Cannondale-Drapac 0:10:23
- 68 Matti Breschel (Den) Astana Pro Team 0:10:24
- 69 Jelle Wallays (Bel) Lotto Soudal
- 70 Matteo Montaguti (Ita) AG2R La Mondiale 0:10:25
- 71 Youcef Reguigui (Alg) Dimension Data 0:10:26
- 72 Michał Gołaś (Pol) Team Sky
- 73 Julien Bernard (Fra) Trek-Segafredo
- 74 Rory Sutherland (Aus) Movistar Team
- 75 Franco Pellizotti (Ita) Bahrain-Merida
- 76 Domen Novak (Slo) Bahrain-Merida 0:11:32
- 77 Cesare Benedetti (Ita) Bora-Hansgrohe 0:12:07
- 78 Maxim Belkov (Rus) Katusha-Alpecin 0:12:53
- 79 Luka Mezgec (Slo) Orica-Scott 0:13:12
- 80 Patrick Konrad (Aut) Bora-Hansgrohe
- 81 José Gonçalves (Por) Katusha-Alpecin 0:13:29
- 82 Enrico Battaglin (Ita) Team LottoNl-Jumbo 0:13:32
- 83 Boy van Poppel (Ned) Trek-Segafredo 0:13:41
- 84 Rémi Cavagna (Fra) Quick-Step Floors 0:13:56
- 85 Maxime Monfort (Bel) Lotto Soudal
- 86 Lennard Kämna (Ger) Team Sunweb
- 87 Fumiyuki Beppu (Jpn) Trek-Segafredo
- 88 Adam Stachowiak (Pol) Orlen CCC Polska 0:14:12
- 89 Tom Van Asbroeck (Bel) Cannondale-Drapac 0:14:13
- 90 Jens Debusschere (Bel) Lotto Soudal
- 91 Kristian Sbaragli (Ita) Dimension Data
- 92 Kamil Gradek (Pol) Orlen CCC Polska 0:14:17
- 93 Alexander Porsev (Rus) Gazprom – Rusvelo 0:14:20
- 94 Bert De Backer (Bel) Team Sunweb
- 95 Kristijan Koren (Slo) Cannondale-Drapac
- 96 Alberto Losada (Spa) Katusha-Alpecin
- 97 Łukasz Wiśniowski (Pol) Team Sky
- 98 Oscar Gatto (Ita) Astana Pro Team
- 99 Matvey Mamykin (Rus) Katusha-Alpecin 0:14:26
- 100 Frantisek Sisr (Cze) CCC Sprandi Polkowice 0:14:29
- 101 Joe Dombrowski (USA) Cannondale-Drapac
- 102 Manuele Boaro (Ita) Bahrain-Merida 0:14:38
- 103 Adrian Kurek (Pol) CCC Sprandi Polkowice 0:14:50
- 104 Sébastien Reichenbach (Swi) FDJ 0:14:59
- 105 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo 0:15:07
- 106 Daniil Fominykh (Kaz) Astana Pro Team 0:15:17
- 107 Niccolo Bonifazio (Ita) Bahrain-Merida 0:15:22
- 108 Nico Denz (Ger) AG2R La Mondiale
- 109 Roberto Ferrari (Ita) UAE Team Emirates 0:15:25
- 110 Jan Tratnik (Slo) CCC Sprandi Polkowice 0:15:26
- 111 Niki Terpstra (Ned) Quick-Step Floors 0:16:10
- 112 Daniel Oss (Ita) BMC Racing Team 0:16:18
- 113 Danny Van Poppel (Ned) Team Sky 0:16:22
- 114 Caleb Ewan (Aus) Orica-Scott 0:16:26
- 115 Gregory Daniel (USA) Trek-Segafredo 0:16:33
- 116 Evgeny Shalunov (Rus) Gazprom – Rusvelo 0:17:41
- 117 Alex Dowsett (GBr) Movistar Team 0:17:49
- 118 Sacha Modolo (Ita) UAE Team Emirates 0:18:01
- 119 Johannes Fröhlinger (Ger) Team Sunweb 0:18:04
- 120 Moreno Moser (Ita) Astana Pro Team 0:18:44
- 121 Tyler Farrar (USA) Dimension Data 0:18:59
- 122 Anass Ait El Abdia (Mor) UAE Team Emirates 0:19:15
- 123 Antonio Nibali (Ita) Bahrain-Merida 0:19:16
- 124 Maciej Paterski (Pol) CCC Sprandi Polkowice 0:19:38
- 125 Charles Planet (Fra) Team Novo Nordisk 0:19:43
- 126 Lorenzo Manzin (Fra) FDJ 0:20:22
- 127 Martijn Keizer (Ned) Team LottoNl-Jumbo 0:20:43
- 128 Sondre Holst Enger (Nor) AG2R La Mondiale 0:21:08
- 129 Max Walscheid (Ger) Team Sunweb 0:24:07
- 130 Floris De Tier (Bel) Team LottoNl-Jumbo
- 131 Riccardo Minali (Ita) Astana Pro Team 0:24:11
- 132 Paweł Franczak (Pol) Orlen CCC Polska
- 133 Aleksei Tcatevich (Rus) Gazprom – Rusvelo
- 134 Erik Baska (Svk) Bora-Hansgrohe
- 135 Ruslan Tleubayev (Kaz) Astana Pro Team
- 136 Roman Maikin (Rus) Gazprom – Rusvelo 0:24:20
- 137 Joonas Henttala (Fin) Team Novo Nordisk 0:25:11
- 138 Martijn Verschoor (Ned) Team Novo Nordisk 0:25:52
- 139 Alan Banaszek (Pol) CCC Sprandi Polkowice 0:26:08
- 140 Marc Fournier (Fra) FDJ 0:27:08
- 141 Christophe Riblon (Fra) AG2R La Mondiale
- 142 Davide Martinelli (Ita) Quick-Step Floors 0:27:14
- 143 Kevin Reza (Fra) FDJ 0:27:22
- 144 Daniel Hoelgaard (Nor) FDJ 0:28:24
- 145 Marco Coledan (Ita) Trek-Segafredo 0:29:05
- 146 Christopher Williams (Aus) Team Novo Nordisk 0:29:28
- 147 Ian Boswell (USA) Team Sky 0:29:32
- 148 Andrea Peron (Ita) Team Novo Nordisk 0:32:55
- 149 Aleksejs Saramotins (Lat) Bora-Hansgrohe 0:34:37
- 150 Paweł Bernas (Pol) Orlen CCC Polska 0:37:39
- Klasyfikacja punktowa:
- 1 Peter Sagan (Svk) Bora-Hansgrohe 52 pkt
- 2 Danny Van Poppel (Ned) Team Sky 37
- 3 Nathan Haas (Aus) Dimension Data 36
- 4 Niccolo Bonifazio (Ita) Bahrain-Merida 30
- 5 Boy van Poppel (Ned) Trek-Segafredo 29
- 6 Riccardo Minali (Ita) Astana Pro Team 29
- 7 Max Walscheid (Ger) Team Sunweb 28
- 8 Tom Van Asbroeck (Bel) Cannondale-Drapac 22
- 9 Dylan Teuns (Bel) BMC Racing Team 20
- 10 Sacha Modolo (Ita) UAE Team Emirates 20
- 11 Youcef Reguigui (Alg) Dimension Data 20
- 12 Caleb Ewan (Aus) Orica-Scott 19
- 13 Rafał Majka (Pol) Bora-Hansgrohe 18
- 14 Wilco Kelderman (Ned) Team Sunweb 17
- 15 Jens Debusschere (Bel) Lotto Soudal 17
- 16 Tom-Jelte Slagter (Ned) Cannondale-Drapac 16
- 17 Odd Christian Eiking (Nor) FDJ 15
- 18 Roberto Ferrari (Ita) UAE Team Emirates 15
- 19 Domenico Pozzovivo (Ita) AG2R La Mondiale 14
- 20 Adam Yates (GBr) Orica-Scott 13
- 21 Paweł Franczak (Pol) Orlen CCC Polska 13
- 22 Wout Poels (Ned) Team Sky 12
- 23 Sam Oomen (Ned) Team Sunweb 11
- 24 Floris Gerts (Ned) BMC Racing Team 11
- 25 Enrico Battaglin (Ita) Team LottoNl-Jumbo 10
- 26 Vincenzo Nibali (Ita) Bahrain-Merida 9
- 27 Koen Bouwman (Ned) Team LottoNl-Jumbo 9
- 28 Lorenzo Manzin (Fra) FDJ 9
- 29 Gorka Izagirre (Spa) Movistar Team 8
- 30 Alan Banaszek (Pol) CCC Sprandi Polkowice 8
- 31 Rui Costa (Por) UAE Team Emirates 7
- 32 Alexander Porsev (Rus) Gazprom – Rusvelo 7
- 33 Bart De Clercq (Bel) Lotto Soudal 6
- 34 Roman Maikin (Rus) Gazprom – Rusvelo 6
- 35 Valerio Conti (Ita) UAE Team Emirates 5
- 36 Tomasz Marczyński (Pol) Lotto Soudal 5
- 37 Sondre Holst Enger (Nor) AG2R La Mondiale 5
- 38 Bob Jungels (Lux) Quick-Step Floors 4
- 39 Erik Baska (Svk) Bora-Hansgrohe 4
- 40 Ilnur Zakarin (Rus) Katusha-Alpecin 3
- 41 Davide Martinelli (Ita) Quick-Step Floors 3
- 42 Laurens De Plus (Bel) Quick-Step Floors 2
- 43 Matej Mohoric (Slo) UAE Team Emirates 2
- 44 Aleksei Tcatevich (Rus) Gazprom – Rusvelo 2
- 45 Nelson Oliveira (Por) Movistar Team 1
- 46 José Gonçalves (Por) Katusha-Alpecin 1
- Klasyfikacja górska:
- 1 Maciej Paterski (Pol) CCC Sprandi Polkowice 17 pkt
- 2 Sébastien Reichenbach (Swi) FDJ 15
- 3 Diego Rosa (Ita) Team Sky 12
- 4 Maxime Monfort (Bel) Lotto Soudal 12
- 5 Laurens De Plus (Bel) Quick-Step Floors 10
- 6 Jack Haig (Aus) Orica-Scott 10
- 7 Dayer Quintana (Col) Movistar Team 7
- 8 Domenico Pozzovivo (Ita) AG2R La Mondiale 5
- 9 Adam Stachowiak (Pol) Orlen CCC Polska 5
- 10 Dylan Teuns (Bel) BMC Racing Team 3
- 11 Vincenzo Nibali (Ita) Bahrain-Merida 3
- 12 Rémi Cavagna (Fra) Quick-Step Floors 3
- 13 Wilco Kelderman (Ned) Team Sunweb 2
- 14 Wout Poels (Ned) Team Sky 2
- 15 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo 2
- 16 Martijn Keizer (Ned) Team LottoNl-Jumbo 2
- 17 Paweł Bernas (Pol) Orlen CCC Polska 2
- Klasyfikacja najaktywniejszych:
- 1 Adrian Kurek (Pol) CCC Sprandi Polkowice 9 pkt
- 2 Martijn Keizer (Ned) Team LottoNl-Jumbo 6
- 3 Maciej Paterski (Pol) CCC Sprandi Polkowice 5
- 4 Toms Skujins (Lat) Cannondale-Drapac 3
- 5 Niccolo Bonifazio (Ita) Bahrain-Merida 3
- 6 Wout Poels (Ned) Team Sky 3
- 7 Kamil Gradek (Pol) Orlen CCC Polska 3
- 8 Matti Breschel (Den) Astana Pro Team 2
- 9 Bert-Jan Lindeman (Ned) Team LottoNl-Jumbo 2
- 10 Joonas Henttala (Fin) Team Novo Nordisk 2
- 11 Nathan Haas (Aus) Dimension Data 1
- 12 Luis León Sanchez (Spa) Astana Pro Team 1
- 13 Matteo Montaguti (Ita) AG2R La Mondiale 1
- 14 Adam Stachowiak (Pol) Orlen CCC Polska 1
- Klasyfikacja drużynowa:
- 1 Bora-Hansgrohe 30:12:51
- 3 Movistar Team 0:00:24
- 4 Lotto Soudal 0:00:45
- 5 UAE Team Emirates 0:01:38
- 7 BMC Racing Team 0:02:40
- 8 Orica-Scott 0:02:58
- 9 Team Sunweb 0:03:39
- 10 Dimension Data 0:05:16
- 12 AG2R La Mondiale 0:05:56
- 13 Team Sky 0:06:42
- 15 Bahrain-Merida 0:09:26
- 16 Gazprom – Rusvelo 0:12:40
- 17 CPT 0:12:44
- 18 FDJ 0:15:08
- 19 CCC Sprandi Polkowice 0:17:41
- 20 Team Novo Nordisk 0:19:13
- 21 Astana Pro Team 0:22:29
- 22 Trek-Segafredo 0:26:17