| 30-12 | 36 | | Cyclocross Bredene (C2) | |
| 29-12 | 49 | | Telenet Superprestige Diegem (C1) | |
| 26-12 | 50 | | Telenet UCI Cyclo-cross World Cup Heusden-Zolder U23 (CDM) | |
| 21-12 | 29 | | Waaslandcross Sint-Niklaas (C2) | |
| 07-12 | 46 | | Ethias Cross - Essen (C1) | |
| 17-11 | 50 | | DVV Verzekeringen trofee - Flandriencross U23 (CU) | |
| 01-11 | 46 | | DVV Verzekeringen trofee - Koppenbergcross U23 (CU) | |
| 27-10 | 39 | | Grand-Prix de la Commune de Contern (C2) | |
| 15-09 | 11 | | Duo Normand (1.1) | 50.0km |
| 08-09 | 91 | | Gylne Gutuer (1.2) | |
| 07-09 | DNF | | Lillehammer GP (1.2) | |
| 06-09 | 42 | | Hafjell TT (1.2) | |
| 01-09 | DNF | | Grote Prijs Jef Scherens - Rondom Leuven (1.1) | 185.0km |
| 20-08 | DNF | | GP Stad Zottegem (1.1) | 200.0km |
| 26-07 | 64 | | 45. Gemenc Grand Prix I (1.2) | |
| 21-07 | DNF | | Tokyo 2020 Test Event (1.2) | |
| 30-06 | 18 | | National Road Championships - Luxembourg (CN) | |
| 27-06 | 2 | | National Road Championships - Luxembourg TT U23 (CN) | |
| | | ZLM Tour (2.1) |
| 88 | | Klassement |
| 23-06 | 85 | 88 | Stage 4Eindhoven - Tilburg | |
| 22-06 | 99 | 90 | Stage 3Buchten - Landgraaf (171.0km) | 171.0km |
| 21-06 | 48 | 58 | Stage 2Etten-Leur - Buchten (168.0km) | 168.0km |
| 20-06 | 45 | 53 | Stage 1Bredene - Heinkenszand (197.0km) | 197.0km |
| 19-06 | 62 | 62 | PrologueYerseke - Yerseke (6.0km) | 6.0km |
| | | Ronde de l'Oise (2.2) |
| 16-06 | DNF | | Stage 4Laigneville - Pont-Sainte-Maxence (183.0km) | 183.0km |
| 15-06 | 79 | 79 | Stage 3Grandvilliers - Ressons-sur-Matz (174.0km) | 174.0km |
| 14-06 | 99 | 83 | Stage 2Liancourt - Liancourt (186.0km) | 186.0km |
| 13-06 | 53 | 69 | Stage 1Couloisy-Lisières de l'Oise - Clermont (126.0km) | 126.0km |
| | | Skoda-Tour de Luxembourg (2.HC) |
| 08-06 | DNF | | Stage 3Mondorf-les-Bains - Diekirch (178.0km) | 178.0km |
| 07-06 | 102 | 100 | Stage 2Steinfort - Rosport (168.0km) | 168.0km |
| 06-06 | 80 | 72 | Stage 1Luxembourg - Bascharage (191.0km) | 191.0km |
| 05-06 | 74 | 74 | PrologueLuxembourg - Luxembourg (2.0km) | 2.0km |
| 30-05 | DNF | | Circuit de Wallonie (1.1) | 192.0km |
| 26-05 | 110 | | Grote Prijs Marcel Kint (1.1) | 188.0km |
| | | Tour d'Eure-et-Loir (2.2) |
| 97 | | Klassement |
| 19-05 | 75 | 97 | Stage 3Châteauneuf-en-Thymerais - Chartres (192.0km) | 192.0km |
| 18-05 | 98 | 98 | Stage 2Maintenon - Authon-du-Perche (188.0km) | 188.0km |
| 11-05 | DNF | | PWZ Zuidenveld Tour (1.2) | |
| 04-05 | DNF | | Ronde van Overijssel (1.2) | |
| 01-05 | 100 | | Eschborn-Frankfurt U23 (1.2U) | 147.0km |
| 20-04 | DNF | | Liège - Bastogne - Liège U23 (1.2U) | 171.0km |
| | | Volta ao Alentejo (2.2) |
| 95 | | Klassement |
| 24-03 | 49 | 95 | Stage 6Portalegre - Évora (152.0km) | 152.0km |
| 23-03 | 48 | 103 | Stage 4Ponte de Sor - Portalegre (74.0km) | 74.0km |
| 23-03 | 68 | 102 | Stage 5Castelo de Vide - Castelo de Vide (8.0km) | 8.0km |
| 22-03 | 109 | 109 | Stage 3Santiago do Cacém - Mora (176.0km) | 176.0km |
| 21-03 | 81 | 98 | Stage 2Mértola - Odemira (182.0km) | 182.0km |
| 20-03 | 103 | 103 | Stage 1Montemor-o-Novo - Moura (208.0km) | 208.0km |
| 17-03 | 78 | | Classica da Arrabida - Cyclin'Portugal (1.2) | |
| 01-01 | DNS | | Grand Prix Garage Collé (C2) | |