| # | Rider | Team | Time | Gap |
|---|---|---|---|---|
| 1 | Leangel Linarez | Tavfer - Ovos Matinados - Mortágua | 04:33:04 | |
| 2 | Daniel Babor | Caja Rural-Seguros RGA | + 00 | |
| 3 | Tomas Barta | Caja Rural-Seguros RGA | + 00 | |
| 4 | Angel Fernandez Miguel | Burgos-BH | + 00 | |
| 5 | Francisco Campos | BAI Sicasal Petro de Luanda | + 00 | |
| 6 | Rafael Silva | Efapel Cycling | + 00 | |
| 7 | Adrián Bustamante | Kelly - Simoldes - UDO | + 00 | |
| 8 | Hugo Nunes | Radio Popular - Paredes - Boavista | + 00 | |
| 9 | Luis Mendonça | Glassdrive / Q8 / Anicolor | + 00 | |
| 10 | Jose Sousa | Kelly - Simoldes - UDO | + 00 | |
| 11 | Cesar Martingil | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 12 | Rafael Reis | Glassdrive / Q8 / Anicolor | + 00 | |
| 13 | Henrique Casimiro | Efapel Cycling | + 00 | |
| 14 | Lukas Rüegg | Team Vorarlberg | + 00 | |
| 15 | Clément Alleno | Burgos-BH | + 00 | |
| 16 | Iñigo Elosegui | Equipo Kern Pharma | + 00 | |
| 17 | Andoni Lopez de Abetxuko | Euskaltel-Euskadi | + 00 | |
| 18 | Frederico Figueiredo | Glassdrive / Q8 / Anicolor | + 00 | |
| 19 | Luís Gomes | Kelly - Simoldes - UDO | + 00 | |
| 20 | Helder Goncalves | Kelly - Simoldes - UDO | + 00 | |
| 21 | Jon Knolle | Team Vorarlberg | + 00 | |
| 22 | Cesar Fonte | Radio Popular - Paredes - Boavista | + 00 | |
| 23 | Daniel Dias | Credibom / LA Alumínios / Marcos Car | + 00 | |
| 24 | Gorka Sorarrain | Caja Rural-Seguros RGA | + 00 | |
| 25 | Miguel Salgueiro | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 26 | Mauricio Moreira | Glassdrive / Q8 / Anicolor | + 00 | |
| 27 | Antonio Carvalho | ABTF Betão - Feirense | + 00 | |
| 28 | Angel Mate Luis | Euskaltel-Euskadi | + 00 | |
| 29 | Rodrigo Caixas | Credibom / LA Alumínios / Marcos Car | + 00 | |
| 30 | Vicente Garcia de Mateos | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 31 | Lukas Meiler | Team Vorarlberg | + 00 | |
| 32 | Jon Agirre | Equipo Kern Pharma | + 00 | |
| 33 | Calum Johnston | Caja Rural-Seguros RGA | + 00 | |
| 34 | Samuel Blanco | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 35 | Antonio Barbio | Tavfer - Ovos Matinados - Mortágua | + 00 | |
| 36 | Delio Fernandez | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 37 | Artem Nych | Glassdrive / Q8 / Anicolor | + 00 | |
| 38 | Joao Matias | Tavfer - Ovos Matinados - Mortágua | + 00 | |
| 39 | Txomin Juaristi | Euskaltel-Euskadi | + 00 | |
| 40 | Luis Fernandes | Radio Popular - Paredes - Boavista | + 00 | |
| 41 | Jesus Del Pino | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 42 | Daniel Viegas | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 43 | Antonio Soto | Euskaltel-Euskadi | + 00 | |
| 44 | Raul Rota Rus | Radio Popular - Paredes - Boavista | + 00 | |
| 45 | Afonso Silva | Kelly - Simoldes - UDO | + 00 | |
| 46 | Ibon Ruiz | Equipo Kern Pharma | + 00 | |
| 47 | João Medeiros | Credibom / LA Alumínios / Marcos Car | + 00 | |
| 48 | Ángel Sánchez | Tavfer - Ovos Matinados - Mortágua | + 00 | |
| 49 | Moran Vermeulen | Team Vorarlberg | + 00 | |
| 50 | Yesid Pira | Caja Rural-Seguros RGA | + 00 | |
| 51 | Jaume Guardeño | Caja Rural-Seguros RGA | + 00 | |
| 52 | Carlos Oyarzun | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 53 | Alvaro Trueba | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 54 | James Whelan | Glassdrive / Q8 / Anicolor | + 00 | |
| 55 | Oscar Cabedo | Team Vorarlberg | + 00 | |
| 56 | Óscar Pelegrí | Burgos-BH | + 00 | |
| 57 | Venceslau Fernandes | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 58 | Stefan Verhoeff | Universe Cycling Team | + 00 | |
| 59 | Tomas Contte | Aviludo - Louletano - Loulé Concelho | + 00 | |
| 60 | Colin Stüssi | Team Vorarlberg | + 00 | |
| 61 | Mikel Iturria | Euskaltel-Euskadi | + 00 | |
| 62 | Mikel Mujika | BAI Sicasal Petro de Luanda | + 00 | |
| 63 | Mikel Retegi | Equipo Kern Pharma | + 00 | |
| 64 | Fabio Oliveira | ABTF Betão - Feirense | + 00 | |
| 65 | Joseba Lopez | Caja Rural-Seguros RGA | + 00 | |
| 66 | Tiago Antunes | Efapel Cycling | + 00 | |
| 67 | Lars Quaedvlieg | Universe Cycling Team | + 00 | |
| 68 | Bruno Silva | Tavfer - Ovos Matinados - Mortágua | + 00 | |
| 69 | Ivan Moreno | Global 6 Cycling | + 00 | |
| 70 | Sinuhé Fernandez | Burgos-BH | + 00 | |
| 71 | Eugenio Sanchez | Equipo Kern Pharma | + 00 | |
| 72 | Diogo Barbosa | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 73 | Callum Ormiston | Global 6 Cycling | + 00 | |
| 74 | David Guavita Cesar | Kelly - Simoldes - UDO | + 00 | |
| 75 | Nicolas Sessler | Global 6 Cycling | + 00 | |
| 76 | Ivan Cobo | Equipo Kern Pharma | + 00 | |
| 77 | Afonso Eulalio | ABTF Betão - Feirense | + 00 | |
| 78 | Emanuel Duarte | Efapel Cycling | + 00 | |
| 79 | Mario Aparicio | Burgos-BH | + 00 | |
| 80 | Ivo Pinheiro | ABTF Betão - Feirense | + 00 | |
| 81 | Gonçalo Leaça | Credibom / LA Alumínios / Marcos Car | + 00 | |
| 82 | Camilo Ardila | Burgos-BH | + 00 | |
| 83 | Unai Iribar | Euskaltel-Euskadi | + 00 | |
| 84 | Pirmin Benz | Team Vorarlberg | + 00 | |
| 85 | Rafael Lourenço | AP Hotels & Resorts / Tavira / SC Farense | + 00 | |
| 86 | Tiago Leal | Radio Popular - Paredes - Boavista | + 00 | |
| 87 | Luuk Schuurmans | Universe Cycling Team | + 00 | |
| 88 | Pablo Garcia | BAI Sicasal Petro de Luanda | + 00 | |
| 89 | Francis Juneau | BIKE AID | + 00 | |
| 90 | Pedro Andrade | ABTF Betão - Feirense | + 33 | + 33 |
| 91 | Joaquim Silva | Efapel Cycling | + 33 | + 33 |
| 92 | Nuno Meireles | Aviludo - Louletano - Loulé Concelho | + 33 | + 33 |
| 93 | Pedro Pinto | Efapel Cycling | + 33 | + 33 |
| 94 | Aleksandr Grigorev | Efapel Cycling | + 44 | + 44 |
| 95 | Manuel Gutiérrez José | BAI Sicasal Petro de Luanda | + 50 | + 50 |
| 96 | Andre Ramalho | Credibom / LA Alumínios / Marcos Car | + 50 | + 50 |
| 97 | Anton Schiffer | BIKE AID | + 56 | + 56 |
| 98 | Unai Esparza | BAI Sicasal Petro de Luanda | + 01:08 | + 01:08 |
| 99 | David Delgado | Burgos-BH | + 01:41 | + 01:41 |
| 100 | Unai Cuadrado | Euskaltel-Euskadi | + 01:45 | + 01:45 |
| 101 | Kenny Nijssen | Universe Cycling Team | + 02:33 | + 02:33 |
| 102 | Miguel Lopes Pedro | Radio Popular - Paredes - Boavista | + 05:01 | + 05:01 |
| 103 | Yanne Dorenbos | Equipo Kern Pharma | + 05:59 | + 05:59 |
| 104 | Mehmet Sampiyonbisiklet | Global 6 Cycling | + 05:59 | + 05:59 |
| 105 | Evan Russell | Global 6 Cycling | + 05:59 | + 05:59 |
| 106 | Santiago Mesa | ABTF Betão - Feirense | + 06:15 | + 06:15 |
| 107 | Léo Bouvier | BIKE AID | + 08:24 | + 08:24 |
| 108 | Francisco Morais | Tavfer - Ovos Matinados - Mortágua | + 08:34 | + 08:34 |
| 109 | Goncalo Carvalho | Tavfer - Ovos Matinados - Mortágua | + 08:34 | + 08:34 |
| 110 | Antonio Ferreira | Kelly - Simoldes - UDO | + 08:46 | + 08:46 |
| 111 | Guillermo Garcia Janeiro | Radio Popular - Paredes - Boavista | + 09:42 | + 09:42 |
| 112 | Bart Buijk | Universe Cycling Team | + 09:42 | + 09:42 |
| 113 | Francisco Pereira | ABTF Betão - Feirense | + 11:05 | + 11:05 |
| 114 | Fabio Costa | Glassdrive / Q8 / Anicolor | + 11:05 | + 11:05 |
| 115 | João Macedo | Credibom / LA Alumínios / Marcos Car | + 12:50 | + 12:50 |
| 116 | Diogo Narciso | Credibom / LA Alumínios / Marcos Car | + 12:50 | + 12:50 |
| 117 | Adrian Zuger | BIKE AID | + 12:50 | + 12:50 |
| 118 | Wesley Mol | BIKE AID | + 12:50 | + 12:50 |
| 119 | Jip Steman | Universe Cycling Team | + 12:50 | + 12:50 |
| 120 | Jarri Stravers | Universe Cycling Team | + 12:50 | + 12:50 |
| 121 | Jonas Hjorth | Global 6 Cycling | + 20:33 | + 20:33 |
| 122 | Jonas Beck | BIKE AID | + 20:33 | + 20:33 |
| 123 | Hosana Goncalves | BAI Sicasal Petro de Luanda | + 20:33 | + 20:33 |