Volta ao Algarve: Kwiatkowski wins the overall

Michał Kwiatwkowski (Team Sky) took victory on the final stage of the Volta ao Algarve, sealing the general classification at the same time. Ruben Guerreiro (Trek-Segafredo) and Serge Pauwels (Team Dimension Data) completed the podium on the tough hilltop finish at Malhão.

The trio had made the day's early break, and with Kwiatkowski the only man in GC contention out front, the Pole comfortably sealed the overall win - repeating his 2014 feat. What remained of the Sky-controlled peloton crossed the line almost two minutes later, having never looked like catching the break.

The British team clearly had a gameplan, with Kwiatkowski biding his time until the final climb of the day before making his move. Attacks came and went throughout the day, but Kwiatkowski was patient before showing his strength with 2km left to run, simply leaving the rest of the break behind as he rode solo to the finish.

How it unfolded

At 173km, the final stage was the shortest of the race, but by no means the easiest with five categorised climbs along the route. One - the cat three Picota at 63km - came in the first half of the stage.

There were two additional third category climbs - Alto de Ameixieira at 99.6km, and Vermelhos at 153km. Either side of Vermelhos came two ascents of Malhão - one at 132.6km, and once at the finish. The climb, 3km long, topped out at a touch over 10 per cent. Two intermediate sprints were at 16.8km and 127.6km.

After 15km a large group of 31 riders broke away. Notable names included Tony Martin (Katusha), Philippe Gilbert, Zdeněk Štybar (both Quick-Step Floors), Kwiatkowski (the best-placed GC rider in the group at 19 seconds down) and Arnaud Démare (FDJ).

The attacks started 90km into the stage, with Jürgen Roelandts (BMC) and Ruben Guerreiro (Trek-Segafredo) among those attempting to strike out. Things were soon back together though, with the real action saved until the first ascent of Malhão.

There, some 40km from the finish, the lead group was shattered as Lukas Pöstlberger (Bora-Hansgrohe) struck out alone. He quickly put 30 seconds into a small chase group, and a minute in the remainder of the break.

Pöstlberger was out on his own until Štybar joined him on the Vermelhos climb, 20km from the line. The break lay 30 seconds further back, while the Team Sky- and BMC-led peloton were three minutes further back.

Štybar left his companion behind on a sharp unclassified climb with 11km to go, his advantage over the chasers up to 45 seconds as he reached the bottom of the race's concluding climb. With 2km to go, Kwiatkowski followed Davide Cimolai's (FDJ) early attack, launching himself away from the group and up to Štybar.

The Pole soon passed his ex-teammate, riding unchallenged over the final 1,500 metres to the stage and overall victory.

Further back, Pauwels led the charge, taking Guerreiro and Stefan Küng (BMC) with him. After a tactically smart ride up the climb, Guerreiro made his move with 500 metres remaining, sealing second place ahead of Pauwels.

Full Results

