| 15-10 | 11 | | Chrono des Nations (1.1) | 45.0km |
| 08-10 | 122 | | Paris - Tours Elite (1.Pro) | 231.0km |
| 05-10 | 46 | | Paris - Bourges (1.1) | 198.0km |
| 03-10 | 38 | | Binche - Chimay - Binche (1.1) | 198.0km |
| 01-10 | 8 | | Il Piccolo Lombardia (1.2U) | |
| 28-09 | 36 | | Circuit Franco-Belge (1.Pro) | 190.0km |
| 22-09 | 24 | | UEC Road European Championships U23 (CC) | 136.0km |
| 20-09 | 1 | | UEC Road European Championships TT U23 (CC) | 20.0km |
| 16-09 | DNF | | Super 8 Classic / Primus Classic (1.Pro) | 203.0km |
| 13-09 | 91 | | Grand Prix de Wallonie (1.Pro) | 201.0km |
| 07-09 | 14 | | Izegem Koers (National) | 167.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 69 | | Standings |
| 24 | | Mountain |
| 27-08 | 24 | 69 | Stage 8Val Cenis - Sainte-Foy-Tarentaise | 100.0km |
| 26-08 | 80 | 90 | Stage 7bLes Karellis - Col du Mont Cenis | 70.0km |
| 26-08 | 124 | 89 | Stage 7aMontricher-Albanne - Les Karellis | 11.0km |
| 25-08 | 106 | 88 | Stage 6Méribel - Col de la Loze (Méribel) | 65.0km |
| 24-08 | 85 | 77 | Stage 5La Tour-de-Salvagny - Lac d'Aiguebelette | 141.0km |
| 23-08 | 107 | 82 | Stage 4Aigurande - Évaux-les-Bains | 149.0km |
| 22-08 | | 27 | Stage 3Vatan - Issoudun | 21.0km |
| 21-08 | 91 | 63 | Stage 2Nozay - Château-Chinon | 189.0km |
| 20-08 | 25 | 25 | Stage 1Carnac - La Gacilly | 140.0km |
| 12-08 | 7 | | UCI World Championship Glasgow U23 (CM) | 168.0km |
| 09-08 | 2 | | UCI World Championship Glasgow TT U23 (CM) | 36.0km |
| | | Tour ALSACE (2.2) |
| 67 | | Standings |
| 9 | | Points |
| 30-07 | 4 | 67 | Stage 4Ribeauville - Cernay | 139.0km |
| 29-07 | 81 | 101 | Stage 3Tagolsheim - Altkirch | 197.0km |
| 28-07 | 121 | 119 | Stage 2Vesoul - La Planche des Belles Filles | 132.0km |
| 27-07 | 110 | 4 | Stage 1Rust (Europapark) - Selestat | 166.0km |
| 26-07 | 1 | 2 | PrologueSausheim - Sausheim | 4.0km |
| 25-06 | 2 | | National Road Championships - Belgium (CN) | 226.0km |
| 22-06 | 2 | | National Road Championships - Belgium TT (CN) | 41.0km |
| | | Giro d'Italia Giovani (2.2U) |
| 11 | | Standings |
| 20 | | Points |
| 18-06 | 18 | 11 | Stage 8Tavagnacco - Trieste | 131.0km |
| 17-06 | 8 | 11 | Stage 7Possagno - Pian del Cansiglio | 175.0km |
| 16-06 | 14 | 11 | Stage 6Pergine Valsugana - Povegliano | 166.0km |
| 15-06 | 22 | 11 | Stage 5Cesano Maderno - Manerba del Garda | 164.0km |
| 14-06 | 12 | 11 | Stage 4Morbegno - Passo dello Stelvio | 118.0km |
| 13-06 | 28 | 1 | Stage 3Priocca - Magenta | 146.0km |
| 12-06 | 13 | 1 | Stage 2San Francesco al Campo - Cherasco | 151.0km |
| 11-06 | 1 | 1 | Stage 1Aglie - Aglie | 9.0km |
| | | Orlen Nations Grand Prix (2.NCUP) |
| 27-05 | DNS | | Stage 4Bukovina - Nowy Sacz | 128.0km |
| 26-05 | 123 | 119 | Stage 3Levoca - Strbské Pleso | 130.0km |
| 25-05 | 116 | 109 | Stage 2Hatvan - Bükkszentkereszt | 154.0km |
| 24-05 | 88 | 88 | Stage 1Kapsosvár - Balatonföldvár | 136.0km |
| 21-05 | 30 | | Antwerp Port Epic / Sels Trophy (1.1) | 192.0km |
| 07-05 | 20 | | Paris-Roubaix Espoirs (1.2U) | |
| 01-05 | 40 | | Eschborn-Frankfurt U23 (1.2U) | 107.0km |
| 23-04 | 18 | | Rutland-Melton CiCLE Classic (1.2) | |
| 15-04 | 24 | | Liège-Bastogne-Liège U23 (1.2U) | 174.0km |
| | | Circuit des Ardennes (2.2) |
| 09-04 | DNS | | Stage 4Bazeilles - Charleville-Mézières | 180.0km |
| 08-04 | 34 | 3 | Stage 3Chooz - Haybes | 166.0km |
| 07-04 | 3 | 3 | Stage 2Renneville - Gruyères | 187.0km |
| 06-04 | 32 | 32 | Stage 1Nouvion-sur-Meuse - Sedan | 90.0km |
| 26-03 | 13 | | Gent-Wevelgem / Kattekoers-Ieper U23 (1.2U) | 183.0km |
| 17-03 | 2 | | Youngster Coast Challenge (1.2U) | |
| 12-03 | 21 | | Albert Achterhes Profronde van Drenthe (1.1) | |
| 04-03 | 19 | | Grand Prix Criquielion (1.1) | 201.0km |
| 28-02 | 45 | | Le Samyn (1.1) | 209.0km |
| | | Tour des Alpes Maritimes et du Var (2.1) |
| 19-02 | DNF | | Stage 3Villefranche-sur-Mer - Vence | 139.0km |
| 18-02 | 84 | 83 | Stage 2Mandelieu-la-Napoule - Antibes | 179.0km |
| 17-02 | 85 | 85 | Stage 1Saint-Raphaël - Ramatuelle | 197.0km |