O Gran Camiño: Iván Romeo converts 11km solo into stage 3 victory as Jørgen Nordhagen takes race lead

OTURA, SPAIN - FEBRUARY 19: Ivan Romeo of Spain and Team Movistar celebrates at finish line as stage winner during the 72nd Vuelta a Andalucia Ruta Ciclista Del Sol 2026, Stage 2 a 138.6km stage from Torrox to Otura 797m on February 19, 2026 in Otura, Spain. (Photo by Szymon Gruchalski/Getty Images)
Iván Romeo soloed to the win at O Gran Camiño much like he did on stage 2 of the Vuelta a Andalucía (pictured) (Image credit: Getty Images)

Spanish road champion Iván Romeo gave Movistar their second victory in as many days on stage 3 of O Gran Camiño, attacking away solo with 11km to go after sparking attacks that split the race up on the only categorised climb of the day.

Roméo launched his first attack on the shallow but lengthy Alto Pico Muralla climb with 42km to go, which drew out several of the top climbers and eventually led to a group of six riders breaking away over the top of the ascent.

Article continues below

Adam Yates (UAE Team Emirates-XRG), George Bennett (NSN) and Jørgen Nordhagen (Visma-Lease a Bike) tried to chase. However, the Kiwi sat on the back with his teammate ahead, and the other two struggled to match the power of Roméo on the flatter terrain.

As he approached the final 11km, Roméo got into his aero position and put the power down to drop his two companions, which he did with apparent ease, before storming away solo to win the third stage by 15 seconds from Pinarello.

Roméo started the day 1:14 down, due to the puncture and bike change that ruined his opening stage time trial effort when he was fighting for the win. This stage victory has put him back into the overall race, 27 seconds down, ahead of the two key GC days on stages 4 and 5.

How it unfolded

The third stage of O Gran Camiño kicked off over undulating roads heading south from Carballo in Galicia, with 169km taking the peloton down to Padrón and the finale focused on the one categorised climb of the day: Alto Pico Muralla (10.7 km at 3.8%).

A six-man breakaway formed after the opening 30km of racing on Thursday, with Xabier Isasa (Euskaltel-Euskadi), Carlos Miguel Salgueiro (Team Tavira-Crédito Agrícola), Fábio Costa (Feira dos Sofás-Boavista), Simão Lucas (Tavfer-Ovos Matinados-Mortágua), Jacob Roy and his Meridian Racing p/b de la Uz teammate Joshua Lebo getting up the road.

The race then steadied into a holding pattern, with race leader Reis' Anicolor-Campicarn team holding the breakaway's advantage around the three-minute mark. By the time the race reached the foot of the Alto Pico Muralla with 45km left to race, the break's lead was down to 1:20.

Movistar and UAE Team Emirates-XRG had also moved up by this point to position their leaders for the 10.7km ascent, and it was Spanish national champion Ivan Roméo who attacked first with 7.2km of the shallow climb still to race, which led to the break being caught.

This caused several splits in the main peloton, but he was closely marked by Adam Yates for UAE, who got himself on the front to keep the pace high. New Zealand national champion Bennett was the next to counter off the front, and he had Balderstone for company.

After his early move, Roméo tried to get away on his own again; however, Yates snapped onto his wheel once more with Visma's Nordhagen and Bennett's NSN teammate Pinarello also able to follow. They quickly joined the leading duo to make it six in front, with yellow jersey Reis around one minute down at the top of the climb, but the main chasing bunch was only 35 seconds behind.

Heading onto the mostly downhill 33km run to the line, Nordhagen moved into the virtual lead of the race, having started the day 12 seconds down on Reis, with Yates at 25 and Pinarello at 30 seconds the next closest to the yellow jersey at the beginning of the stage.

With nine bonus seconds on offer across three intermediate sprint points, there was a fierce fight in the break to get them, with Bennett winning the first, Nordhagen the second, and Pinarello the third.

Across the three points, the Italian gained enough seconds to overtake Yates virtually and move within 11 seconds of Nordhagen, but also got himself into a three-man move out of the six-man break, as cooperation failed and Roméo looked to get away again. Balderstone joined the pair, with Yates, Bennett and the young Norwegian chasing at 10 seconds.

Roméo finally got what he wanted with 11km to go, powering away from Pinarello and Balderstone in the saddle. From here, no one was able to match him from any of the chase groups, with the Spanish champion crossing the line 15 seconds ahead of his closest chasers.

