| 10-09 | DNF | | Giro della Toscana - Memorial Alfredo Martini (1.1) | 189.0km |
| 07-09 | DNF | | GP Industria & Artigianato (1.Pro) | 196.0km |
| 31-08 | 90 | | Bretagne Classic - Ouest-France (1.UWT) | 261.0km |
| | | Renewi Tour (2.UWT) |
| 109 | | Klassement |
| 24-08 | 94 | 109 | Stage 5Leuven - Leuven (185.0km) | 185.0km |
| 23-08 | 112 | 123 | Stage 4Riemst - Bilzen (196.0km) | 196.0km |
| 22-08 | 107 | 126 | Stage 3Aalter - Geraardsbergen (179.0km) | 179.0km |
| 21-08 | 147 | 144 | Stage 2Blankenberge - Ardooie (169.0km) | 169.0km |
| 20-08 | 135 | 135 | Stage 1Terneuzen - Breskens (182.0km) | 182.0km |
| 17-08 | 60 | | ADAC Cyclassics (1.UWT) | 206.0km |
| 29-06 | DNF | | National Road Championships - Great Britain (CN) | 190.0km |
| | | La Route d'Occitanie - CIC (2.1) |
| 80 | | Klassement |
| 52 | | Punten |
| 35 | | Jongeren |
| 21-06 | 80 | 80 | Stage 4Saint-Gaudens - Saint-Girons (128.0km) | 128.0km |
| 20-06 | 94 | 86 | Stage 3Pujaudran - Luz-Ardiden (173.0km) | 173.0km |
| 19-06 | 97 | | Stage 2Gignac - Carmaux (195.0km) | 195.0km |
| 18-06 | 74 | 74 | Stage 1Saint-Affrique - Roquefortf (10.0km) | 10.0km |
| | | Boucles de la Mayenne (2.Pro) |
| 73 | | Klassement |
| 22 | | Jongeren |
| 01-06 | 97 | 73 | Stage 3Javron-les-Chapelles - Laval (163.0km) | 163.0km |
| 31-05 | 61 | 64 | Stage 2Sainte-Suzanne - Bais (210.0km) | 210.0km |
| 30-05 | 81 | 79 | Stage 1Saint-Berthevin - Juvigné (166.0km) | 166.0km |
| 29-05 | 54 | 54 | PrologueLaval - Laval (5.0km) | 5.0km |
| 01-05 | DNF | | Eschborn-Frankfurt (1.UWT) | 198.0km |
| 13-04 | 107 | | Paris-Roubaix (1.UWT) | 259.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 69 | | Klassement |
| 11-04 | 60 | 69 | Stage 4Sillé-le-Guillaume - Le Mans (186.0km) | 186.0km |
| 10-04 | 83 | 94 | Stage 3Tiercé - Hambers (165.0km) | 165.0km |
| 09-04 | 105 | 101 | Stage 2La Bernardière - Beaupréau (158.0km) | 158.0km |
| 08-04 | 95 | 95 | Stage 1Machecoul-Saint-Même - La Baule-Escoublac (208.0km) | 208.0km |
| 30-03 | DNF | | Gent-Wevelgem in Flanders Fields (1.UWT) | 250.0km |
| 28-03 | 106 | | E3 Saxo Classic (1.UWT) | 208.0km |
| 26-03 | 106 | | Classic Brugge-De Panne (1.UWT) | 195.0km |
| 19-03 | 115 | | Milano - Torino (1.Pro) | 174.0km |
| 02-03 | DNF | | Faun Drome Classic (1.Pro) | 189.0km |
| 01-03 | DNF | | Faun-Ardèche Classic (1.Pro) | 165.0km |
| | | UAE Tour (2.UWT) |
| 23-02 | DNF | | Stage 7Al Ain Hazza Bin Zayed Stadium - Jebel Hafeet (176.0km) | 176.0km |
| 22-02 | 86 | 83 | Stage 6Abu Dhabi Cycling Club - Abu Dhabi Breakwater (165.0km) | 165.0km |
| 21-02 | 120 | 90 | Stage 5American University Dubai - Hamdan Bin Mohammed Smart University (160.0km) | 160.0km |
| 20-02 | 110 | 76 | Stage 4Fujairah Qidfa Beach - Umm Al Quwain (181.0km) | 181.0km |
| 19-02 | 60 | 62 | Stage 3Ras Al Khaimah - Jebel Jais (181.0km) | 181.0km |
| 18-02 | 91 | 97 | Stage 2Al Hudayriyat Island - Al Hudayriyat Island (12.0km) | 12.0km |
| 17-02 | 96 | 96 | Stage 1Madinat Zayed - Liwa Palace (138.0km) | 138.0km |
| 02-02 | 149 | | Trofeo Palma (1.1) | 149.0km |
| 31-01 | DNF | | Trofeo Serra Tramuntana (1.1) | 151.0km |
| 30-01 | 153 | | Trofeo Felanitx-Ses Salines (1.1) | 184.0km |