Swipe to scroll horizontally
#Rider Name (Country) TeamResult
1Michal Kwiatkowski (Pol) Team Sky4:18:02
2Rúben Guerreiro (Por) Trek-Segafredo0:00:04
3Serge Pauwels (Bel) Dimension Data0:00:08
4Stefan Küng (Swi) BMC Racing Team0:00:13
5Cesare Benedetti (Ita) Bora-Hansgrohe0:00:15
6Dion Smith (NZl) Wanty-Groupe Gobert0:00:17
7Simon Geschke (Ger) Team SunwebRow 6 - Cell 2
8Julen Amezqueta Moreno (Spa) Caja Rural-Seguros RGA0:00:23
9Ben Swift (GBr) UAE Team Emirates0:00:29
10Frederik Backaert (Bel) Wanty-Groupe Gobert0:00:35
11Jonathan Lastra Martinez (Spa) Caja Rural-Seguros RGA0:00:39
12Dimitri Claeys (Bel) Cofidis, Solutions Credits0:00:43
13Zdenek Stybar (Cze) Quick-Step Floors0:00:48
14Philippe Gilbert (Bel) Quick-Step Floors0:00:54
15Tony Martin (Ger) Katusha-Alpecin0:01:31
16Jurgen Roelandts (Bel) BMC Racing Team0:01:36
17Bauke Mollema (Ned) Trek-Segafredo0:01:40
18Tejay van Garderen (USA) BMC Racing Team0:01:42
19Gustavo Veloso (Spa) W52-FC PortoRow 18 - Cell 2
20Daniel Martin (Irl) UAE Team Emirates0:01:45
21Patrick Konrad (Aut) Bora-Hansgrohe0:01:47
22Vicente Rubio (Spa) Aviludo-Louletano-Uli0:01:50
23Sam Oomen (Ned) Team SunwebRow 22 - Cell 2
24Geraint Thomas (GBr) Team SkyRow 23 - Cell 2
25Maximilian Schachmann (Ger) Quick-Step FloorsRow 24 - Cell 2
26Jaime Roson (Spa) Movistar TeamRow 25 - Cell 2
27Felix Grossschartner (Aut) Bora-HansgroheRow 26 - Cell 2
28Joaquim Silva (Por) Caja Rural-Seguros RGA0:01:54
29Bob Jungels (Lux) Quick-Step Floors0:02:00
30Maurits Lammertink (Ned) Katusha-Alpecin0:02:02
31Pieter Serry (Bel) Quick-Step FloorsRow 30 - Cell 2
32Louis Meintjes (RSA) Dimension DataRow 31 - Cell 2
33Johann Van Zyl (RSA) Dimension Data0:02:05
34Simon Spilak (Slo) Katusha-Alpecin0:02:09
35Kenny Elissonde (Fra) Team Sky0:02:11
36Jan Polanc (Slo) UAE Team Emirates0:02:14
37Valerio Conti (Ita) UAE Team Emirates0:02:18
38César Fonte (Por) W52-FC Porto0:02:19
39Tom Devriendt (Bel) Wanty-Groupe Gobert0:02:22
40Henrique Casimiro (Por) EfapelRow 39 - Cell 2
41Luís Mendonça (Por) Aviludo-Louletano-UliRow 40 - Cell 2
42Jesus Del Pino (Spa) Efapel0:02:31
43Davide Cimolai (Ita) FDJRow 42 - Cell 2
44Alejandro Manue Marque (Spa) Sporting-Tavira0:02:35
45Ricardo Mestre (Por) W52-FC Porto0:02:38
46Richie Porte (Aus) BMC Racing TeamRow 45 - Cell 2
47Daniel Mestre (Por) EfapelRow 46 - Cell 2
48Guillaume Bonnafond (Fra) Cofidis, Solutions Credits0:02:41
49Nelson Oliveira (Por) Movistar TeamRow 48 - Cell 2
50Dylan Teuns (Bel) BMC Racing Team0:02:44
51Jens Keukeleire (Bel) Lotto SoudalRow 50 - Cell 2
52Edgar Pinto (Por) Vito-Feirense-Blackjack0:02:49
53Luís Gomes (Por) Radio Popular-BoavistaRow 52 - Cell 2
54Scott Thwaites (GBr) Dimension Data0:02:53
55Joao Rodrigues (Por) W52-FC Porto0:02:57
56Jai Hindley (Aus) Team SunwebRow 55 - Cell 2
57Oscar Hernandez (Spa) Aviludo-Louletano-UliRow 56 - Cell 2
58Rui Vinhas (Por) W52-FC Porto0:03:01
59Edvald Boasson Hagen (Nor) Dimension Data0:03:11
60André Carvalho (Por) Liberty Seguros-Carglass0:03:15
61Aleksandr Grigorev (Rus) Sporting-TaviraRow 60 - Cell 2
62Paul Martens (Ger) LottoNL-Jumbo0:03:20
63Jóni Brandão (Por) Sporting-Tavira0:03:28
64Eduardo Sepulveda (Arg) Movistar Team0:03:39
65Vasil Kiryienka (Blr) Team Sky0:03:52
66Amund Grøndahl Jansen (Nor) LottoNL-Jumbo0:04:20
67Jhonatan Restrepo (Col) Katusha-AlpecinRow 66 - Cell 2
68Rafael Silva (Por) Efapel0:04:32
69Michal Golas (Pol) Team SkyRow 68 - Cell 2
70José Gonçalves (Por) Katusha-AlpecinRow 69 - Cell 2
71Vegard Stake Laengen (Nor) UAE Team Emirates0:04:37
72Nikolas Maes (Bel) Lotto Soudal0:05:01
73Andre Crispim (Por) Liberty Seguros-Carglass0:05:02
74Lukas Pöstlberger (Aut) Bora-Hansgrohe0:05:10
75Simon Gerrans (Aus) BMC Racing Team0:05:14
76Luis Alfonso (Por) Vito-Feirense-BlackjackRow 75 - Cell 2
77Egor Silin (Rus) Radio Popular-Boavista0:05:16
78Gonçalo Carvalho (Por) Miranda-MortáguaRow 77 - Cell 2
79Bert-Jan Lindeman (Ned) LottoNL-Jumbo0:05:33
80Nuno Almeida (Por) LA.Aluminios0:05:36
81Loïc Vliegen (Bel) BMC Racing Team0:05:41
82Hugo Nunes (Por) Miranda-Mortágua0:05:44
83Xuban Errazquin (Spa) Vito-Feirense-BlackjackRow 82 - Cell 2
84Timothy Dupont (Bel) Wanty-Groupe Gobert0:06:07
85Andreas Schillinger (Ger) Bora-Hansgrohe0:06:08
86Jens Debusschere (Bel) Lotto Soudal0:06:21
87Jasper Stuyven (Bel) Trek-SegafredoRow 86 - Cell 2
88Yves Lampaert (Bel) Quick-Step FloorsRow 87 - Cell 2
89Lennard Kämna (Ger) Team Sunweb0:06:26
90Gaspar Gonçalves (Por) Liberty Seguros-Carglass0:06:30
91Tiago Machado (Por) Katusha-Alpecin0:06:36
92David Livramento (Por) Sporting-TaviraRow 91 - Cell 2
93Lawrence Naesen (Bel) Lotto Soudal0:07:05
94Josu Zabala Lopez (Spa) Caja Rural-Seguros RGA0:07:49
95Rafael Reis (Por) Caja Rural-Seguros RGARow 94 - Cell 2
96Hugo Sancho (Por) Vito-Feirense-Blackjack0:08:37
97Gonçalo Leaça (Por) LA.AluminiosRow 96 - Cell 2
98Laurens ten Dam (Ned) Team SunwebRow 97 - Cell 2
99Chad Haga (USA) Team Sunweb0:08:39
100Sepp Kuss (USA) LottoNL-JumboRow 99 - Cell 2
101David Rodrigues (Por) Radio Popular-BoavistaRow 100 - Cell 2
102Lennard Hofstede (Ned) Team SunwebRow 101 - Cell 2
103Florian Senechal (Fra) Quick-Step FloorsRow 102 - Cell 2
104Edward Ravasi (Ita) UAE Team Emirates0:09:01
105Jorge Magalhães (Por) Miranda-Mortágua0:09:06
106Venceslau Fernandes (Por) Liberty Seguros-CarglassRow 105 - Cell 2
107Mickael Delage (Fra) FDJ0:09:24
108Ignatas Konovalovas (Ltu) FDJRow 107 - Cell 2
109Olivier Le Gac (Fra) FDJRow 108 - Cell 2
110Rory Sutherland (Aus) UAE Team EmiratesRow 109 - Cell 2
111Mario Gonzalez (Spa) Sporting-TaviraRow 110 - Cell 2
112Francisco Campos (Por) Miranda-Mortágua0:09:45
113António Barbio (Por) Miranda-MortáguaRow 112 - Cell 2
114Lukasz Wisniowski (Pol) Team SkyRow 113 - Cell 2
115Benjamin King (USA) Dimension DataRow 114 - Cell 2
116Jasper De Buyst (Bel) Lotto Soudal0:10:00
117Ryan Mullen (Irl) Trek-Segafredo0:10:08
118John Degenkolb (Ger) Trek-SegafredoRow 117 - Cell 2
119Gregory Rast (Swi) Trek-SegafredoRow 118 - Cell 2
120Michaël Van Staeyen (Bel) Cofidis, Solutions Credits0:12:29
121Timo Roosen (Ned) LottoNL-JumboRow 120 - Cell 2
122Yury Trofimov (Rus) Radio Popular-BoavistaRow 121 - Cell 2
123Dylan Groenewegen (Ned) LottoNL-JumboRow 122 - Cell 2
124Oscar Pelegri (Spa) Radio Popular-BoavistaRow 123 - Cell 2
125Patrick Videira (Por) LA.Aluminios0:13:21
126Owain Doull (GBr) Team Sky0:13:29
127Arnaud Demare (Fra) FDJ0:14:08
128Nicola Toffali (Ita) Sporting-TaviraRow 127 - Cell 2
129Jelle Wallays (Bel) Lotto SoudalRow 128 - Cell 2
130Fábio Mansilhas (Por) LA.Aluminios0:15:36
131Mauricio Moreira (Uru) Caja Rural-Seguros RGA0:16:32
132Bruno Silva (Por) Efapel0:16:57
133Nuno Meireles (Por) Miranda-Mortágua0:17:33
134Márcio Barbosa (Por) Aviludo-Louletano-UliRow 133 - Cell 2
135Matteo Pelucchi (Ita) Bora-Hansgrohe0:18:22
136Samuel Caldeira (Por) W52-FC PortoRow 135 - Cell 2
137Victor Campenaerts (Bel) Lotto Soudal0:18:25
138César Martingil (Por) Liberty Seguros-Carglass0:18:43
139Pedro Paulinho (Por) EfapelRow 138 - Cell 2
140Rafael Lourenço (Por) Liberty Seguros-Carglass0:19:02
141Marcos Jurado (Spa) Efapel0:20:06
142João Fernandes (Por) LA.Aluminios0:20:07
143Paulo Silva (Por) LA.AluminiosRow 142 - Cell 2
144Luís Fernandes (Por) Aviludo-Louletano-UliRow 143 - Cell 2
145Aleksejs Saramotins (Lat) Bora-HansgroheRow 144 - Cell 2
146André Evangelista (Por) Aviludo-Louletano-Uli0:20:15
DNFNuno Bico (Por) Movistar TeamRow 146 - Cell 2
DNFIgor Anton (Spa) Dimension DataRow 147 - Cell 2
DNFBram Tankink (Ned) LottoNL-JumboRow 148 - Cell 2
DNFHugo Hofstetter (Fra) Cofidis, Solutions CreditsRow 149 - Cell 2
DNFYoann Offredo (Fra) Wanty-Groupe GobertRow 150 - Cell 2
DNFGuillaume Van Keirsbulck (Bel) Wanty-Groupe GobertRow 151 - Cell 2
DNFPieter Vanspeybrouck (Bel) Wanty-Groupe GobertRow 152 - Cell 2
DNFDamien Marques (Fra) Miranda-MortáguaRow 153 - Cell 2
DNFDomingos Gonçalves (Por) Radio Popular-BoavistaRow 154 - Cell 2
DNFJoão Benta (Por) Radio Popular-BoavistaRow 155 - Cell 2
DNFJoão Matias (Por) Vito-Feirense-BlackjackRow 156 - Cell 2
DNSJasha Sütterlin (Ger) Movistar TeamRow 157 - Cell 2
DNSRafael Valls Ferri (Spa) Movistar TeamRow 158 - Cell 2
DNSMatthias Brändle (Aut) Trek-SegafredoRow 159 - Cell 2
DNSAnthony Turgis (Fra) Cofidis, Solutions CreditsRow 160 - Cell 2
DNSJosé Fernandes (Por) W52-FC PortoRow 161 - Cell 2
Swipe to scroll horizontally
KOM 1 - 63km - Cat 3
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Serge Pauwels (Bel) Dimension Data4pts
2Stefan Küng (Swi) BMC Racing Team3Row 1 - Cell 3
3Philippe Gilbert (Bel) Quick-Step Floors2Row 2 - Cell 3
Swipe to scroll horizontally
KOM 2 - 99.6km - Cat 3
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Jurgen Roelandts (Bel) BMC Racing Team4pts
2Johann Van Zyl (RSA) Dimension Data3Row 1 - Cell 3
3Matteo Pelucchi (Ita) Bora-Hansgrohe2Row 2 - Cell 3
Swipe to scroll horizontally
KOM 3 - 132.6km - Cat 2
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Lukas Pöstlberger (Aut) Bora-Hansgrohe6pts
2Serge Pauwels (Bel) Dimension Data4Row 1 - Cell 3
3Michal Kwiatkowski (Pol) Team Sky3Row 2 - Cell 3
4Simon Geschke (Ger) Team Sunweb2Row 3 - Cell 3
Swipe to scroll horizontally
KOM 4 - 153.km - Cat 3
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Zdenek Stybar (Cze) Quick-Step Floors4pts
2Lukas Pöstlberger (Aut) Bora-Hansgrohe3Row 1 - Cell 3
3Tony Martin (Ger) Katusha-Alpecin2Row 2 - Cell 3
Swipe to scroll horizontally
KOM 5 - 173.5km - Cat 2
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Michal Kwiatkowski (Pol) Team Sky6pts
2Rúben Guerreiro (Por) Trek-Segafredo4Row 1 - Cell 3
3Serge Pauwels (Bel) Dimension Data3Row 2 - Cell 3
4Stefan Küng (Swi) BMC Racing Team2Row 3 - Cell 3
Swipe to scroll horizontally
Sprint 1 - 16.8km
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Zdenek Stybar (Cze) Quick-Step Floors3pts
2Stefan Küng (Swi) BMC Racing Team2Row 1 - Cell 3
3Michal Golas (Pol) Team Sky1Row 2 - Cell 3
Swipe to scroll horizontally
Sprint 2 - 127.6km
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Lukas Pöstlberger (Aut) Bora-Hansgrohe3pts
2Jasper Stuyven (Bel) Trek-Segafredo2Row 1 - Cell 3
3Stefan Küng (Swi) BMC Racing Team1Row 2 - Cell 3
Swipe to scroll horizontally
Stage Points
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Michal Kwiatkowski (Pol) Team Sky25pts
2Rúben Guerreiro (Por) Trek-Segafredo20Row 1 - Cell 3
3Stefan Küng (Swi) BMC Racing Team16Row 2 - Cell 3
4Serge Pauwels (Bel) Dimension Data16Row 3 - Cell 3
5Cesare Benedetti (Ita) Bora-Hansgrohe10Row 4 - Cell 3
6Dion Smith (NZl) Wanty-Groupe Gobert8Row 5 - Cell 3
7Simon Geschke (Ger) Team Sunweb6Row 6 - Cell 3
8Julen Amezqueta Moreno (Spa) Caja Rural-Seguros RGA4Row 7 - Cell 3
9Lukas Pöstlberger (Aut) Bora-Hansgrohe3Row 8 - Cell 3
10Zdenek Stybar (Cze) Quick-Step Floors3Row 9 - Cell 3
11Ben Swift (GBr) UAE Team Emirates2Row 10 - Cell 3
12Jasper Stuyven (Bel) Trek-Segafredo2Row 11 - Cell 3
13Frederik Backaert (Bel) Wanty-Groupe Gobert1Row 12 - Cell 3
14Michal Golas (Pol) Team Sky1Row 13 - Cell 3
Swipe to scroll horizontally
#Rider Name (Country) TeamResult
1Caja Rural - Seguros RGA12:57:02
2Wanty - Groupe Gobert0:00:18
3BMC Racing Team0:00:35
4Quick - Step Floors0:00:36
5Bora - Hansgrohe0:00:56
6Team Sky0:01:05
7Team Dimension Data0:01:19
8UAE Team Emirates0:01:32
9Team Sunweb0:02:08
10Team Katusha Alpecin0:02:46
11W52-FC Porto0:03:43
12Aviludo - Louletano - Uli0:04:13
14Trek - Segafredo0:05:09
15Movistar Team0:05:14
16Sporting - Tavira0:06:22
17Team Lotto Nl - Jumbo0:10:17
18Vito - Feirense - Blackjack0:10:51
19Lotto Soudal0:11:10
20Liberty Seguros - Carglass0:11:51
21Cofidis, Solutions Credits0:12:57
22Radio Popular - Boavista0:13:48
23Miranda - Mortágua0:17:10
Swipe to scroll horizontally
Final General Classification
#Rider Name (Country) TeamResult
1Michal Kwiatkowski (Pol) Team Sky18:54:11
2Geraint Thomas (GBr) Team Sky0:01:31
3Tejay van Garderen (USA) BMC Racing Team0:02:16
4Bauke Mollema (Ned) Trek-Segafredo0:02:22
5Bob Jungels (Lux) Quick-Step Floors0:02:33
6Jaime Roson (Spa) Movistar Team0:02:49
7Maximilian Schachmann (Ger) Quick-Step Floors0:02:50
8Serge Pauwels (Bel) Dimension DataRow 7 - Cell 2
9Felix Grossschartner (Aut) Bora-Hansgrohe0:02:51
10Nelson Oliveira (Por) Movistar Team0:02:54
11Patrick Konrad (Aut) Bora-Hansgrohe0:03:12
12Simon Spilak (Slo) Katusha-Alpecin0:03:21
13Sam Oomen (Ned) Team Sunweb0:03:24
14Daniel Martin (Irl) UAE Team Emirates0:03:29
15Zdenek Stybar (Cze) Quick-Step Floors0:03:31
16Pieter Serry (Bel) Quick-Step Floors0:03:38
17Vicente Rubio (Spa) Aviludo-Louletano-Uli0:03:47
18Dion Smith (NZl) Wanty-Groupe Gobert0:03:48
19Louis Meintjes (RSA) Dimension Data0:03:52
20Rúben Guerreiro (Por) Trek-Segafredo0:03:54
21Valerio Conti (Ita) UAE Team Emirates0:03:57
22Cesare Benedetti (Ita) Bora-Hansgrohe0:03:58
23Frederik Backaert (Bel) Wanty-Groupe Gobert0:04:07
24Philippe Gilbert (Bel) Quick-Step Floors0:04:18
25Joaquim Silva (Por) Caja Rural-Seguros RGA0:04:22
26Maurits Lammertink (Ned) Katusha-Alpecin0:04:25
27Richie Porte (Aus) BMC Racing Team0:04:28
28Tony Martin (Ger) Katusha-Alpecin0:04:54
29Vasil Kiryienka (Blr) Team Sky0:04:57
30Alejandro Manue Marque (Spa) Sporting-Tavira0:05:02
31Simon Geschke (Ger) Team Sunweb0:05:04
32César Fonte (Por) W52-FC Porto0:05:16
33Jonathan Lastra Martinez (Spa) Caja Rural-Seguros RGA0:05:18
34Ben Swift (GBr) UAE Team EmiratesRow 33 - Cell 2
35Daniel Mestre (Por) Efapel0:05:30
36Gustavo Veloso (Spa) W52-FC Porto0:05:51
37Henrique Casimiro (Por) Efapel0:06:15
38Luís Mendonça (Por) Aviludo-Louletano-UliRow 37 - Cell 2
39Eduardo Sepulveda (Arg) Movistar Team0:06:18
40Julen Amezqueta Moreno (Spa) Caja Rural-Seguros RGA0:06:35
41Dylan Teuns (Bel) BMC Racing Team0:06:40
42Vegard Stake Laengen (Nor) UAE Team Emirates0:06:41
43Kenny Elissonde (Fra) Team Sky0:06:50
44Dimitri Claeys (Bel) Cofidis, Solutions Credits0:06:55
45Guillaume Bonnafond (Fra) Cofidis, Solutions Credits0:07:12
46Jesus Del Pino (Spa) Efapel0:07:33
47Scott Thwaites (GBr) Dimension Data0:07:34
48Jens Keukeleire (Bel) Lotto Soudal0:07:46
49Jóni Brandão (Por) Sporting-Tavira0:08:13
50Rui Vinhas (Por) W52-FC Porto0:08:45
51André Carvalho (Por) Liberty Seguros-Carglass0:09:03
52Amund Grøndahl Jansen (Nor) LottoNL-Jumbo0:09:42
53Edvald Boasson Hagen (Nor) Dimension Data0:09:48
54Oscar Hernandez (Spa) Aviludo-Louletano-Uli0:09:55
55Edgar Pinto (Por) Vito-Feirense-Blackjack0:10:02
56Lennard Kämna (Ger) Team Sunweb0:10:26
57José Gonçalves (Por) Katusha-Alpecin0:10:28
58Stefan Küng (Swi) BMC Racing Team0:10:42
59Aleksandr Grigorev (Rus) Sporting-Tavira0:10:53
60Egor Silin (Rus) Radio Popular-Boavista0:11:09
61Jasper Stuyven (Bel) Trek-Segafredo0:11:16
62Nikolas Maes (Bel) Lotto Soudal0:12:07
63Jasper De Buyst (Bel) Lotto Soudal0:12:21
64Andre Crispim (Por) Liberty Seguros-CarglassRow 63 - Cell 2
65Luis Alfonso (Por) Vito-Feirense-Blackjack0:12:23
66Jhonatan Restrepo (Col) Katusha-Alpecin0:12:38
67Michal Golas (Pol) Team Sky0:13:38
68Rafael Silva (Por) Efapel0:13:49
69Xuban Errazquin (Spa) Vito-Feirense-Blackjack0:13:57
70Simon Gerrans (Aus) BMC Racing Team0:14:04
71Hugo Nunes (Por) Miranda-MortáguaRow 70 - Cell 2
72Jai Hindley (Aus) Team Sunweb0:14:05
73Luís Gomes (Por) Radio Popular-Boavista0:14:30
74Joao Rodrigues (Por) W52-FC Porto0:14:40
75Timothy Dupont (Bel) Wanty-Groupe Gobert0:14:52
76Laurens ten Dam (Ned) Team Sunweb0:15:26
77Gonçalo Carvalho (Por) Miranda-Mortágua0:15:31
78Johann Van Zyl (RSA) Dimension Data0:15:58
79Jens Debusschere (Bel) Lotto Soudal0:16:01
80Lukasz Wisniowski (Pol) Team Sky0:16:26
81Ignatas Konovalovas (Ltu) FDJ0:16:31
82Florian Senechal (Fra) Quick-Step Floors0:16:53
83Lukas Pöstlberger (Aut) Bora-Hansgrohe0:16:54
84Tiago Machado (Por) Katusha-Alpecin0:17:03
85David Rodrigues (Por) Radio Popular-Boavista0:17:36
86Mario Gonzalez (Spa) Sporting-Tavira0:17:41
87Nuno Almeida (Por) LA.Aluminios0:18:29
88Jorge Magalhães (Por) Miranda-Mortágua0:18:50
89Tom Devriendt (Bel) Wanty-Groupe Gobert0:19:04
90Lawrence Naesen (Bel) Lotto Soudal0:19:09
91Arnaud Demare (Fra) FDJ0:19:21
92Gaspar Gonçalves (Por) Liberty Seguros-Carglass0:19:25
93Bert-Jan Lindeman (Ned) LottoNL-Jumbo0:19:29
94Lennard Hofstede (Ned) Team Sunweb0:19:32
95Sepp Kuss (USA) LottoNL-Jumbo0:19:40
96Venceslau Fernandes (Por) Liberty Seguros-Carglass0:19:53
97Hugo Sancho (Por) Vito-Feirense-Blackjack0:20:57
98Jan Polanc (Slo) UAE Team Emirates0:21:56
99Jurgen Roelandts (Bel) BMC Racing Team0:21:59
100Olivier Le Gac (Fra) FDJ0:22:11
101Jelle Wallays (Bel) Lotto Soudal0:23:38
102Benjamin King (USA) Dimension Data0:23:48
103Ricardo Mestre (Por) W52-FC Porto0:23:49
104Timo Roosen (Ned) LottoNL-Jumbo0:24:04
105Davide Cimolai (Ita) FDJ0:24:09
106Yves Lampaert (Bel) Quick-Step Floors0:24:17
107Paul Martens (Ger) LottoNL-Jumbo0:24:19
108Loïc Vliegen (Bel) BMC Racing Team0:24:56
109Mauricio Moreira (Uru) Caja Rural-Seguros RGA0:25:49
110Owain Doull (GBr) Team Sky0:26:18
111Chad Haga (USA) Team Sunweb0:26:25
112Mickael Delage (Fra) FDJ0:26:43
113Josu Zabala Lopez (Spa) Caja Rural-Seguros RGA0:26:53
114Andreas Schillinger (Ger) Bora-Hansgrohe0:27:05
115Rory Sutherland (Aus) UAE Team Emirates0:27:33
116Nuno Meireles (Por) Miranda-Mortágua0:28:05
117Ryan Mullen (Irl) Trek-Segafredo0:28:09
118John Degenkolb (Ger) Trek-Segafredo0:28:55
119Gonçalo Leaça (Por) LA.Aluminios0:30:27
120Rafael Reis (Por) Caja Rural-Seguros RGA0:31:08
121António Barbio (Por) Miranda-Mortágua0:31:14
122Edward Ravasi (Ita) UAE Team Emirates0:31:56
123David Livramento (Por) Sporting-Tavira0:32:27
124Michaël Van Staeyen (Bel) Cofidis, Solutions Credits0:32:50
125Dylan Groenewegen (Ned) LottoNL-Jumbo0:33:06
126Gregory Rast (Swi) Trek-Segafredo0:33:08
127Francisco Campos (Por) Miranda-Mortágua0:33:13
128Nicola Toffali (Ita) Sporting-Tavira0:33:26
129Luís Fernandes (Por) Aviludo-Louletano-Uli0:35:26
130Yury Trofimov (Rus) Radio Popular-Boavista0:35:33
131Márcio Barbosa (Por) Aviludo-Louletano-Uli0:36:00
132Fábio Mansilhas (Por) LA.Aluminios0:36:16
133Rafael Lourenço (Por) Liberty Seguros-Carglass0:37:12
134João Fernandes (Por) LA.Aluminios0:37:59
135Oscar Pelegri (Spa) Radio Popular-Boavista0:38:38
136Matteo Pelucchi (Ita) Bora-Hansgrohe0:38:47
137Aleksejs Saramotins (Lat) Bora-Hansgrohe0:38:57
138Victor Campenaerts (Bel) Lotto Soudal0:39:13
139Samuel Caldeira (Por) W52-FC Porto0:40:44
140César Martingil (Por) Liberty Seguros-Carglass0:42:20
141Patrick Videira (Por) LA.Aluminios0:42:51
142Bruno Silva (Por) Efapel0:43:19
143Marcos Jurado (Spa) Efapel0:44:01
144Paulo Silva (Por) LA.Aluminios0:45:09
145André Evangelista (Por) Aviludo-Louletano-Uli0:46:40
146Pedro Paulinho (Por) Efapel0:49:22
Swipe to scroll horizontally
Points Classification
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Michal Kwiatkowski (Pol) Team Sky51pts
2Dylan Groenewegen (Ned) LottoNL-Jumbo50Row 1 - Cell 3
3John Degenkolb (Ger) Trek-Segafredo24Row 2 - Cell 3
4Matteo Pelucchi (Ita) Bora-Hansgrohe24Row 3 - Cell 3
5Timothy Dupont (Bel) Wanty-Groupe Gobert21Row 4 - Cell 3
6Bauke Mollema (Ned) Trek-Segafredo20Row 5 - Cell 3
7Rúben Guerreiro (Por) Trek-Segafredo20Row 6 - Cell 3
8Arnaud Demare (Fra) FDJ20Row 7 - Cell 3
9Jurgen Roelandts (Bel) BMC Racing Team20Row 8 - Cell 3
10Geraint Thomas (GBr) Team Sky16Row 9 - Cell 3
11Serge Pauwels (Bel) Dimension Data16Row 10 - Cell 3
12Stefan Küng (Swi) BMC Racing Team16Row 11 - Cell 3
13Daniel Martin (Irl) UAE Team Emirates13Row 12 - Cell 3
14Florian Senechal (Fra) Quick-Step Floors13Row 13 - Cell 3
15Jaime Roson (Spa) Movistar Team10Row 14 - Cell 3
Swipe to scroll horizontally
Mountains Classification
#Rider Name (Country) TeamResultHeader Cell - Column 3
1Benjamin King (USA) Dimension Data21pts
2Michal Kwiatkowski (Pol) Team Sky19Row 1 - Cell 3
3Lukas Pöstlberger (Aut) Bora-Hansgrohe11Row 2 - Cell 3
4Joao Rodrigues (Por) W52-FC Porto11Row 3 - Cell 3
5Serge Pauwels (Bel) Dimension Data11Row 4 - Cell 3
6Ricardo Mestre (Por) W52-FC Porto9Row 5 - Cell 3
7Bauke Mollema (Ned) Trek-Segafredo8Row 6 - Cell 3
8Yves Lampaert (Bel) Quick-Step Floors7Row 7 - Cell 3
Swipe to scroll horizontally
Best Young Rider
#Rider Name (Country) TeamResult
1Sam Oomen (Ned) Team Sunweb18:57:35
2André Carvalho (Por) Liberty Seguros-Carglass0:05:39
3Lennard Kämna (Ger) Team Sunweb0:07:02
4Andre Crispim (Por) Liberty Seguros-Carglass0:08:57
5Xuban Errazquin (Spa) Vito-Feirense-Blackjack0:10:33
6Hugo Nunes (Por) Miranda-Mortágua0:10:40
7Jai Hindley (Aus) Team Sunweb0:10:41
8Gonçalo Carvalho (Por) Miranda-Mortágua0:12:07
Swipe to scroll horizontally
#Rider Name (Country) TeamResult
1Team Sky56:47:11
2Quick - Step Floors0:01:24
3BMC Racing Team0:03:20
4Bora - Hansgrohe0:03:43
5Team Katusha Alpecin0:04:34
6UAE Team Emirates0:04:55
7Movistar Team0:06:04
8Team Dimension Data0:06:19
9Team Sunweb0:08:35
10Caja Rural - Seguros RGA0:08:44
11Wanty - Groupe Gobert0:09:08
12Trek - Segafredo0:10:03
13W52-FC Porto0:13:05
15Aviludo - Louletano - Uli0:14:34
16Sporting - Tavira0:18:28
17Lotto Soudal0:19:33
18Team Lotto Nl - Jumbo0:22:25
19Vito - Feirense - Blackja0:28:13
20Liberty Seguros - Carglas0:31:51
21Cofidis, Solutions Credit0:33:09
22Radio Popular - Boavista0:33:59
24Miranda - Mortágua0:39:22

Thank you for reading 5 articles in the past 30 days*

Join now for unlimited access

Enjoy your first month for just £1 / $1 / €1

*Read any 5 articles for free in each 30-day period, this automatically resets

After your trial you will be billed £4.99 $7.99 €5.99 per month, cancel anytime. Or sign up for one year for just £49 $79 €59

Join now for unlimited access

Try your first month for just £1 / $1 / €1

Daniel Ostanek
Production editor

Daniel Ostanek is production editor at Cyclingnews, having joined in 2017 as a freelance contributor and later being hired as staff writer. Prior to joining the team, he had written for most major publications in the cycling world, including CyclingWeekly, Rouleur, and CyclingTips.


Daniel has reported from the world's top races, including the Tour de France and the spring Classics, and has interviewed many of the sport's biggest stars, including Wout van Aert, Remco Evenepoel, Demi Vollering, and Anna van der Breggen.


As well as original reporting, news and feature writing, and production work, Daniel also runs The Leadout newsletter and oversees How to Watch guides throughout the season. His favourite races are Strade Bianche and the Volta a Portugal, and he rides a Colnago C40.

Latest on Cyclingnews