Bennett led the next group of three home 25 seconds after Roméo, with the main peloton finishing 44 seconds in arrears, led over the line by Visma development team rider Patryk Goszczurny. After his day in yellow, Reis ceded the jersey in a group that finished 4:40 down on the stage winner.

Results

Swipe to scroll horizontally
Stage 3 result

Pos

Rider

Time

1

Ivan Romeo Abad (Spa) Movistar Team

3:52:33

2

Alessandro Pinarello (Ita) NSN Cycling Team

00:00:15

3

Abel Balderstone Roumens (Spa) Caja Rural-Seguros RGA

00:00:15

4

George Bennett (NZl) NSN Cycling Team

00:00:25

5

Adam Richard Yates (GBr) UAE Team Emirates-XRG

00:00:25

6

Jørgen Nordhagen (Nor) Visma-Lease a Bike

00:00:25

7

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

00:00:44

8

David Dominguez Vilchez (Spa) Feira Dos Sofás - Boavista

00:00:44

9

Mats Wenzel (Lux) Equipo Kern Pharma

00:00:44

10

Nelson Oliveira (Por) Movistar Team

00:00:44

11

Kevin Vermaerke (USA) UAE Team Emirates-XRG

00:00:44

12

Carlos Salgueiro (Por) Team Tavira /Crédito Agricola

00:00:44

13

Keegam Swirbul (USA) Efapel Cycling

00:00:44

14

Diego Uriarte Belzunegi (Spa) Equipo Kern Pharma

00:00:44

15

Jon Agirre Egaña (Spa) Euskaltel-Euskadi

00:00:44

16

Jesus David Peña Jimenez (Col) Efapel Cycling

00:00:44

17

Jose Felix Parra Cuerda (Spa) Caja Rural-Seguros RGA

00:00:44

18

Txomin Juaristi Arrieta (Spa) Euskaltel-Euskadi

00:00:44

19

Jan Castellon Ribalta (Spa) Caja Rural-Seguros RGA

00:00:44

20

Sergio Geovani Chumil Gonzalez (Gua) Burgos Burpellet BH

00:00:44

21

Anton Schiffer (Ger) Visma-Lease a Bike

00:00:44

22

Emanuel Duarte (Por) Credibom / La Alumínios / Marcos Car

00:00:44

23

Pedro Pinto (Por) Efapel Cycling

00:00:44

24

Rafael Durães (Por) Efapel Cycling

00:00:44

25

Vegard Stake Laengen (Nor) UAE Team Emirates-XRG

00:00:44

26

Louis Sutton (GBr) Euskaltel-Euskadi

00:00:44

27

Mario Aparicio Muñoz (Spa) Burgos Burpellet BH

00:00:44

28

Jesus Herrada (Spa) Burgos Burpellet BH

00:00:44

29

Tijmen Graat (Ned) Visma-Lease a Bike

00:00:44

30

Jesus Del Pino Corrochano (Spa) Aviludo - Louletano - Loulé

00:00:44

31

Artem Nych (Rus) Anicolor/Campicarn

00:00:44

32

Duarte Domingues (Por) Credibom / La Alumínios / Marcos Car

00:00:44

33

Ruben Fernandez (Spa) Anicolor/Campicarn

00:00:44

34

Carlos Garcia Pierna (Spa) Burgos Burpellet BH

00:00:44

35

Sven Aleksander Mernik (Slo) Team Visma | Lease A Bike Development

00:00:44

36

Antonio Eric Fagundez Lima (Uru) Burgos Burpellet BH

00:00:44

37

Angel Lorenzo Sanchez Rebollido (Spa) Tavfer-Ovos Matinados-Mortágua

00:04:38

38

Hubert Lamothe (Can) Meridian Racing P/B De La Uz

00:04:38

39

Rafael Barbas (Por) Tavfer-Ovos Matinados-Mortágua

00:04:38

40

Martin Rey Vazquez (Spa) Burgos Burpellet BH

00:04:38

41

Guilherme Mestre (Por) Team Tavira /Crédito Agricola

00:04:38

42

Pablo Carrascosa Miller (Spa) Equipo Kern Pharma

00:04:38

43

Ibai Azanza Burusco (Spa) Equipo Kern Pharma

00:04:38

44

Patrick Casey (Irl) Nsn Development Team

00:04:38

45

Nadav Raisberg (Isr) NSN Cycling Team

00:04:38

46

