| 12-10 | 45 | | Paris - Tours Elite (1.Pro) | 211.0km |
| 04-10 | DNF | | UEC Road European Championships U23 (CC) | 121.0km |
| 26-09 | 31 | | UCI World Championship Kigali U23 (CM) | 164.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 28-08 | DNS | | Etappe 5Saint-Gervais Mont-Blanc - Tignes | 121.0km |
| 27-08 | 125 | 107 | Etappe 4Montagnat - Val Suran | 110.0km |
| 26-08 | 87 | 51 | Etappe 3Étang-sur-Arroux - Châtillon-sur-Chalaronne | 158.0km |
| 25-08 | 100 | 52 | Etappe 2Saint-Symphorien-sur-Coise - Vitry-en-Charollais | 136.0km |
| 24-08 | 75 | 44 | Etappe 1Aoste - Saint-Galmier | 188.0km |
| 23-08 | 44 | 44 | ProloogTignes - Tignes | 3.0km |
| | | Volta a Portugal em Bicicleta (2.1) |
| 42 | | Klassement |
| 10 | | Berg |
| 6 | | Jongeren |
| 17-08 | 31 | 42 | Etappe 10Lisboa - Lisboa | 16.0km |
| 16-08 | 56 | 43 | Etappe 9Alcobaça - Alto de Montejunto | 174.0km |
| 15-08 | 50 | 41 | Etappe 8Ferreira do Zêzere - Santarém | 178.0km |
| 14-08 | 72 | 42 | Etappe 7Sabugal - Torre | 179.0km |
| 13-08 | 51 | 37 | Etappe 6Águeda - Guarda | 175.0km |
| 11-08 | 53 | 37 | Etappe 5Lamego - Viseu | 155.0km |
| 10-08 | 51 | 38 | Etappe 4Bragança - Mondim de Basto | 182.0km |
| 09-08 | 50 | 28 | Etappe 3Boticas - Bragança | 185.0km |
| 08-08 | 11 | 32 | Etappe 2Felgueiras - Fafe | 167.0km |
| 07-08 | 41 | 39 | Etappe 1Viana do Castelo - Braga | 162.0km |
| 06-08 | 31 | 31 | ProloogMaia - Maia | 3.0km |
| 28-06 | 6 | | National Road Championships - Portugal U23 (CN) | 145.0km |
| 27-06 | 2 | | National Road Championships - Portugal TT U23 (CN) | 22.0km |
| | | Giro d'Italia Next Gen (2.2U) |
| 34 | | Klassement |
| 39 | | Punten |
| 22-06 | 88 | 34 | Etappe 8Pinerolo - Pinerolo | 127.0km |
| 21-06 | 51 | 32 | Etappe 7Bra - Prato Nevoso | 163.0km |
| 20-06 | 20 | 34 | Etappe 6Ovada - Acqui Terme | 154.0km |
| 19-06 | 6 | 35 | Etappe 5Fiorenzuola d'Arda - Gavi | 153.0km |
| 18-06 | 78 | 54 | Etappe 4Manerbio - Salsomaggiore Terme | 134.0km |
| 17-06 | 57 | 56 | Etappe 3Albese con Cassano - Passo del Maniva | 144.0km |
| 16-06 | 28 | 72 | Etappe 2Rho - Cantù | 146.0km |
| 15-06 | 85 | 85 | Etappe 1Rho - Rho | 8.0km |
| | | Course de la Paix Grand Prix Jeseníky (2.NCUP) |
| 7 | | Klassement |
| 13 | | Punten |
| 01-06 | 25 | 7 | Etappe 4Jeseník - Šumperk | 118.0km |
| 31-05 | 6 | 7 | Etappe 3Zábřeh - Dlouhé | 131.0km |
| 30-05 | 34 | 10 | Etappe 2Uničov - Rýmařov | 149.0km |
| 29-05 | 8 | 8 | Etappe 1Krnov - Šternberk | 168.0km |
| 03-05 | 54 | | Flèche Ardennaise (1.2) | 174.0km |
| 19-04 | 19 | | Liège-Bastogne-Liège U23 (1.2U) | 175.0km |
| | | Circuit des Ardennes (2.2) |
| 16 | | Klassement |
| 33 | | Berg |
| 13-04 | 43 | 16 | Etappe 5Chooz - Charleville-Mézières | 160.0km |
| 12-04 | 28 | 15 | Etappe 4Lac de Bairon - Lac des Vieilles Forges | 178.0km |
| 11-04 | 19 | 20 | Etappe 3Boulzicourt - Saint-Marceau | 172.0km |
| 10-04 | 66 | 54 | Etappe 2Rethel - Rethel | 172.0km |
| 09-04 | 48 | 52 | Etappe 1Sedan - Nouvion-sur-Meuse | 133.0km |
| | | Volta ao Alentejo (2.2) |
| 16 | | Klassement |
| 29 | | Punten |
| 4 | | Berg |
| 5 | | Jongeren |
| 30-03 | 18 | 16 | Etappe 5Estremoz - Évora | 151.0km |
| 29-03 | 9 | 18 | Etappe 4Monforte - Castelo de Vide | 147.0km |
| 28-03 | 24 | 46 | Etappe 3Carvalhal - Arraiolos | 151.0km |
| 27-03 | 103 | 63 | Etappe 2Castro Verde - Grandola | 171.0km |
| 26-03 | 28 | 31 | Etappe 1Beja - Moura | 166.0km |
| | | O Gran Camiño - The Historical Route (2.1) |
| 104 | | Klassement |
| 23 | | Jongeren |
| 02-03 | 107 | 104 | Etappe 5Betanzos - Santiago de Compostela | 165.0km |
| 01-03 | 111 | 105 | Etappe 4A Pobra do Brollón - O Cebreiro | 142.0km |
| 28-02 | 49 | 103 | Etappe 3Ourense - Pereiro de Aguiar | 15.0km |
| 27-02 | 113 | 108 | Etappe 2Marín - Lalín/a Estrada | 144.0km |
| 26-02 | 17 | 19 | Etappe 1Maia - Matosinhos | 190.0km |