| 19-10 | 7 | | Chrono des Nations (1.1) | 44.0km |
| 12-10 | DNF | | Paris - Tours Elite (1.Pro) | 211.0km |
| 11-10 | 77 | | Tour de Vendée (1.1) | 202.0km |
| 07-10 | DNF | | Binche - Chimay - Binche / Mémorial Frank Vandenbroucke (1.1) | 203.0km |
| 28-09 | DNF | | UCI World Championship Kigali (CM) | 267.0km |
| 17-09 | 125 | | Grand Prix de Wallonie (1.Pro) | 187.0km |
| 14-09 | DNF | | Grand Prix Cycliste de Montréal (1.UWT) | 209.0km |
| 12-09 | DNF | | Grand Prix Cycliste de Québec (1.UWT) | 216.0km |
| | | Vuelta a España (2.UWT) |
| 30-08 | DNF | | Stage 8Monzón Templario - Zaragoza (163.0km) | 163.0km |
| 29-08 | 125 | 138 | Stage 7Andorra La Vella - Cerler (188.0km) | 188.0km |
| 28-08 | 164 | 138 | Stage 6Olot - Pal Andorra (170.0km) | 170.0km |
| 27-08 | 20 | 132 | Stage 5Figueres - Figueres (24.0km) | 24.0km |
| 26-08 | 120 | 134 | Stage 4Susa - Voiron (206.0km) | 206.0km |
| 25-08 | 158 | 150 | Stage 3San Maurizio Canavese - Ceres (134.0km) | 134.0km |
| 24-08 | 98 | 98 | Stage 2Alba - Puerto Limone (159.0km) | 159.0km |
| 23-08 | 109 | 111 | Stage 1Torino - Novara (186.0km) | 186.0km |
| | | Ethias-Tour de Wallonie (2.Pro) |
| 3 | | Klassement |
| 2 | | Punten |
| 30-07 | 27 | 3 | Stage 5Bertrix - Bertrix (183.0km) | 183.0km |
| 29-07 | 11 | 3 | Stage 4Welkenraedt - Seraing (163.0km) | 163.0km |
| 28-07 | 60 | 1 | Stage 3Estinnes - Antoing (165.0km) | 165.0km |
| 27-07 | 1 | 1 | Stage 2Huy - Sambreville (153.0km) | 153.0km |
| 26-07 | 4 | 4 | Stage 1Nassogne - Nassogne (182.0km) | 182.0km |
| 29-06 | 7 | | National Road Championships - Great Britain (CN) | 190.0km |
| 26-06 | 3 | | National Road Championships - Great Britain TT (CN) | 41.0km |
| | | La Route d'Occitanie - CIC (2.1) |
| 21-06 | ABD | | Stage 4Saint-Gaudens - Saint-Girons (128.0km) | 128.0km |
| 20-06 | 60 | 61 | Stage 3Pujaudran - Luz-Ardiden (173.0km) | 173.0km |
| 19-06 | 107 | | Stage 2Gignac - Carmaux (195.0km) | 195.0km |
| 18-06 | 14 | 14 | Stage 1Saint-Affrique - Roquefortf (10.0km) | 10.0km |
| | | Critérium du Dauphiné (2.UWT) |
| 10-06 | DNF | | Stage 3Brioude - Charantonnay (207.0km) | 207.0km |
| 09-06 | 142 | 137 | Stage 2Prémilhat - Issoire (204.0km) | 204.0km |
| 08-06 | 112 | 112 | Stage 1Domerat - Montlucon (195.0km) | 195.0km |
| | | Boucles de la Mayenne (2.Pro) |
| 62 | | Klassement |
| 20 | | Punten |
| 14 | | Berg |
| 16 | | Jongeren |
| 01-06 | 102 | 62 | Stage 3Javron-les-Chapelles - Laval (163.0km) | 163.0km |
| 31-05 | 62 | 59 | Stage 2Sainte-Suzanne - Bais (210.0km) | 210.0km |
| 30-05 | 25 | 15 | Stage 1Saint-Berthevin - Juvigné (166.0km) | 166.0km |
| 29-05 | 14 | 14 | PrologueLaval - Laval (5.0km) | 5.0km |
| 26-05 | DNF | | Mercan'Tour Classic Alpes-Maritimes (1.1) | 152.0km |
| 11-05 | DNF | | Tro-Bro Léon (1.Pro) | 203.0km |
| 10-05 | 38 | | Grand Prix du Morbihan (1.Pro) | 196.0km |
| 08-05 | DNF | | Boucles de l'Aulne - Châteaulin (1.1) | 183.0km |
| | | Tour de Romandie (2.UWT) |
| 82 | | Klassement |
| 33 | | Jongeren |
| 04-05 | 20 | 82 | Stage 5Genève - Genève (17.0km) | 17.0km |
| 03-05 | 69 | 87 | Stage 4Sion - Thyon (128.0km) | 128.0km |
| 02-05 | 115 | 102 | Stage 3Cossonay - Cossonay (183.0km) | 183.0km |
| 01-05 | 101 | 88 | Stage 2La Grande Béroche - La Grande Béroche (157.0km) | 157.0km |
| 30-04 | 41 | 55 | Stage 1Münchenstein - Fribourg (194.0km) | 194.0km |
| 29-04 | 94 | 94 | PrologueSaint-Imier - Saint-Imier (3.0km) | 3.0km |
| 18-04 | 60 | | De Brabantse Pijl (1.Pro) | 175.0km |
| 13-04 | DNF | | Paris-Roubaix (1.UWT) | 259.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 11-04 | DNF | | Stage 4Sillé-le-Guillaume - Le Mans (186.0km) | 186.0km |
| 10-04 | 61 | 62 | Stage 3Tiercé - Hambers (165.0km) | 165.0km |
| 09-04 | 51 | 62 | Stage 2La Bernardière - Beaupréau (158.0km) | 158.0km |
| 08-04 | 99 | 99 | Stage 1Machecoul-Saint-Même - La Baule-Escoublac (208.0km) | 208.0km |
| 02-04 | DNF | | Paris - Camembert (1.1) | 199.0km |
| 30-03 | 75 | | La Roue Tourangelle (1.1) | 197.0km |
| 28-03 | 113 | | E3 Saxo Classic (1.UWT) | 208.0km |
| 26-03 | 137 | | Classic Brugge-De Panne (1.UWT) | 195.0km |
| 23-03 | 29 | | Cholet Agglo Tour (1.1) | 205.0km |
| | | Tour de la Provence (2.1) |
| 14-02 | DNF | | Stage 1Marseille - Saint-Victoret (175.0km) | 175.0km |
| | | Etoile de Bessèges - Tour du Gard (2.1) |
| 47 | | Klassement |
| 21 | | Punten |
| 3 | | Berg |
| 09-02 | 10 | 47 | Stage 5Alès - Alès (10.0km) | 10.0km |
| 08-02 | 57 | 58 | Stage 4Vauvert - Le Mont Bouquet (119.0km) | 119.0km |
| 07-02 | 71 | 62 | Stage 3Bessèges - Bessèges (136.0km) | 136.0km |
| 06-02 | 62 | 46 | Stage 2Domessargues - Marguerittes (165.0km) | 165.0km |
| 05-02 | 57 | 57 | Stage 1Bellegarde - Bellegarde (159.0km) | 159.0km |
| 02-02 | 78 | | Grand Prix Cycliste de Marseille La Marseillaise (1.1) | 164.0km |
| 26-01 | 72 | | Clàssica Comunitat Valenciana 1969 - Gran Premi València (1.1) | 184.0km |
| 25-01 | 118 | | Gran Premio Castellón - Ruta de la Cerámica (1.1) | 171.0km |