Zachary Marriage (Aus) Nsn Development Team

00:04:38

47

Gorka Sorarrain Agirrezabala (Spa) Caja Rural-Seguros RGA

00:04:38

48

Xabier Isasa Larrañaga (Spa) Euskaltel-Euskadi

00:04:38

49

Fábio Costa (Por) Feira Dos Sofás - Boavista

00:04:38

50

Danny van der Tuuk (Pol) Euskaltel-Euskadi

00:04:38

51

Jacob Roy (Can) Meridian Racing P/B De La Uz

00:04:38

52

Ailetz Lasa Lizarraga (Spa) Team Tavira /Crédito Agricola

00:04:38

53

Tomas Pombo Alvarez (Spa) Movistar Team Academy

00:04:38

54

Hugo Nunes (Por) Credibom / La Alumínios / Marcos Car

00:04:38

55

Finnegan Murphy (NZl) Meridian Racing P/B De La Uz

00:04:38

56

Julius Johansen (Den) UAE Team Emirates-XRG

00:04:38

57

Gonçalo Carvalho (Por) Tavfer-Ovos Matinados-Mortágua

00:04:38

58

Daniel Viegas (Por) Aviludo - Louletano - Loulé

00:04:38

59

Carlos Canal Blanco (Spa) Movistar Team

00:04:38

60

Rafael Reis (Por) Anicolor/Campicarn

00:04:38

61

Alexis Guerin (Fra) Anicolor/Campicarn

00:04:38

62

Pedro Silva (Por) Feira Dos Sofás - Boavista

00:04:38

63

Mikel Retegi Goñi (Spa) Equipo Kern Pharma

00:04:38

64

Lucas Lopes (Por) Efapel Cycling

00:04:38

65

Sinuhe Fernandez Rodriguez (Spa) Burgos Burpellet BH

00:04:38

66

Abdulla Jasim Al-Ali (UAE) Uae Team Emirates Gen-Z

00:04:38

67

Joaquim Silva (Por) Efapel Cycling

00:04:38

68

Aleksandr Grigorev (Rus) Efapel Cycling

00:04:38

69

Jorge Galvez Lopez (Spa) Aviludo - Louletano - Loulé

00:08:14

70

Afonso Lopes (Por) Feira Dos Sofás - Boavista

00:09:14

71

Finlay Tarling (GBr) Nsn Development Team

00:09:33

72

Unai Aznar Vijuesca (Spa) Euskaltel-Euskadi

00:09:33

73

Andoni Lopez de Abetxuko Jimenez (Spa) Anicolor/Campicarn

00:09:33

74

Jorge Arcas (Spa) Movistar Team

00:09:33

75

Rodrigo Alves (Por) Team Tavira /Crédito Agricola

00:09:33

76

Santiago Mesa Pietralunga (Col) Anicolor/Campicarn

00:09:33

77

Antonio Jesus Soto Guirao (Spa) Equipo Kern Pharma

00:09:33

78

Jose Bicho (Por) Team Tavira /Crédito Agricola

00:09:33

79

Davide Formolo (Ita) Movistar Team

00:09:33

80

João Medeiros (Por) Credibom / La Alumínios / Marcos Car

00:09:33

81

Diogo Pinto (Por) Credibom / La Alumínios / Marcos Car

00:09:33

82

Alvaro Garcia Gimenez (Spa) Nsn Development Team

00:09:33

83

Samuel Fernandez Garcia (Spa) Caja Rural-Seguros RGA

00:09:38

84

Samuel Fernandez Heres (Spa) Euskaltel-Euskadi

00:09:38

85

Benjamin Juracich (USA) Meridian Racing P/B De La Uz

00:11:34

86

Joshua Lebo (USA) Meridian Racing P/B De La Uz

00:11:34

87

Jade Rohde (USA) Meridian Racing P/B De La Uz

00:12:02

88

Mohammad Almutaiwei (UAE) Uae Team Emirates Gen-Z

00:12:02

89

João Matias (Por) Tavfer-Ovos Matinados-Mortágua

00:12:02

90

None (Cze) Movistar Team

00:12:02

91

Enzo Leijnse (Ned) Anicolor/Campicarn

00:12:02

92

João Silva (Por) Feira Dos Sofás - Boavista

00:12:02

93

Simão Lucas (Por) Tavfer-Ovos Matinados-Mortágua

00:12:02

94

Cláudio Leal (Por) Aviludo - Louletano - Loulé

