08.10 | 45 | | | Paris - Tours Espoirs (1.2U) | 178.9 | | | more |
05.10 | 45 | | | Paris - Bourges (1.1) Intermarché - Circus - Wanty | 198 | | | more |
01.10 | 2 | | | Grote Prijs Jules Van Hevel - Gedimat Tanghe Classic (NAT) | 155.8 | 112 | | more |
30.09 | 19 | | | Grand Prix Cerami (1.2) | 152.6 | | | more |
22.09 | 6 | | | Zwevezele Koers (NAT) | 153.5 | 75 | | more |
20.09 | 38 | | | Omloop van het Houtland (1.1) Intermarché - Circus - Wanty | 195.2 | | | more |
19.09 | 44 | | | Textielprijs Vichte (NAT) | 168.5 | | | more |
17.09 | 71 | | | Ixina Gooikse Pijl p/b Lotto (1.1) Intermarché - Circus - Wanty | 199 | | | more |
16.09 | 45 | | | SUPER 8 Classic (1.Pro) Intermarché - Circus - Wanty | 203.6 | | | more |
13.09 | 65 | | | Grand Prix de Wallonie (1.Pro) Intermarché - Circus - Wanty | 201.3 | | | more |
07.09 | 3 | | | Bordes Izegem Koers (NAT) | 167.4 | 100 | | more |
31.08 › 02.0931-2/8 | | | | Flanders Tomorrow Tour (2.2U) | | | | more |
| 9 | | | Points classificationPoints classification | | | | |
| 36 | | | General classificationGeneral classification | | | | |
02.09 | 41 | | | S3bStage 3b - Kortemark › Handzame | 124.9 | | | |
02.09 | 47 | 37 | | S3a (ITT)Stage 3a (ITT) - Koksijde › Wulpen | 12.7 | | | |
01.09 | 8 | 4 | | S2Stage 2 - Poperinge › Poperinge | 158.9 | | | |
31.08 | 7 | 5 | | S1Stage 1 - Nieuwpoort › Nieuwpoort | 140.2 | | | |
23.08 | 14 | | | GP Stad Torhout (NAT) | 142.1 | 21 | | more |
20.08 | 7 | | | National Championships Belgium MU - Road Race (NC) | 167 | | 3 | more |
15.08 | 8 | | | Heusden Koers (NAT) | 171.6 | 39 | | more |
30.07 | 2 | | | Hel van Voerendaal (NAT) | 155.2 | | | more |
23.07 | 3 | | | Grand Prix de la ville de Pérenchies (1.2) | 178.4 | 7 | 25 | more |
19.07 | 27 | | | SD WORX BW Classic (1.2) | 185.1 | | | more |
12.07 › 16.0712-16/7 | | | | Giro Ciclistico della Valle d'Aosta - Mont Blanc (2.2U) | | | | more |
| 18 | | | Mountains classificationMountains classification | | | | |
| 8 | | | Points classificationPoints classification | | | | |
| 49 | | | General classificationGeneral classification | | | | |
16.07 | 62 | | | S5Stage 5 - Valtournenche › Breuil-Cervinia | 99.7 | | | |
15.07 | 55 | 46 | | S4Stage 4 - Verrayes › Fénis | 172.5 | | | |
14.07 | 42 | 43 | | S3Stage 3 - Saint-Vincent › Bionaz | 138.1 | | | |
13.07 | 50 | 45 | | S2Stage 2 - Courmayeur › Courmayeur | 125.1 | | | |
12.07 | 1 | 1 | | S1Stage 1 - Arvier › Arvier | 80.9 | 5 | 5 | |
05.07 | 7 | | | Klimkoers Herbeumont U23 (NAT) | 143 | | | more |
01.07 | 62 | | | GP Color Code Bassenge (NAT) | 159 | | | more |
18.06 | 2 | | | Romsée - Stavelot - Romsée (NAT) | 154.5 | 22 | | more |
08.06 › 11.068-11/6 | | | | Course de la Paix Grand Prix Jeseníky (2.Ncup) | | | | more |
| 12 | | | Points classificationPoints classification | | | | |
| 27 | | | General classificationGeneral classification | | | | |
11.06 | 10 | | | S3Stage 3 - Jeseník › Jeseník | 166.1 | | | |
10.06 | 34 | 32 | | S2Stage 2 - Bruntál › Červenohorské sedlo | 129.1 | | | |
09.06 | 6 | 25 | | S1Stage 1 - Jeseník › Rýmařov | 121.9 | | | |
08.06 | 37 | 37 | | ProloguePrologue - Jeseník › Jeseník | 3.1 | | | |
04.06 | 7 | | | Memorial Philippe Van Coningsloo (1.2) | 184.4 | | 5 | more |
03.06 | 38 | | | Heylen Vastgoed Heistse Pijl (1.1) Intermarché - Circus - Wanty | 198.7 | | | more |
30.05 | 24 | | | Gullegem Koerse (NAT) | 162 | 7 | | more |
28.05 | 2 | | | Omloop Het Nieuwsblad U23 (NAT) | 165.8 | | | more |
19.05 › 21.0519-21/5 | | | | Triptyque Ardennais (NAT) | | | | more |
| 2 | | | Youth classificationYouth classification | | | | |
| 14 | | | Mountains classificationMountains classification | | | | |
| 8 | | | Points classificationPoints classification | | | | |
| 5 | | | General classificationGeneral classification - Malmedy › Hellenthal | 146 | 58 | | |
21.05 | 3 | | | S3Stage 3 - Weiswampach › Theux | 148.2 | 32 | | |
20.05 | 8 | | | S2Stage 2 - La Calamine › Bütgenbach | 146.4 | 22 | | |
19.05 | 17 | | | S1Stage 1 - Malmedy › Hellenthal | 146 | 7 | | |
14.05 | 8 | | | GP Vermarc (NAT) | 164 | 65 | | more |
07.05 | 61 | | | Paris-Roubaix Espoirs (1.2U) | 164.8 | | | more |
25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste (2.2) | | | | more |
| 12 | | | Youth classificationYouth classification | | | | |
| 14 | | | Points classificationPoints classification | | | | |
| 13 | | | General classificationGeneral classification | | | | |
01.05 | 23 | | | S7Stage 7 - Piré-Chancé › Châteaugiron | 163.5 | | | |
30.04 | NR | 14 | | S6Stage 6 - Châteaubriant › Plancoët | 209.4 119 | | | |
29.04 | 34 | 14 | | S5Stage 5 - Sérent › Louisfert | 173.9 | | | |
28.04 | 30 | 15 | | S4Stage 4 - Le Mené › Plumelec | 183.1 | | | |
27.04 | 30 | 16 | | S3Stage 3 - Trégunc › Le Quillio | 191.5 | | | |
26.04 | 70 | 26 | | S2Stage 2 - Sibiril › Melgven | 172.2 | | | |
25.04 | 26 | 26 | | S1Stage 1 - Plouescat › Saint-Pol-de-Léon | 155.5 | | | |
15.04 | 21 | | | Liège - Bastogne - Liège U23 (1.2U) | 174.1 | | | more |
06.04 › 09.046-9/4 | | | | Circuit des Ardennes (2.2) | | | | more |
| 19 | | | Youth classificationYouth classification | | | | |
| 31 | | | General classificationGeneral classification | | | | |
09.04 | 32 | | | S4Stage 4 - Bazeilles › Charleville-Mézières | 138.7 | | | |
08.04 | 60 | 38 | | S3Stage 3 - Chooz › Haybes | 169.6 | | | |
07.04 | 37 | 35 | | S2Stage 2 - Renneville › Gruyères | 185.6 | | | |
06.04 | 17 | 17 | | S1Stage 1 - Nouvion-sur-Meuse › Sedan | 89.6 | | | |
01.04 | DNF | | | Volta Limburg Classic (1.1) Intermarché - Circus - Wanty | 193.4 | | | more |
25.03 | 7 | | | Wim Hendriks Trofee (NAT) | | | | more |
19.03 | 36 | | | Zuidkempense Pijl - GP Wilfried Peeters (NAT) | 151.2 | | | more |
12.03 | 33 | | | La Get Up Cup (NAT) | 134 | | | more |
05.03 | 55 | | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | 179 | | | more |
04.03 | 42 | | | Le Tour des 100 Communes (1.2) | 176.2 | | | more |
26.02 | 28 | | | Brussel-Opwijk (NAT) | 162.4 | | | more |
12.02 | 26 | | | Figueira Champions Classic (1.1) Intermarché - Circus - Wanty | 190 | | | more |