| 06-10 | 6 | | Tour de Vendée (1.1) | 206.0km |
| 27-09 | 16 | | Famenne Ardenne Classic (1.1) | 194.0km |
| 23-09 | 38 | | Tour du Gévaudan Occitanie (1.2) | |
| 12-09 | 7 | | Grand Prix de Wallonie (1.1) | 205.0km |
| | | Ovo Energy Tour of Britain (2.HC) |
| 15 | | Standings |
| 16 | | Points |
| 28 | | Mountain |
| 09-09 | 33 | 15 | Stage 8London - London | 77.0km |
| 08-09 | 60 | | Stage 7West Bridgford - Mansfield | 215.0km |
| 07-09 | 4 | 15 | Stage 6Barrow-in-Furness - Whinlatter Pass | 168.0km |
| 06-09 | 9 | 15 | Stage 5Cockermouth - Whinlatter | 14.0km |
| 05-09 | 77 | 24 | Stage 4Nuneaton - Royal Leamington Spa | 183.0km |
| 04-09 | 11 | 24 | Stage 3Bristol - Bristol | 128.0km |
| 03-09 | 34 | 32 | Stage 2Cranbrook - Barnstaple | 174.0km |
| 02-09 | 89 | 89 | Stage 1Pembrey Country Park - The City of Newport | 174.0km |
| 26-08 | DNF | | Bretagne Classic - Ouest-France (1.UWT) | 256.0km |
| | | Arctic Race of Norway (2.HC) |
| 79 | | Standings |
| 19-08 | 93 | 79 | Stage 4Kvalsund - Alta | 145.0km |
| 18-08 | 16 | 77 | Stage 3Honningsvag - Hammerfest | 201.0km |
| 17-08 | 104 | 92 | Stage 2Tana - Kjøllefjord | 195.0km |
| 16-08 | 44 | 44 | Stage 1Vadsø - Kirkenes | 190.0km |
| | | VOO-Tour de Wallonie (2.HC) |
| 01-08 | DNF | | Stage 5Huy - Waremme | 187.0km |
| 31-07 | 96 | 86 | Stage 4Malmedy - Herstal | 161.0km |
| 30-07 | 96 | 79 | Stage 3Chimay - La Roche-en-Ardenne | 169.0km |
| 29-07 | 75 | 66 | Stage 2Villers-la-Ville - Namur | 167.0km |
| 28-07 | 81 | 82 | Stage 1La Louvière - Les Bons Villers | 193.0km |
| 26-07 | 112 | | Grand Prix Cerami (1.1) | |
| 01-07 | DNF | | National Road Championships - France (CN) | 253.0km |
| | | Le Tour de Savoie Mont Blanc (2.2) |
| 21-06 | DNF | | Stage 1Saint-Michel-de-Maurienne - Bonneval | 150.0km |
| | | Skoda-Tour de Luxembourg (2.HC) |
| 03-06 | DNF | | Stage 4Mersch - Luxembourg | 176.0km |
| 02-06 | 34 | 22 | Stage 3Eschweiler - Differdange | 163.0km |
| 01-06 | 41 | 21 | Stage 2Rosport - Schifflange | 170.0km |
| 31-05 | 82 | 6 | Stage 1Luxembourg - Hesperange | 186.0km |
| 30-05 | 5 | 5 | PrologueLuxembourg - Luxembourg | 2.0km |
| 26-05 | 46 | | Grand Prix de Plumelec-Morbihan (1.1) | |
| | | Vuelta Aragon (2.1) |
| 110 | | Standings |
| 13-05 | 88 | 110 | Stage 3Sabiñánigo - Cerler | 130.0km |
| 12-05 | 129 | 117 | Stage 2Huesca - Zaragoza | 170.0km |
| 11-05 | 46 | 46 | Stage 1Teruel - Caspe | 184.0km |
| | | Tour de Yorkshire (2.1) |
| 10 | | Standings |
| 10 | | Points |
| 06-05 | 7 | 10 | Stage 4Halifax - Leeds | 189.0km |
| 05-05 | 37 | 19 | Stage 3Richmond - Scarborough | 184.0km |
| 04-05 | 5 | 20 | Stage 2Barnsley - Ilkley | 149.0km |
| 03-05 | 109 | 108 | Stage 1Beverley - Doncaster | 182.0km |
| 22-04 | DNF | | Liège-Bastogne-Liège (1.UWT) | 258.0km |
| 14-04 | 1 | | Tour du Finistère (1.1) | 190.0km |
| 11-04 | DNF | | De Brabantse Pijl (1.HC) | 201.0km |
| | | Circuit des Ardennes International (2.2) |
| 08-04 | 84 | 65 | Stage 3aDonchery - Vivier-au-Court | 79.0km |
| 08-04 | 81 | 60 | Stage 3bCharleville-Mézières - Charleville-Mézières | 104.0km |
| 07-04 | 86 | 39 | Stage 2Beauraing - Givet | 175.0km |
| 06-04 | 11 | 11 | Stage 1Bazeilles - Bazeilles | 160.0km |
| 31-03 | 70 | | Gran Premio Miguel Indurain (1.1) | |
| | | Paris-Nice (2.UWT) |
| 41 | | Standings |
| 11 | | Points |
| 11-03 | 27 | 41 | Stage 8Nice - Nice | 110.0km |
| 10-03 | 87 | | Stage 7Nice - Valdeblore La Colmiane | 175.0km |
| 09-03 | 39 | 41 | Stage 6Sisteron - Vence | 198.0km |
| 08-03 | 13 | 55 | Stage 5Salon-de-Provence - Sisteron | 165.0km |
| 07-03 | 108 | 66 | Stage 4La Fouillouse - Saint-Étienne | 18.0km |
| 06-03 | 1 | 65 | Stage 3Bourges - Châtel-Guyon | 210.0km |
| 05-03 | 116 | 108 | Stage 2Orsonville - Vierzon | 187.0km |
| 04-03 | 114 | 116 | Stage 1Chatou - Meudon | 135.0km |
| 25-02 | 6 | | Royal Bernard Drome Classic (1.1) | |
| | | 50ème Tour Cycliste International du Haut Var Matin (2.1) |
| 1 | | Standings |
| 1 | | Points |
| 18-02 | 1 | 1 | Stage 2Vidauban - Flayosc | 188.0km |
| 17-02 | 1 | 1 | Stage 1Le Cannet des Maures - Fayence | 169.0km |
| | | 3ème Tour Cycliste International La Provence (2.1) |
| 8 | | Standings |
| 10 | | Points |
| 11-02 | 20 | 8 | Stage 3Aix-en-Provence - Marseille | 167.0km |
| 10-02 | 4 | 8 | Stage 2La Ciotat - Gemenos | 153.0km |
| 09-02 | 94 | 24 | Stage 1Aubagne - Istres | 184.0km |
| 08-02 | 27 | 27 | PrologueLe Castellet - Le Castellet | 5.0km |
| | | Etoile de Bessèges (2.1) |
| 5 | | Standings |
| 28 | | Points |
| 4 | | Mountain |
| 04-02 | 5 | 5 | Stage 5Alès - Alès | 10.0km |
| 03-02 | 37 | 10 | Stage 4Chusclan - Laudun-l'Ardoise | 153.0km |
| 02-02 | 70 | 11 | Stage 3Bessèges - Bessèges | 152.0km |
| 01-02 | 72 | 79 | Stage 2Nîmes - Générac | 151.0km |
| 31-01 | 75 | 77 | Stage 1Bellegarde - Beaucaire | 162.0km |
| 28-01 | 23 | | Grand Prix Cycliste la Marseillaise (1.1) | 145.0km |