00:12:02

95

Lois Dejesus Guisande (Spa) Tavfer-Ovos Matinados-Mortágua

00:12:02

96

Diego Lopez Cano (Spa) Tavfer-Ovos Matinados-Mortágua

00:12:02

97

Rúben Rodrigues (Por) Feira Dos Sofás - Boavista

00:12:02

98

João António (Por) Aviludo - Louletano - Loulé

00:12:02

99

João Oliveira (Por) Credibom / La Alumínios / Marcos Car

00:12:02

100

William Smith (GBr) Team Visma | Lease A Bike Development

00:12:02

101

Pablo Lospitao Gonzalez (Spa) Caja Rural-Seguros RGA

00:12:02

102

Jakub Otruba (Cze) Caja Rural-Seguros RGA

00:12:02

103

Tomas Contte (Arg) Aviludo - Louletano - Loulé

00:12:02

104

Gonçalo Leaça (Por) Credibom / La Alumínios / Marcos Car

00:12:02

105

Gabriel Costa (Por) Team Tavira /Crédito Agricola

00:12:02

106

Noah Campos (Por) Team Tavira /Crédito Agricola

00:12:02

107

Filipe Francisco (Por) Aviludo - Louletano - Loulé

00:12:02

108

João Anunciação (Por) Feira Dos Sofás - Boavista

Row 107 - Cell 2
Swipe to scroll horizontally
Points

Pos

Rider

Points

1

Ivan Romeo Abad (Spa) Movistar Team

30

2

Alessandro Pinarello (Ita) NSN Cycling Team

25

3

Abel Balderstone Roumens (Spa) Caja Rural-Seguros RGA

22

4

George Bennett (NZl) NSN Cycling Team

19

5

Adam Richard Yates (GBr) UAE Team Emirates-XRG

17

6

Jørgen Nordhagen (Nor) Visma-Lease a Bike

15

7

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

13

8

David Dominguez Vilchez (Spa) Feira Dos Sofás - Boavista

11

9

Mats Wenzel (Lux) Equipo Kern Pharma

9

10

Nelson Oliveira (Por) Movistar Team

7

11

Kevin Vermaerke (USA) UAE Team Emirates-XRG

6

12

Carlos Salgueiro (Por) Team Tavira /Crédito Agricola

5

13

Keegam Swirbul (USA) Efapel Cycling

4

14

Diego Uriarte Belzunegi (Spa) Equipo Kern Pharma

3

15

Jon Agirre Egaña (Spa) Euskaltel-Euskadi

2

Swipe to scroll horizontally
Mountains

Pos

Rider

Points

1

Alessandro Pinarello (Ita) NSN Cycling Team

5

2

George Bennett (NZl) NSN Cycling Team

3

3

Jørgen Nordhagen (Nor) Visma-Lease a Bike

1

Swipe to scroll horizontally
Young riders

Pos

Rider

Time

1

Jørgen Nordhagen (Nor) Visma-Lease a Bike

7:24:30

2

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

00:00:40

3

Sven Aleksander Mernik (Slo) Team Visma | Lease A Bike Development

00:01:46

4

Duarte Domingues (Por) Credibom / La Alumínios / Marcos Car

00:03:24

5

Rafael Durães (Por) Efapel Cycling

00:03:38

6

Patrick Casey (Irl) Nsn Development Team

00:07:24

7

Guilherme Mestre (Por) Team Tavira /Crédito Agricola

00:07:50

8

Rafael Barbas (Por) Tavfer-Ovos Matinados-Mortágua

00:07:54

9

Jacob Roy (Can) Meridian Racing P/B De La Uz

00:11:00

10

Tomas Pombo Alvarez (Spa) Movistar Team Academy

00:11:26

11

Ibai Azanza Burusco (Spa) Equipo Kern Pharma

00:13:12

12

Jose Bicho (Por) Team Tavira /Crédito Agricola

00:14:07

13

William Smith (GBr) Team Visma | Lease A Bike Development

00:14:16

14

Cláudio Leal (Por) Aviludo - Louletano - Loulé

00:14:37

15

Finlay Tarling (GBr) Nsn Development Team

00:15:42

16

Alvaro Garcia Gimenez (Spa) Nsn Development Team

00:16:27

17

Pablo Lospitao Gonzalez (Spa) Caja Rural-Seguros RGA

00:16:36

18

Hubert Lamothe (Can) Meridian Racing P/B De La Uz

