| 06-10 | 6 | | Paris - Tours Espoirs (1.2U) | |
| 22-09 | 51 | | Paris-Chauny (1.1) | 197.0km |
| | | Tour of Britain (2.Pro) |
| 66 | | Klassement |
| 28 | | Berg |
| 23 | | Jongeren |
| 08-09 | 73 | 66 | Stage 6Lowestoft - Felixstowe (158.0km) | 158.0km |
| 07-09 | 91 | 68 | Stage 5Northampton - Northampton (146.0km) | 146.0km |
| 06-09 | 87 | 63 | Stage 4Derby - Newark-on-Trent (138.0km) | 138.0km |
| 05-09 | 70 | 62 | Stage 3Sheffield - Barnsley (166.0km) | 166.0km |
| 04-09 | 62 | 60 | Stage 2Darlington - Redcar (152.0km) | 152.0km |
| 03-09 | 61 | 61 | Stage 1Kelso - Kelso (181.0km) | 181.0km |
| | | Tour Alsace (2.2) |
| 83 | | Klassement |
| 58 | | Jongeren |
| 28-07 | 116 | 83 | Stage 5Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 27-07 | 110 | 85 | Stage 4L'Isle-sur-le-Doubs - Valentigney (176.0km) | 176.0km |
| 26-07 | 115 | 78 | Stage 3Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 25-07 | 32 | 33 | Stage 2Riedisheim - Ferrette (154.0km) | 154.0km |
| 24-07 | | 58 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| | | Giro Ciclistico della Valle d'Aosta - Mont Blanc (2.2U) |
| 19 | | Klassement |
| 6 | | Jongeren |
| 21-07 | 16 | 19 | Stage 5Valtournenche - Breuil-Cervinia (95.0km) | 95.0km |
| 20-07 | 23 | 30 | Stage 4Saint-Vincent - Champoluc (163.0km) | 163.0km |
| 19-07 | 49 | 41 | Stage 3Sarre - Pré-Saint-Didier (129.0km) | 129.0km |
| 18-07 | 29 | 39 | Stage 2Verrès - Borgofranco d'Ivrea (127.0km) | 127.0km |
| 17-07 | 42 | 42 | Stage 1Saint-Gervais Mont-Blanc - Passy (40.0km) | 40.0km |
| 23-06 | DNF | | National Road Championships - Great Britain (CN) | 181.0km |
| 20-06 | 18 | | National Road Championships - Great Britain TT U23 (CN) | 29.0km |
| | | ZLM Tour (2.1) |
| 90 | | Klassement |
| 27 | | Jongeren |
| 09-06 | 80 | 90 | Stage 5Oosterhout - Oosterhout (159.0km) | 159.0km |
| 08-06 | 75 | 99 | Stage 4Roosendaal - Roosendaal (196.0km) | 196.0km |
| 07-06 | 112 | 112 | Stage 3Schijndel - Buchten (179.0km) | 179.0km |
| 06-06 | 117 | 115 | Stage 2Middelburg - Wissenkerke (193.0km) | 193.0km |
| 05-06 | 67 | 67 | Stage 1Westkapelle - Westkapelle (14.0km) | 14.0km |
| | | Alpes Isère Tour (2.2) |
| 17 | | Klassement |
| 15 | | Berg |
| 12 | | Jongeren |
| 26-05 | 18 | 17 | Stage 5Saint-Pierre-d'Entremont - Bourg-d'Oisans (170.0km) | 170.0km |
| 25-05 | 67 | 43 | Stage 4Saint-Maurice-l'Exil - Roussillon (149.0km) | 149.0km |
| 24-05 | 38 | 44 | Stage 3Saint-Exupéry - Genas (155.0km) | 155.0km |
| 23-05 | 52 | 50 | Stage 2Val-de-Virieu - Saint-Savin (142.0km) | 142.0km |
| 22-05 | 83 | 86 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (127.0km) | 127.0km |
| 12-05 | 47 | | Flèche Ardennaise (1.2) | 174.0km |
| 04-05 | 65 | | Ronde van Overijssel (1.2) | 203.0km |
| | | Tour of the Alps (2.Pro) |
| 86 | | Klassement |
| 19-04 | 63 | 86 | Stage 5Levico Terme - Levico Terme (118.0km) | 118.0km |
| 18-04 | 81 | 92 | Stage 4Laives - Borgo Valsugana (141.0km) | 141.0km |
| 17-04 | 98 | 97 | Stage 3Schwaz - Schwaz (127.0km) | 127.0km |
| 16-04 | 96 | 102 | Stage 2Salorno - Stans (189.0km) | 189.0km |
| 15-04 | 104 | 104 | Stage 1Neumarkt - Kurtinig an der Weinstraße (133.0km) | 133.0km |
| | | Circuit des Ardennes (2.2) |
| 25 | | Klassement |
| 07-04 | 30 | 25 | Stage 4Sedan - Sedan (163.0km) | 163.0km |
| 06-04 | 14 | 31 | Stage 3Charleville-Mézières - Aiglemont (145.0km) | 145.0km |
| 05-04 | 23 | 52 | Stage 2Auvillers-les-Forges - Hardoncelle (167.0km) | 167.0km |
| 04-04 | 65 | 65 | Stage 1Juniville - Asfeld (165.0km) | 165.0km |
| 30-03 | 47 | | Volta Limburg Classic (1.1) | 190.0km |
| 15-03 | 45 | | Youngster Coast Challenge (1.2U) | |