| | | Presidential Cycling Tour of Türkiye (2.Pro) |
| 25 | | Klassement |
| 15-10 | 17 | 25 | Stage 8Istanbul - Istanbul (145.0km) | 145.0km |
| 14-10 | 17 | 25 | Stage 7Selçuk - İzmir (170.0km) | 170.0km |
| 13-10 | 33 | 25 | Stage 6Bodrum - Kusadasi (198.0km) | 198.0km |
| 12-10 | 24 | 28 | Stage 5Marmaris - Bodrum (212.0km) | 212.0km |
| 11-10 | 18 | 29 | Stage 4Fethiye - Marmaris (184.0km) | 184.0km |
| 10-10 | 30 | 30 | Stage 3Kas - Fethiye (164.0km) | 164.0km |
| 09-10 | 35 | | Stage 2Antalya - Demre (147.0km) | 147.0km |
| 08-10 | 21 | | Stage 1Antalya - Antalya (175.0km) | 175.0km |
| 02-10 | DNF | | Coppa Bernocchi (1.Pro) | 187.0km |
| 30-09 | DNF | | Giro dell'Emilia (1.Pro) | 204.0km |
| 28-09 | 110 | | Coppa Agostoni - Giro delle Brianze (1.1) | 195.0km |
| 17-09 | 41 | | Grand Prix d'Isbergues (1.1) | |
| 13-09 | 48 | | Grand Prix de Wallonie (1.Pro) | 201.0km |
| 10-09 | 84 | | GP de Fourmies (1.Pro) | 197.0km |
| 07-09 | 5 | | Izegem Koers (National) | 167.0km |
| 03-09 | DNF | | Bretagne Classic - Ouest-France (1.UWT) | 179.0km |
| 31-08 | 15 | | Kortemark Koerse (National) | |
| 27-08 | 14 | | Schaal Sels Merksem (National) | 109.0km |
| 15-08 | DNF | | Tour of Leuven - Memorial Jef Scherens (1.1) | 193.0km |
| | | Czech Tour (2.1) |
| 51 | | Klassement |
| 30-07 | 57 | 51 | Stage 4Šumperk - Šumperk (178.0km) | 178.0km |
| 29-07 | 60 | 59 | Stage 3Moravská Třebová - Cervenohorské sedlo (161.0km) | 161.0km |
| 28-07 | 52 | 51 | Stage 2Olomouc - Pustevny (166.0km) | 166.0km |
| 27-07 | 20 | 20 | Stage 1Prostejov - Uničov (167.0km) | 167.0km |
| | | Tour of Austria (2.1) |
| 40 | | Klassement |
| 12 | | Jongeren |
| 06-07 | 45 | 40 | Stage 5Ybbs - Sonntagberg (155.0km) | 155.0km |
| 05-07 | 50 | 41 | Stage 4St. Johann/Alpendorf - Steyr (197.0km) | 197.0km |
| 04-07 | 43 | 52 | Stage 3Sillian - St. Johann/Alpendorf (148.0km) | 148.0km |
| 03-07 | 62 | 58 | Stage 2Sankt Anton - Innsbruck (158.0km) | 158.0km |
| 02-07 | 43 | 43 | Stage 1Dornbirn - Dornbirn (149.0km) | 149.0km |
| 25-06 | DNF | | National Road Championships - Belgium (CN) | 226.0km |
| | | Tour of Slovenia (2.Pro) |
| 73 | | Klassement |
| 18-06 | 65 | 73 | Stage 5Vrhnika - Novo Mesto (142.0km) | 142.0km |
| 17-06 | 87 | 83 | Stage 4 Ljubljana - Kobarid (165.0km) | 165.0km |
| 16-06 | 77 | 73 | Stage 3Grosuplje - Postojna (173.0km) | 173.0km |
| 15-06 | 93 | 79 | Stage 2Zalec - Ormoz (163.0km) | 163.0km |
| 14-06 | 26 | 28 | Stage 1Celje - Rogaška Slatina (188.0km) | 188.0km |
| 30-05 | 13 | | Gullegem Koerse (National) | |
| | | Boucles de la Mayenne (2.Pro) |
| 23 | | Klassement |
| 28-05 | 36 | 23 | Stage 4Montsûrs - Laval (167.0km) | 167.0km |
| 27-05 | 44 | 23 | Stage 3Saint-Berthevin - Meslay-du-Maine (181.0km) | 181.0km |
| 26-05 | 30 | 23 | Stage 2Saint-Mars-sur-Colmont - Lassay-les-Châteaux (185.0km) | 185.0km |
| 25-05 | 29 | 29 | Stage 1Laval - Laval (4.0km) | 4.0km |
| 20-05 | 53 | | Veenendaal-Veenendaal Classic (1.1) | 175.0km |
| 18-05 | 17 | | Circuit de Wallonie (1.1) | |
| 14-05 | 49 | | Boucles de l'Aulne - Châteaulin (1.1) | 181.0km |
| 13-05 | 48 | | Tour du Finistère (1.1) | 193.0km |
| 16-04 | 63 | | Tour du Doubs (1.1) | 200.0km |
| 15-04 | 29 | | Tour du Jura Cycliste (1.1) | 168.0km |
| 12-04 | DNF | | De Brabantse Pijl (1.Pro) | 205.0km |
| | | Circuit des Ardennes (2.2) |
| 74 | | Klassement |
| 33 | | Punten |
| 09-04 | 115 | 74 | Stage 4Bazeilles - Charleville-Mézières (180.0km) | 180.0km |
| 08-04 | 85 | 68 | Stage 3Chooz - Haybes (166.0km) | 166.0km |
| 07-04 | 11 | 11 | Stage 2Renneville - Gruyères (187.0km) | 187.0km |
| 06-04 | 20 | 20 | Stage 1Nouvion-sur-Meuse - Sedan (90.0km) | 90.0km |
| 01-04 | 28 | | Volta Limburg Classic (1.1) | 196.0km |
| 26-03 | DNF | | GP Industria & Artigianato (1.Pro) | 199.0km |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 73 | | Klassement |
| 25-03 | 105 | 73 | Stage 5Carpi - Carpi (18.0km) | 18.0km |
| 24-03 | 49 | 70 | Stage 4Fiorano Modenese - Fiorano Modenese (168.0km) | 168.0km |
| 23-03 | 71 | 83 | Stage 3Forlì - Forlì (139.0km) | 139.0km |
| 22-03 | 57 | 82 | Stage 2Riccione - Longiano (172.0km) | 172.0km |
| 21-03 | 80 | 80 | Stage 1Riccione - Riccione (161.0km) | 161.0km |
| 19-03 | 63 | | Per Sempre Alfredo (1.1) | 190.0km |
| 15-03 | 36 | | Milano - Torino (1.Pro) | 192.0km |
| 01-03 | 80 | | Trofeo Laigueglia (1.Pro) | 201.0km |
| 26-02 | DNF | | Faun Drome Classic (1.Pro) | |
| 25-02 | 69 | | Faun-Ardèche Classic
(1.Pro) | |
| | | Tour des Alpes Maritimes et du Var (2.1) |
| 62 | | Klassement |
| 19-02 | 70 | 62 | Stage 3Villefranche-sur-Mer - Vence (139.0km) | 139.0km |
| 18-02 | 66 | 61 | Stage 2Mandelieu-la-Napoule - Antibes (179.0km) | 179.0km |
| 17-02 | 75 | 75 | Stage 1Saint-Raphaël - Ramatuelle (197.0km) | 197.0km |
| | | Saudi Tour (2.1) |
| 63 | | Klassement |
| 03-02 | 42 | 63 | Stage 5Alula - Maraya (142.0km) | 142.0km |
| 02-02 | 29 | 64 | Stage 4Maraya - Skyviews of Harrat Uwayrid (163.0km) | 163.0km |
| 01-02 | 79 | 73 | Stage 3Al Manshiyah - Abu Rakah (159.0km) | 159.0km |
| 31-01 | 38 | 74 | Stage 2Alula - Shalal Sijlyat (184.0km) | 184.0km |
| 30-01 | 81 | 75 | Stage 1Alula - Khaybar (180.0km) | 180.0km |