00:16:45

19

Afonso Lopes (Por) Feira Dos Sofás - Boavista

00:17:04

20

Rodrigo Alves (Por) Team Tavira /Crédito Agricola

00:17:36

21

Noah Campos (Por) Team Tavira /Crédito Agricola

00:17:43

22

Benjamin Juracich (USA) Meridian Racing P/B De La Uz

00:18:36

23

João António (Por) Aviludo - Louletano - Loulé

00:19:36

24

Jade Rohde (USA) Meridian Racing P/B De La Uz

00:19:44

25

Gabriel Costa (Por) Team Tavira /Crédito Agricola

00:20:00

26

Rúben Rodrigues (Por) Feira Dos Sofás - Boavista

00:22:11

27

None (Cze) Movistar Team

00:23:06

28

Lois Dejesus Guisande (Spa) Tavfer-Ovos Matinados-Mortágua

00:23:13

29

Simão Lucas (Por) Tavfer-Ovos Matinados-Mortágua

00:23:20

30

Diego Lopez Cano (Spa) Tavfer-Ovos Matinados-Mortágua

00:24:48

Swipe to scroll horizontally
General classification

Pos

Rider

Time

1

Alessandro Pinarello (Ita) NSN Cycling Team

7:24:30

2

Jørgen Nordhagen (Nor) Visma-Lease a Bike

00:00:00

3

Nelson Oliveira (Por) Movistar Team

00:00:12

4

Adam Richard Yates (GBr) UAE Team Emirates-XRG

00:00:16

5

Abel Balderstone Roumens (Spa) Caja Rural-Seguros RGA

00:00:19

6

Ivan Romeo Abad (Spa) Movistar Team

00:00:29

7

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

00:00:40

8

Kevin Vermaerke (USA) UAE Team Emirates-XRG

00:00:51

9

George Bennett (NZl) NSN Cycling Team

00:00:52

10

Diego Uriarte Belzunegi (Spa) Equipo Kern Pharma

00:00:55

11

Txomin Juaristi Arrieta (Spa) Euskaltel-Euskadi

00:00:57

12

Emanuel Duarte (Por) Credibom / La Alumínios / Marcos Car

00:01:02

13

Artem Nych (Rus) Anicolor/Campicarn

00:01:12

14

Antonio Eric Fagundez Lima (Uru) Burgos Burpellet BH

00:01:12

15

Tijmen Graat (Ned) Visma-Lease a Bike

00:01:12

16

Louis Sutton (GBr) Euskaltel-Euskadi

00:01:18

17

Anton Schiffer (Ger) Visma-Lease a Bike

00:01:19

18

Jose Felix Parra Cuerda (Spa) Caja Rural-Seguros RGA

00:01:25

19

Mats Wenzel (Lux) Equipo Kern Pharma

00:01:27

20

Carlos Garcia Pierna (Spa) Burgos Burpellet BH

00:01:33

21

Keegam Swirbul (USA) Efapel Cycling

00:01:36

22

Ruben Fernandez (Spa) Anicolor/Campicarn

00:01:37

23

Jesus Herrada (Spa) Burgos Burpellet BH

00:01:40

24

Mario Aparicio Muñoz (Spa) Burgos Burpellet BH

00:01:41

25

Sven Aleksander Mernik (Slo) Team Visma | Lease A Bike Development

00:01:46

26

Jon Agirre Egaña (Spa) Euskaltel-Euskadi

00:01:48

27

Jesus David Peña Jimenez (Col) Efapel Cycling

00:02:05

28

Jesus Del Pino Corrochano (Spa) Aviludo - Louletano - Loulé

00:02:09

29

Jan Castellon Ribalta (Spa) Caja Rural-Seguros RGA

00:02:12

30

Carlos Salgueiro (Por) Team Tavira /Crédito Agricola

00:02:18

31

Sergio Geovani Chumil Gonzalez (Gua) Burgos Burpellet BH

00:02:25

32

Vegard Stake Laengen (Nor) UAE Team Emirates-XRG

00:02:36

33

David Dominguez Vilchez (Spa) Feira Dos Sofás - Boavista

00:02:39

34

Pedro Pinto (Por) Efapel Cycling

00:02:39

35

Duarte Domingues (Por) Credibom / La Alumínios / Marcos Car

00:03:24

36

Rafael Durães (Por) Efapel Cycling

00:03:38

37

Rafael Reis (Por) Anicolor/Campicarn

