| 09-10 | DNF | | Paris - Tours Elite (1.Pro) | 213.0km |
| 06-10 | 12 | | Paris - Bourges (1.1) | 198.0km |
| 04-10 | 18 | | Binche - Chimay - Binche (1.1) | 198.0km |
| 02-10 | 41 | | Tour de Vendée (1.1) | 206.0km |
| 25-09 | 23 | | Classique Paris-Chauny (1.1) | 203.0km |
| 18-09 | 37 | | Grand Prix d'Isbergues (1.1) | 197.0km |
| 17-09 | 50 | | Primus Classic (1.Pro) | 201.0km |
| 11-09 | 68 | | Grand Prix Cycliste de Montréal (1.UWT) | 221.0km |
| 09-09 | 44 | | Grand Prix Cycliste de Québec (1.UWT) | 201.0km |
| 28-08 | 65 | | Bretagne Classic - Ouest-France (1.UWT) | 254.0km |
| | | Tour du Limousin (2.1) |
| 85 | | Standings |
| 19-08 | 80 | 85 | Stage 4Saint-Laurent-sur-Gorre - Limoges | 174.0km |
| 18-08 | 88 | 84 | Stage 3Donzenac - Malemort | 181.0km |
| 17-08 | 16 | 40 | Stage 2Périgueux - Ribérac | 184.0km |
| 16-08 | 58 | 61 | Stage 1Verneuil-sur-Vienne - La Souterraine | 176.0km |
| 14-08 | 33 | | La Polynormande (1.1) | 168.0km |
| | | Ethias Tour de Wallonie (2.Pro) |
| 87 | | Standings |
| 27-07 | 38 | 87 | Stage 5Le Roeulx - Chapelle-lez-Herlaimont | 200.0km |
| 26-07 | 90 | 107 | Stage 4Durbuy - Couvin | 200.0km |
| 25-07 | 32 | 110 | Stage 3Visé - Rochefort | 194.0km |
| 24-07 | 138 | 120 | Stage 2Verviers - Herve | 176.0km |
| 23-07 | 101 | 101 | Stage 1Temploux - Huy | 173.0km |
| 26-06 | 6 | | National Road Championships - Great Britain (CN) | |
| 23-06 | 20 | | National Road Championships - Great Britain TT U23 (CN) | |
| | | Tour de Suisse (2.UWT) |
| 72 | | Standings |
| 33 | | Points |
| 19-06 | 68 | 72 | Stage 8Vaduz - Vaduz | 25.0km |
| 18-06 | 72 | 76 | Stage 7Ambri - Malbun (Triesenberg) | 196.0km |
| 17-06 | 74 | 80 | Stage 6Locarno - Moosalp | 179.0km |
| 16-06 | 98 | 113 | Stage 5Ambri - Novazzano | 193.0km |
| 15-06 | 140 | 128 | Stage 4Grenchen - Brunnen | 190.0km |
| 14-06 | 13 | 114 | Stage 3Aesch - Grenchen | 176.0km |
| 13-06 | 119 | 129 | Stage 2Küsnacht - Aesch | 199.0km |
| 12-06 | 123 | 121 | Stage 1Küsnacht - Küsnacht | 177.0km |
| 05-06 | DNF | | Brussels Cycling Classic (1.Pro) | 203.0km |
| | | Boucles de la Mayenne (2.Pro) |
| 15 | | Standings |
| 46 | | Points |
| 29-05 | 57 | 15 | Stage 4Martigné-sur-Mayenne - Laval | 180.0km |
| 28-05 | 50 | 14 | Stage 3Saint-Berthevin - Château-Gontier | 188.0km |
| 27-05 | 18 | 11 | Stage 2Jublains - Pré-en-Pail-Saint-Samson | 171.0km |
| 26-05 | 15 | 18 | Stage 1Saint-Pierre-des-Landes - Andouillé | 180.0km |
| 22-05 | 27 | | Boucles de l'Aulne - Châteaulin (1.1) | 177.0km |
| 21-05 | 33 | | Tour du Finistère (1.1) | 193.0km |
| 17-04 | 42 | | Paris-Roubaix (1.UWT) | 257.0km |
| 12-04 | 42 | | Paris - Camembert (1.1) | |
| 03-04 | 55 | | Ronde van Vlaanderen (1.UWT) | 272.0km |
| 30-03 | 40 | | Dwars door Vlaanderen (1.UWT) | 183.0km |
| 27-03 | DNF | | Gent-Wevelgem in Flanders Fields (1.UWT) | 248.0km |
| 25-03 | 73 | | E3 Saxo Bank Classic (1.UWT) | 203.0km |
| 20-03 | 28 | | Cholet - Pays de la Loire (1.1) | 202.0km |
| 19-03 | 2 | | Classic Loire Atlantique (1.1) | 182.0km |
| 17-03 | 45 | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | 200.0km |
| 16-03 | 13 | | Danilith Nokere Koerse (1.Pro) | 189.0km |
| 05-03 | 35 | | Strade Bianche (1.UWT) | 184.0km |
| 27-02 | 49 | | Kuurne-Brussel-Kuurne (1.Pro) | 195.0km |
| 26-02 | 78 | | Omloop Het Nieuwsblad Elite (1.UWT) | 204.0km |
| | | Tour des Alpes Maritimes et du Var (2.1) |
| 94 | | Standings |
| 26 | | Points |
| 25 | | Mountain |
| 20-02 | 94 | 94 | Stage 3Villefranche-sur-Mer - Blausasc | 113.0km |
| 19-02 | 89 | 105 | Stage 2Puget-Théniers - La Turbie | 149.0km |
| 18-02 | 117 | 117 | Stage 1Saint-Raphaël - La Seyne-sur-Mer | 176.0km |
| | | Tour de la Provence (2.Pro) |
| 85 | | Standings |
| 13-02 | 86 | 85 | Stage 3Manosque - La Montagne de Lure | 166.0km |
| 12-02 | 83 | 64 | Stage 2Arles - Manosque | 180.0km |
| 11-02 | 63 | 37 | Stage 1Istres - Les Saintes-Maries-de-la-Mer | 152.0km |
| 10-02 | 21 | 21 | PrologueBerre l'Etang - Berre l'Etang | 7.0km |