| 17-10 | 67 | | Veneto Classic (1.1) | 206.0km |
| 13-10 | 74 | | Giro del Veneto (1.1) | 168.0km |
| 10-10 | 97 | | Paris - Tours Elite (1.Pro) | 212.0km |
| 07-10 | 79 | | Paris - Bourges (1.1) | 193.0km |
| 05-10 | 12 | | Binche - Chimay - Binche / Mémorial Frank Vandenbroucke (1.1) | 198.0km |
| 03-10 | 20 | | Paris-Roubaix (1.UWT) | 257.0km |
| 29-09 | 8 | | Eurométropole Tour (1.Pro) | 177.0km |
| 21-09 | 60 | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | |
| 19-09 | 19 | | Grand Prix d'Isbergues (1.1) | 199.0km |
| 12-09 | 29 | | Antwerp Port Epic / Sels Trophy (1.1) | 170.0km |
| | | Deutschland Tour (2.Pro) |
| 7 | | Klassement |
| 6 | | Punten |
| 29-08 | 3 | 7 | Stage 4Erlangen - Nürnberg (154.0km) | 154.0km |
| 28-08 | 14 | 12 | Stage 3Ilmenau - Erlangen (193.0km) | 193.0km |
| 27-08 | 9 | 10 | Stage 2Sangerhausen - Ilmenau (180.0km) | 180.0km |
| 26-08 | 7 | 10 | Stage 1Stralsund - Schwerin (191.0km) | 191.0km |
| 20-08 | 6 | | Grote Prijs Marcel Kint (1.1) | 196.0km |
| 17-08 | 3 | | Egmont Cycling Race (1.1) | 192.0km |
| 31-07 | 102 | | Heylen Vastgoed Heistse Pijl (1.1) | |
| | | Ethias Tour de Wallonie (2.Pro) |
| 51 | | Klassement |
| 9 | | Punten |
| 24-07 | 4 | 51 | Stage 5Dinant - Quaregnon (183.0km) | 183.0km |
| 23-07 | 4 | 59 | Stage 4Neufchâteau - Fleurus (206.0km) | 206.0km |
| 22-07 | 85 | 71 | Stage 3Plombières - Erezee (179.0km) | 179.0km |
| 21-07 | 12 | 23 | Stage 2Heusden-Zolder - Heusden-Zolder (120.0km) | 120.0km |
| 20-07 | 12 | 18 | Stage 1Genappe - Héron (185.0km) | 185.0km |
| 20-06 | DNF | | National Road Championships - Italy (CN) | 225.0km |
| 15-06 | 48 | | Paris - Camembert (1.1) | 210.0km |
| | | La Route d'Occitanie - La Dépêche du Midi (2.1) |
| 101 | | Klassement |
| 13-06 | 84 | 101 | Stage 4Lavelanet - Duilhac-sous-Peyrepertuse (151.0km) | 151.0km |
| 12-06 | 99 | 111 | Stage 3Pierrefitte-Nestalas - Station du Mourtis (191.0km) | 191.0km |
| 11-06 | 106 | 128 | Stage 2Villefranche-de-Rouergue - Auch (198.0km) | 198.0km |
| 10-06 | 127 | 127 | Stage 1Cazouls-lès-Béziers - Lacaune-les-Bains (156.0km) | 156.0km |
| 06-06 | 8 | | Elfstedenronde (1.1) | 193.0km |
| 05-06 | 20 | | Dwars door het Hageland (1.Pro) | 180.0km |
| 24-05 | 47 | | Ronde van Limburg (1.1) | |
| 16-05 | 47 | | Tro-Bro Léon (1.Pro) | 207.0km |
| | | Presidential Cycling Tour of Turkey (2.Pro) |
| 18-04 | DNS | | Stage 8Bodrum - Kusadasi (160.0km) | 160.0km |
| 17-04 | 30 | 105 | Stage 7Marmaris - Turgutreis (180.0km) | 180.0km |
| 16-04 | 6 | 122 | Stage 6Fethiye - Marmaris (129.0km) | 129.0km |
| 15-04 | 158 | 156 | Stage 5Kemer - Elmali (160.0km) | 160.0km |
| 14-04 | 8 | 51 | Stage 4Alanya - Kemer (184.0km) | 184.0km |
| 13-04 | 32 | 64 | Stage 3Beysehir - Alanya (212.0km) | 212.0km |
| 12-04 | 8 | 89 | Stage 2Konya - Konya (144.0km) | 144.0km |
| 11-04 | 169 | 163 | Stage 1Kapadokya - Kapadokya (72.0km) | 72.0km |
| 07-04 | 7 | | Scheldeprijs (1.Pro) | 194.0km |
| 04-04 | 8 | | La Roue Tourangelle (1.1) | 204.0km |
| 28-03 | 24 | | Cholet - Pays de la Loire (1.1) | 201.0km |
| 24-03 | 148 | | Oxyclean Classic Brugge-De Panne (1.UWT) | 203.0km |
| 17-03 | 3 | | Danilith Nokere Koerse (1.Pro) | 195.0km |
| 14-03 | 14 | | Paris - Troyes (1.2) | |
| 07-03 | 14 | | Grote Prijs Jean - Pierre Monseré (1.1) | 202.0km |
| 02-03 | 105 | | Le Samyn (1.1) | 205.0km |