00:04:05

38

Julius Johansen (Den) UAE Team Emirates-XRG

00:04:47

39

Carlos Canal Blanco (Spa) Movistar Team

00:04:49

40

Lucas Lopes (Por) Efapel Cycling

00:04:58

41

Gorka Sorarrain Agirrezabala (Spa) Caja Rural-Seguros RGA

00:06:06

42

Nadav Raisberg (Isr) NSN Cycling Team

00:06:26

43

Pedro Silva (Por) Feira Dos Sofás - Boavista

00:06:30

44

Pablo Carrascosa Miller (Spa) Equipo Kern Pharma

00:06:30

45

Zachary Marriage (Aus) Nsn Development Team

00:06:43

46

Ailetz Lasa Lizarraga (Spa) Team Tavira /Crédito Agricola

00:06:49

47

Aleksandr Grigorev (Rus) Efapel Cycling

00:06:50

48

Alexis Guerin (Fra) Anicolor/Campicarn

00:06:57

49

Daniel Viegas (Por) Aviludo - Louletano - Loulé

00:07:05

50

Sinuhe Fernandez Rodriguez (Spa) Burgos Burpellet BH

00:07:06

51

Patrick Casey (Irl) Nsn Development Team

00:07:24

52

Martin Rey Vazquez (Spa) Burgos Burpellet BH

00:07:24

53

Mikel Retegi Goñi (Spa) Equipo Kern Pharma

00:07:39

54

Guilherme Mestre (Por) Team Tavira /Crédito Agricola

00:07:50

55

Rafael Barbas (Por) Tavfer-Ovos Matinados-Mortágua

00:07:54

56

Hugo Nunes (Por) Credibom / La Alumínios / Marcos Car

00:08:01

57

Finnegan Murphy (NZl) Meridian Racing P/B De La Uz

00:08:04

58

Xabier Isasa Larrañaga (Spa) Euskaltel-Euskadi

00:08:36

59

Gonçalo Carvalho (Por) Tavfer-Ovos Matinados-Mortágua

00:08:36

60

Angel Lorenzo Sanchez Rebollido (Spa) Tavfer-Ovos Matinados-Mortágua

00:09:02

61

Fábio Costa (Por) Feira Dos Sofás - Boavista

00:09:46

62

Abdulla Jasim Al-Ali (UAE) Uae Team Emirates Gen-Z

00:10:54

63

Jacob Roy (Can) Meridian Racing P/B De La Uz

00:11:00

64

Jorge Galvez Lopez (Spa) Aviludo - Louletano - Loulé

00:11:14

65

Samuel Fernandez Garcia (Spa) Caja Rural-Seguros RGA

00:11:18

66

Tomas Pombo Alvarez (Spa) Movistar Team Academy

00:11:26

67

Jakub Otruba (Cze) Caja Rural-Seguros RGA

00:11:52

68

Andoni Lopez de Abetxuko Jimenez (Spa) Anicolor/Campicarn

00:12:11

69

Diogo Pinto (Por) Credibom / La Alumínios / Marcos Car

00:13:05

70

Santiago Mesa Pietralunga (Col) Anicolor/Campicarn

00:13:05

71

Ibai Azanza Burusco (Spa) Equipo Kern Pharma

00:13:12

72

Filipe Francisco (Por) Aviludo - Louletano - Loulé

00:13:40

73

Jose Bicho (Por) Team Tavira /Crédito Agricola

00:14:07

74

William Smith (GBr) Team Visma | Lease A Bike Development

00:14:16

75

Enzo Leijnse (Ned) Anicolor/Campicarn

00:14:21

76

Cláudio Leal (Por) Aviludo - Louletano - Loulé

00:14:37

77

Danny van der Tuuk (Pol) Euskaltel-Euskadi

00:14:42

78

Joaquim Silva (Por) Efapel Cycling

00:14:49

79

Unai Aznar Vijuesca (Spa) Euskaltel-Euskadi

00:14:53

80

Joshua Lebo (USA) Meridian Racing P/B De La Uz

00:15:03

81

João Matias (Por) Tavfer-Ovos Matinados-Mortágua

00:15:10

82

Finlay Tarling (GBr) Nsn Development Team

00:15:42

83

Jorge Arcas (Spa) Movistar Team

00:16:12

84

Alvaro Garcia Gimenez (Spa) Nsn Development Team

00:16:27

85

Pablo Lospitao Gonzalez (Spa) Caja Rural-Seguros RGA

