| 04-10 | 30 | | Il Lombardia Under 23 (1.2U) | 170.0km |
| 24-09 | 40 | | Omloop van het Houtland (1.1) | 195.0km |
| 21-09 | 134 | | Grand Prix d'Isbergues - Pas de Calais (1.1) | 201.0km |
| 19-09 | 41 | | Kampioenschap van Vlaanderen (1.1) | 181.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 29-08 | 65 | 72 | Stage 6aLa Rosière Espace San Bernardo - La Rosière Espace San Bernardo (41.0km) | 41.0km |
| 29-08 | 75 | 71 | Stage 6bLa Rosière-Montvalezan - La Rosière-Montvalezan (10.0km) | 10.0km |
| 28-08 | 77 | 82 | Stage 5Saint-Gervais Mont-Blanc - Tignes (121.0km) | 121.0km |
| 27-08 | 101 | 96 | Stage 4Montagnat - Val Suran (110.0km) | 110.0km |
| 26-08 | 60 | 97 | Stage 3Étang-sur-Arroux - Châtillon-sur-Chalaronne (158.0km) | 158.0km |
| 25-08 | 39 | 101 | Stage 2Saint-Symphorien-sur-Coise - Vitry-en-Charollais (136.0km) | 136.0km |
| 24-08 | 108 | 102 | Stage 1Aoste - Saint-Galmier (188.0km) | 188.0km |
| 23-08 | 62 | 62 | PrologueTignes - Tignes (3.0km) | 3.0km |
| 17-08 | 22 | | Road Continental Pan-Am Championships U23 (JR) | |
| | | Giro d'Italia Next Gen (2.2U) |
| 22-06 | DNF | | Stage 8Pinerolo - Pinerolo (127.0km) | 127.0km |
| 21-06 | 95 | 72 | Stage 7Bra - Prato Nevoso (163.0km) | 163.0km |
| 20-06 | 63 | 63 | Stage 6Ovada - Acqui Terme (154.0km) | 154.0km |
| 19-06 | 88 | 65 | Stage 5Fiorenzuola d'Arda - Gavi (153.0km) | 153.0km |
| 18-06 | 41 | 52 | Stage 4Manerbio - Salsomaggiore Terme (134.0km) | 134.0km |
| 17-06 | 55 | 54 | Stage 3Albese con Cassano - Passo del Maniva (144.0km) | 144.0km |
| 16-06 | 57 | 63 | Stage 2Rho - Cantù (146.0km) | 146.0km |
| 15-06 | 76 | 76 | Stage 1Rho - Rho (8.0km) | 8.0km |
| | | Alpes Isère Tour (2.2) |
| 39 | | Standings |
| 31 | | Youth |
| 01-06 | 47 | 39 | Stage 5Saint-Joseph-de-Rivière - La Mure (181.0km) | 181.0km |
| 31-05 | 46 | 41 | Stage 4Primarette - Saint-Maurice-l'Exil (176.0km) | 176.0km |
| 30-05 | 16 | 25 | Stage 3Colombier-Saugnieu - Jons (159.0km) | 159.0km |
| 29-05 | 39 | 33 | Stage 2Dolomieu - Satolas-et-Bonce (153.0km) | 153.0km |
| 28-05 | 37 | 38 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (135.0km) | 135.0km |
| 11-05 | 59 | | Gent-Wevelgem / Kattekoers-Ieper (1.2U) | 189.0km |
| 26-04 | 41 | | Road Continental Pan-Am Championships U23 (CC) | |
| | | Circuit des Ardennes (2.2) |
| 23 | | Standings |
| 8 | | Youth |
| 13-04 | 32 | 23 | Stage 5Chooz - Charleville-Mézières (160.0km) | 160.0km |
| 12-04 | 23 | 24 | Stage 4Lac de Bairon - Lac des Vieilles Forges (178.0km) | 178.0km |
| 11-04 | 39 | 33 | Stage 3Boulzicourt - Saint-Marceau (172.0km) | 172.0km |
| 10-04 | 59 | 51 | Stage 2Rethel - Rethel (172.0km) | 172.0km |
| 09-04 | 52 | 56 | Stage 1Sedan - Nouvion-sur-Meuse (133.0km) | 133.0km |
| | | Volta ao Alentejo (2.2) |
| 36 | | Standings |
| 11 | | Youth |
| 30-03 | 43 | 36 | Stage 5Estremoz - Évora (151.0km) | 151.0km |
| 29-03 | 43 | 41 | Stage 4Monforte - Castelo de Vide (147.0km) | 147.0km |
| 28-03 | 34 | 29 | Stage 3Carvalhal - Arraiolos (151.0km) | 151.0km |
| 27-03 | 37 | 30 | Stage 2Castro Verde - Grandola (171.0km) | 171.0km |
| 26-03 | 29 | 32 | Stage 1Beja - Moura (166.0km) | 166.0km |
| 08-03 | DNF | | Rhodes GP (1.2) | 179.0km |
| | | Visit South Aegean Islands (2.2) |
| 33 | | Standings |
| 21 | | Youth |
| 02-03 | 42 | 33 | Stage 2Rhodes - Salakos (160.0km) | 160.0km |
| 01-03 | 33 | 33 | Stage 1Rhodes - Koskinou (180.0km) | 180.0km |
| 08-02 | 11 | | National Road Championships - Colombia U23 (CN) | 165.0km |