| 08-10 | DNF | | Il Lombardia (1.UWT) | 253.0km |
| 06-10 | 102 | | Gran Piemonte (1.Pro) | 198.0km |
| 04-10 | DNF | | Tre Valli Varesine (1.Pro) | 196.0km |
| 03-10 | 79 | | Coppa Bernocchi (1.Pro) | 190.0km |
| 01-10 | 127 | | Giro dell'Emilia (1.Pro) | 198.0km |
| 14-09 | 99 | | Grand Prix de Wallonie (1.Pro) | 199.0km |
| 11-09 | 58 | | Grand Prix Cycliste de Montréal (1.UWT) | 221.0km |
| 09-09 | 43 | | Grand Prix Cycliste de Québec (1.UWT) | 201.0km |
| | | Deutschland Tour (2.Pro) |
| 28-08 | DNF | | Stage 4Schiltach - Stuttgart (188.0km) | 188.0km |
| 27-08 | 55 | 77 | Stage 3Freiburg - Schauinsland (150.0km) | 150.0km |
| 26-08 | 110 | 92 | Stage 2Meiningen - Marburg (199.0km) | 199.0km |
| 25-08 | 84 | 49 | Stage 1Weimar - Meiningen (171.0km) | 171.0km |
| 24-08 | 57 | 57 | PrologueWeimar - Weimar (2.0km) | 2.0km |
| | | Tour de l'Ain (2.1) |
| 57 | | Klassement |
| 19 | | Berg |
| 11-08 | 65 | 57 | Stage 3Plateau d'Hauteville - Lélex (131.0km) | 131.0km |
| 10-08 | 59 | 55 | Stage 2Saint-Vulbas - Lagnieu (144.0km) | 144.0km |
| 09-08 | 37 | 37 | Stage 1Chatillon-sur-Chalaronne - Val-Revermont (152.0km) | 152.0km |
| | | Ethias Tour de Wallonie (2.Pro) |
| 12 | | Klassement |
| 27-07 | 30 | 12 | Stage 5Le Roeulx - Chapelle-lez-Herlaimont (200.0km) | 200.0km |
| 26-07 | 36 | 14 | Stage 4Durbuy - Couvin (200.0km) | 200.0km |
| 25-07 | 67 | 14 | Stage 3Visé - Rochefort (194.0km) | 194.0km |
| 24-07 | 14 | 14 | Stage 2Verviers - Herve (176.0km) | 176.0km |
| 23-07 | 29 | 29 | Stage 1Temploux - Huy (173.0km) | 173.0km |
| | | Sibiu Cycling Tour (2.1) |
| 2 | | Klassement |
| 3 | | Punten |
| 3 | | Berg |
| 05-07 | 44 | 2 | Stage 3bSibiu - Sibiu (99.0km) | 99.0km |
| 05-07 | 3 | 2 | Stage 3aCurmatura Stezii - Arena Platos Paltinis (12.0km) | 12.0km |
| 04-07 | 2 | 2 | Stage 2Sibiu - Balea Lac (182.0km) | 182.0km |
| 03-07 | 63 | 41 | Stage 1Brezoi - Sibiu (206.0km) | 206.0km |
| 02-07 | 78 | 78 | PrologueSibiu - Sibiu (2.0km) | 2.0km |
| 26-06 | 86 | | National Road Championships - Belgium (CN) | 215.0km |
| | | Giro d'Italia (2.UWT) |
| 25-05 | DNF | | Stage 17Ponte di Legno Tonale - Lavarone (168.0km) | 168.0km |
| 24-05 | 143 | 139 | Stage 16Salo - Aprica (202.0km) | 202.0km |
| 22-05 | 157 | 142 | Stage 15Rivarolo Canavese - Cogne (177.0km) | 177.0km |
| 21-05 | 154 | 142 | Stage 14Santenay - Torino (147.0km) | 147.0km |
| 20-05 | 148 | 144 | Stage 13Sanremo - Cuneo (150.0km) | 150.0km |
| 19-05 | 121 | 145 | Stage 12Parma - Genova (204.0km) | 204.0km |
| 18-05 | 120 | 149 | Stage 11Santarcangelo di Romagna - Reggio Emilia (203.0km) | 203.0km |
| 17-05 | 149 | 150 | Stage 10Pescara - Jesi (196.0km) | 196.0km |
| 15-05 | 144 | 139 | Stage 9Isernia - Blockhaus (191.0km) | 191.0km |
| 14-05 | 4 | 139 | Stage 8Napoli - Napoli (153.0km) | 153.0km |
| 13-05 | 153 | 157 | Stage 7Diamante - Potenza (196.0km) | 196.0km |
| 12-05 | 157 | 160 | Stage 6Palmi - Scalea (192.0km) | 192.0km |
| 11-05 | 159 | 160 | Stage 5Catania - Messina (174.0km) | 174.0km |
| 10-05 | 119 | 145 | Stage 4Avola - Etna (172.0km) | 172.0km |
| 08-05 | 149 | 174 | Stage 3Kaposvár - Balatonfüred (201.0km) | 201.0km |
| 07-05 | 102 | 175 | Stage 2Budapest - Budapest (9.0km) | 9.0km |
| 06-05 | 176 | 176 | Stage 1Budapest - Visegrád (195.0km) | 195.0km |
| | | Tour de Romandie (2.UWT) |
| 93 | | Klassement |
| 45 | | Punten |
| 14 | | Berg |
| 01-05 | 104 | 93 | Stage 5Aigle - Villars (15.0km) | 15.0km |
| 30-04 | 82 | 93 | Stage 4Aigle - Zinal (180.0km) | 180.0km |
| 29-04 | 82 | 103 | Stage 3Valbroye - Valbroye (165.0km) | 165.0km |
| 28-04 | 106 | 105 | Stage 2Echallens - Echallens (168.0km) | 168.0km |
| 27-04 | 102 | 101 | Stage 1La Grande Béroche - Romont (178.0km) | 178.0km |
| 26-04 | 107 | 107 | PrologueLausanne - Lausanne (5.0km) | 5.0km |
| 24-04 | 75 | | Liège-Bastogne-Liège (1.UWT) | 254.0km |
| | | Presidential Cycling Tour of Türkiye (2.Pro) |
| 5 | | Klassement |
| 22 | | Punten |
| 5 | | Berg |
| 17-04 | | 5 | Stage 8Istanbul - Istanbul (136.0km) | 136.0km |
| 16-04 | 17 | 5 | Stage 7Gallipoli - Tekirdag (135.0km) | 135.0km |
| 15-04 | 23 | 4 | Stage 6Edremit - Eceabat (205.0km) | 205.0km |
| 14-04 | 72 | 4 | Stage 5Manisa - Ayvalik (192.0km) | 192.0km |
| 13-04 | 3 | 4 | Stage 4İzmir - Manisa (147.0km) | 147.0km |
| 12-04 | 57 | 46 | Stage 3Çeşme - İzmir (123.0km) | 123.0km |
| 11-04 | 68 | 48 | Stage 2Selçuk - Alacati (158.0km) | 158.0km |
| 10-04 | 36 | 36 | Stage 1Bodrum - Kusadasi (207.0km) | 207.0km |
| | | Volta Ciclista a Catalunya (2.UWT) |
| 26-03 | DNF | | Stage 6Costa Daurada - Costa Daurada (167.0km) | 167.0km |
| 25-03 | 74 | 28 | Stage 5La Pobla de Segur - Vilanova i la Geltrú (206.0km) | 206.0km |
| 24-03 | 32 | 28 | Stage 4La Seu d'Urgell - Boí Taüll (166.0km) | 166.0km |
| 23-03 | 25 | 26 | Stage 3Perpignan - La Molina (161.0km) | 161.0km |
| 22-03 | 65 | 54 | Stage 2L'Escala - Perpignan (202.0km) | 202.0km |
| 21-03 | 59 | 60 | Stage 1San Felíu de Guixols - San Felíu de Guixols (171.0km) | 171.0km |
| | | Paris-Nice (2.UWT) |
| 13-03 | DNF | | Stage 8Nice - Nice (115.0km) | 115.0km |
| 12-03 | 34 | 44 | Stage 7Nice - Col de Turini (155.0km) | 155.0km |
| 11-03 | 106 | 64 | Stage 6Courthézon - Aubagne (213.0km) | 213.0km |
| 10-03 | 4 | 32 | Stage 5Saint-Just-Saint-Rambert - Saint-Sauveur-de-Montagut (188.0km) | 188.0km |
| 09-03 | 62 | 88 | Stage 4Domérat - Montluçon (13.0km) | 13.0km |
| 08-03 | 65 | 91 | Stage 3Vierzon - Dun-le-Palestel (190.0km) | 190.0km |
| 07-03 | 137 | 121 | Stage 2Auffargis - Orléans (159.0km) | 159.0km |
| 06-03 | 107 | 107 | Stage 1Mantes-la-Ville - Mantes-la-Ville (159.0km) | 159.0km |
| 27-02 | 112 | | Drome Classic (1.Pro) | 191.0km |
| 26-02 | 30 | | Faun-Ardèche Classic
(1.Pro) | 168.0km |
| 30-01 | 114 | | Trofeo Playa de Palma - Palma (1.1) | |
| 29-01 | 38 | | Trofeo Pollença - Port d' Andratx (1.1) | |
| 28-01 | 38 | | Trofeo Serra de Tramuntana (Lloseta - Deia) (1.1) | |
| 26-01 | 19 | | Trofeo Calvia (1.1) | |