00:16:36

86

Hubert Lamothe (Can) Meridian Racing P/B De La Uz

00:16:45

87

Afonso Lopes (Por) Feira Dos Sofás - Boavista

00:17:04

88

Rodrigo Alves (Por) Team Tavira /Crédito Agricola

00:17:36

89

Noah Campos (Por) Team Tavira /Crédito Agricola

00:17:43

90

Benjamin Juracich (USA) Meridian Racing P/B De La Uz

00:18:36

91

Tomas Contte (Arg) Aviludo - Louletano - Loulé

00:18:38

92

Gonçalo Leaça (Por) Credibom / La Alumínios / Marcos Car

00:19:02

93

João Silva (Por) Feira Dos Sofás - Boavista

00:19:14

94

João António (Por) Aviludo - Louletano - Loulé

00:19:36

95

Jade Rohde (USA) Meridian Racing P/B De La Uz

00:19:44

96

Antonio Jesus Soto Guirao (Spa) Equipo Kern Pharma

00:19:55

97

Gabriel Costa (Por) Team Tavira /Crédito Agricola

00:20:00

98

Samuel Fernandez Heres (Spa) Euskaltel-Euskadi

00:20:35

99

João Medeiros (Por) Credibom / La Alumínios / Marcos Car

00:20:52

100

Davide Formolo (Ita) Movistar Team

00:21:06

101

Rúben Rodrigues (Por) Feira Dos Sofás - Boavista

00:22:11

102

Mohammad Almutaiwei (UAE) Uae Team Emirates Gen-Z

00:22:24

103

João Oliveira (Por) Credibom / La Alumínios / Marcos Car

00:23:05

104

None (Cze) Movistar Team

00:23:06

105

Lois Dejesus Guisande (Spa) Tavfer-Ovos Matinados-Mortágua

00:23:13

106

Simão Lucas (Por) Tavfer-Ovos Matinados-Mortágua

00:23:20

107

Diego Lopez Cano (Spa) Tavfer-Ovos Matinados-Mortágua

00:24:48

Swipe to scroll horizontally
Points classification

Pos

Rider

Points

1

Alessandro Pinarello (Ita) NSN Cycling Team

61

2

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

45

3

Jørgen Nordhagen (Nor) Visma-Lease a Bike

40

4

Abel Balderstone Roumens (Spa) Caja Rural-Seguros RGA

38

5

Ivan Romeo Abad (Spa) Movistar Team

35

6

Mats Wenzel (Lux) Equipo Kern Pharma

34

7

Adam Richard Yates (GBr) UAE Team Emirates-XRG

33

8

George Bennett (NZl) NSN Cycling Team

31

9

Julius Johansen (Den) UAE Team Emirates-XRG

30

10

Carlos Canal Blanco (Spa) Movistar Team

30

11

Nelson Oliveira (Por) Movistar Team

29

12

Rafael Reis (Por) Anicolor/Campicarn

25

13

Antonio Eric Fagundez Lima (Uru) Burgos Burpellet BH

22

14

Kevin Vermaerke (USA) UAE Team Emirates-XRG

21

15

Anton Schiffer (Ger) Visma-Lease a Bike

17

16

Jakub Otruba (Cze) Caja Rural-Seguros RGA

17

17

Hugo Nunes (Por) Credibom / La Alumínios / Marcos Car

15

18

Carlos Salgueiro (Por) Team Tavira /Crédito Agricola

14

19

Sven Aleksander Mernik (Slo) Team Visma | Lease A Bike Development

13

20

David Dominguez Vilchez (Spa) Feira Dos Sofás - Boavista

11

21

Jon Agirre Egaña (Spa) Euskaltel-Euskadi

7

22

Jesus David Peña Jimenez (Col) Efapel Cycling

7

23

Enzo Leijnse (Ned) Anicolor/Campicarn

7

24

Diego Uriarte Belzunegi (Spa) Equipo Kern Pharma

6

25

Filipe Francisco (Por) Aviludo - Louletano - Loulé

5

26

Keegam Swirbul (USA) Efapel Cycling

4

27

William Smith (GBr) Team Visma | Lease A Bike Development

4

28

Tomas Contte (Arg) Aviludo - Louletano - Loulé

4

29

Carlos Garcia Pierna (Spa) Burgos Burpellet BH

3

30

Danny van der Tuuk (Pol) Euskaltel-Euskadi

3

