| 23-09 | DNF | | UCI World Championship Wollongong U23 (CM) | 169.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 55 | | Klassement |
| 35 | | Punten |
| 38 | | Berg |
| 28-08 | 60 | 55 | Stage 9Bessans - Villaroger (134.0km) | 134.0km |
| 27-08 | 78 | 63 | Stage 8Ugine - La Toussuire (99.0km) | 99.0km |
| 26-08 | 58 | 65 | Stage 7Thonon-les-Bains - Saint-François-Longchamp (175.0km) | 175.0km |
| 24-08 | 99 | 77 | Stage 6Saint-Amour - Oyonnax (124.0km) | 124.0km |
| 23-08 | | 62 | Stage 5Gueugnon - Saint-Vallier (27.0km) | 27.0km |
| 22-08 | 98 | 79 | Stage 4Sainte-Sévère-sur-Indre - Chaillac (142.0km) | 142.0km |
| 21-08 | 101 | 90 | Stage 3Civray - La Trimouille (153.0km) | 153.0km |
| 20-08 | 139 | 98 | Stage 2Benet - Civray (142.0km) | 142.0km |
| 19-08 | 59 | 59 | Stage 1La Roche-sur-Yon - La Roche-sur-Yon (121.0km) | 121.0km |
| | | Tour de l'Ain (2.1) |
| 82 | | Klassement |
| 11-08 | 86 | 82 | Stage 3Plateau d'Hauteville - Lélex (131.0km) | 131.0km |
| 10-08 | 72 | 87 | Stage 2Saint-Vulbas - Lagnieu (144.0km) | 144.0km |
| 09-08 | 105 | 105 | Stage 1Chatillon-sur-Chalaronne - Val-Revermont (152.0km) | 152.0km |
| | | Vuelta a Castilla y Leon (2.1) |
| 100 | | Klassement |
| 28-07 | 95 | 100 | Stage 2Guijuelo - Guijuelo (189.0km) | 189.0km |
| 27-07 | 111 | 111 | Stage 1Benavente - Morales del Vino (171.0km) | 171.0km |
| 25-07 | 111 | | Prueba Villafranca - Ordiziako Klasika (1.1) | 165.0km |
| | | Sibiu Cycling Tour (2.1) |
| 05-07 | 115 | 60 | Stage 3aCurmatura Stezii - Arena Platos Paltinis (12.0km) | 12.0km |
| 05-07 | 88 | 57 | Stage 3bSibiu - Sibiu (99.0km) | 99.0km |
| 04-07 | 58 | 56 | Stage 2Sibiu - Balea Lac (182.0km) | 182.0km |
| 03-07 | 98 | 97 | Stage 1Brezoi - Sibiu (206.0km) | 206.0km |
| 02-07 | 123 | 123 | PrologueSibiu - Sibiu (2.0km) | 2.0km |
| 25-06 | 4 | | National Road Championships - Kazakhstan (CN) | |
| | | La Route d'Occitanie - La Dépêche du Midi (2.1) |
| 44 | | Klassement |
| 19 | | Punten |
| 18 | | Berg |
| 19-06 | 19 | 44 | Stage 4Les Angles - Auterive (188.0km) | 188.0km |
| 18-06 | 61 | 65 | Stage 3Sigean - Les Angles (188.0km) | 188.0km |
| 17-06 | 114 | 109 | Stage 2Belmont-sur-Rance - Roquefort-sur-Soulzon (35.0km) | 35.0km |
| 16-06 | 114 | 115 | Stage 1Séméac - L'Isle Jourdain (174.0km) | 174.0km |
| 14-06 | 77 | | Mont Ventoux Dénivelé Challenge (1.1) | 154.0km |
| | | Presidential Cycling Tour of Türkiye (2.Pro) |
| 29 | | Klassement |
| 17-04 | | 29 | Stage 8Istanbul - Istanbul (136.0km) | 136.0km |
| 16-04 | 46 | 29 | Stage 7Gallipoli - Tekirdag (135.0km) | 135.0km |
| 15-04 | 55 | 32 | Stage 6Edremit - Eceabat (205.0km) | 205.0km |
| 14-04 | 86 | | Stage 5Manisa - Ayvalik (192.0km) | 192.0km |
| 13-04 | 43 | 37 | Stage 4İzmir - Manisa (147.0km) | 147.0km |
| 12-04 | 96 | 73 | Stage 3Çeşme - İzmir (123.0km) | 123.0km |
| 11-04 | 94 | 74 | Stage 2Selçuk - Alacati (158.0km) | 158.0km |
| 10-04 | 80 | 80 | Stage 1Bodrum - Kusadasi (207.0km) | 207.0km |
| 27-03 | 44 | | GP Industria & Artigianato (1.Pro) | 192.0km |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 80 | | Klassement |
| 26-03 | 59 | 80 | Stage 5Casalguidi - Cantagrillo di Serravalle (160.0km) | 160.0km |
| 25-03 | 106 | 98 | Stage 4Montecatini - Montecatini (158.0km) | 158.0km |
| 24-03 | 78 | 90 | Stage 3San Marino - San Marino (147.0km) | 147.0km |
| 23-03 | 95 | 100 | Stage 2Riccione - Longiano (165.0km) | 165.0km |
| 22-03 | 100 | 100 | Stage 1Riccione - Riccione (164.0km) | 164.0km |
| 20-03 | DNF | | Per Sempre Alfredo (1.1) | 172.0km |
| 27-02 | 105 | | Drome Classic (1.Pro) | 191.0km |
| 26-02 | DNF | | Faun-Ardèche Classic
(1.Pro) | 168.0km |
| | | Vuelta a Andalucia Ruta Ciclista Del Sol (2.Pro) |
| 19-02 | DNF | | Stage 4Cúllar Vega - Baza (165.0km) | 165.0km |
| 18-02 | 115 | 120 | Stage 3Lucena - Otura Santa Clara Golf (152.0km) | 152.0km |
| 17-02 | 133 | 131 | Stage 2Archidona - Alcalá la Real (150.0km) | 150.0km |
| 16-02 | 127 | 127 | Stage 1Ubrique - Iznájar (200.0km) | 200.0km |
| 14-02 | 46 | | Jaén Paraiso Interior
(1.1) | |
| 13-02 | 36 | | Clasica de Almeria (1.Pro) | |