31

Rúben Rodrigues (Por) Feira Dos Sofás - Boavista

3

32

Txomin Juaristi Arrieta (Spa) Euskaltel-Euskadi

2

33

Hubert Lamothe (Can) Meridian Racing P/B De La Uz

2

Swipe to scroll horizontally
Mountains classification

Pos

Rider

Points

1

Tomas Contte (Arg) Aviludo - Louletano - Loulé

6

2

Alessandro Pinarello (Ita) NSN Cycling Team

5

3

Jakub Otruba (Cze) Caja Rural-Seguros RGA

3

4

George Bennett (NZl) NSN Cycling Team

3

5

Sinuhe Fernandez Rodriguez (Spa) Burgos Burpellet BH

3

6

William Smith (GBr) Team Visma | Lease A Bike Development

2

7

Jørgen Nordhagen (Nor) Visma-Lease a Bike

1

8

Joaquim Silva (Por) Efapel Cycling

1

Swipe to scroll horizontally
Young riders classification

Pos

Rider

Time

1

Jørgen Nordhagen (Nor) Visma-Lease a Bike

7:24:30

2

Patryk Goszczurny (Pol) Team Visma | Lease A Bike Development

00:00:40

3

Sven Aleksander Mernik (Slo) Team Visma | Lease A Bike Development

00:01:46

4

Duarte Domingues (Por) Credibom / La Alumínios / Marcos Car

00:03:24

5

Rafael Durães (Por) Efapel Cycling

00:03:38

6

Patrick Casey (Irl) Nsn Development Team

00:07:24

7

Guilherme Mestre (Por) Team Tavira /Crédito Agricola

00:07:50

8

Rafael Barbas (Por) Tavfer-Ovos Matinados-Mortágua

00:07:54

9

Jacob Roy (Can) Meridian Racing P/B De La Uz

00:11:00

10

Tomas Pombo Alvarez (Spa) Movistar Team Academy

00:11:26

11

Ibai Azanza Burusco (Spa) Equipo Kern Pharma

00:13:12

12

Jose Bicho (Por) Team Tavira /Crédito Agricola

00:14:07

13

William Smith (GBr) Team Visma | Lease A Bike Development

00:14:16

14

Cláudio Leal (Por) Aviludo - Louletano - Loulé

00:14:37

15

Finlay Tarling (GBr) Nsn Development Team

00:15:42

16

Alvaro Garcia Gimenez (Spa) Nsn Development Team

00:16:27

17

Pablo Lospitao Gonzalez (Spa) Caja Rural-Seguros RGA

00:16:36

18

Hubert Lamothe (Can) Meridian Racing P/B De La Uz

00:16:45

19

Afonso Lopes (Por) Feira Dos Sofás - Boavista

00:17:04

20

Rodrigo Alves (Por) Team Tavira /Crédito Agricola

00:17:36

21

Noah Campos (Por) Team Tavira /Crédito Agricola

00:17:43

22

Benjamin Juracich (USA) Meridian Racing P/B De La Uz

00:18:36

23

João António (Por) Aviludo - Louletano - Loulé

00:19:36

24

Jade Rohde (USA) Meridian Racing P/B De La Uz

00:19:44

25

Gabriel Costa (Por) Team Tavira /Crédito Agricola

00:20:00

26

Rúben Rodrigues (Por) Feira Dos Sofás - Boavista

00:22:11

27

None (Cze) Movistar Team

00:23:06

28

Lois Dejesus Guisande (Spa) Tavfer-Ovos Matinados-Mortágua

00:23:13

29

Simão Lucas (Por) Tavfer-Ovos Matinados-Mortágua

00:23:20

30

Diego Lopez Cano (Spa) Tavfer-Ovos Matinados-Mortágua

00:24:48

James Moultrie
News Writer

James Moultrie is a gold-standard NCTJ journalist who joined Cyclingnews as a News Writer in 2023 after originally contributing as a freelancer for eight months, during which time he also wrote for Eurosport, Rouleur and Cycling Weekly. Prior to joining the team he reported on races such as Paris-Roubaix and the Giro d’Italia Donne for Eurosport and has interviewed some of the sport’s top riders in Chloé Dygert, Lizzie Deignan and Wout van Aert. Outside of cycling, he spends the majority of his time watching other sports – rugby, football, cricket, and American Football to name a few.

You must confirm your public display name before commenting

Please logout and then login again, you will then be prompted to enter your display name.