10.09 | DNF | | | Grand Prix Cycliste de Montréal (1.UWT) | 221.4 | | | more |
08.09 | DNF | | | Grand Prix Cycliste de Québec (1.UWT) | 201.6 | | | more |
03.09 | DNF | | | Bretagne Classic - Ouest-France (1.UWT) | 258 | | | more |
23.08 › 27.0823-27/8 | | | | Renewi Tour (2.UWT) | | | | more |
| 63 | | | General classificationGeneral classification | | 5 | | |
27.08 | 19 | | | S5Stage 5 - Riemst › Bilzen | 187.3 | | | |
26.08 | 11 | 79 | | S4Stage 4 - Beringen › Peer | 179.4 | | | |
25.08 | 79 | 91 | | S3Stage 3 - Aalter › Geraardsbergen | 171.2 | | | |
24.08 | 83 | 80 | | S2 (ITT)Stage 2 (ITT) - Sluis › Sluis | 13.6 | | | |
23.08 | 13 | 15 | | S1Stage 1 - Blankenberge › Ardooie | 182.9 | | | |
20.08 | 20 | | | Cyclassics Hamburg (1.UWT) | 205.6 | 15 | 24 | more |
06.08 | DNF | | | World Championships ME - Road Race (WC) | 271.1 | | | more |
31.07 › 02.0831-2/7 | | | | Tour de l'Ain (2.1) | | | | more |
| 4 | | | Points classificationPoints classification | | | | |
| 59 | | | General classificationGeneral classification | | | | |
02.08 | 61 | | | S3Stage 3 - Oyonnax › Lélex Monts-Jura | 137 | | | |
01.08 | 63 | 64 | | S2Stage 2 - Saint-Vulbas › Lagnieu | 124 | | | |
31.07 | 1 | 1 | | S1Stage 1 - Loyettes › La Plaine Tonique | 154 | 20 | 14 | |
22.07 › 26.0722-26/7 | | | | Ethias-Tour de Wallonie (2.Pro) | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 9 | | | Points classificationPoints classification | | | | |
| 33 | | | General classificationGeneral classification | | | 3 | |
26.07 | 5 | | | S5Stage 5 - Banneux › Aubel | 215 | 4 | 3 | |
25.07 | 51 | 39 | | S4 (ITT)Stage 4 (ITT) - Mons › Mons | 32.7 | | | |
24.07 | 5 | 16 | | S3Stage 3 - Thuin › Mont-Saint-Guibert | 186.8 | 4 | 3 | |
23.07 | 14 | 19 | | S2Stage 2 - Saint-Ghislain › Walcourt | 179.7 | | | |
22.07 | 17 | 20 | | S1Stage 1 - Huy › Hamoir | 189.6 | | | |
25.06 | DNF | | | National Championships Great Britain ME - Road Race (NC) | 189 | | | more |
06.05 › 28.056-28/5 | | | | Giro d'Italia (2.UWT) | | | | more |
| 29 | | | Youth classificationYouth classification | | | | |
| 43 | | | Points classificationPoints classification | | | | |
| 91 | | | General classificationGeneral classification | | 20 | | |
28.05 | 6 | | | S21Stage 21 - Roma › Roma | 126 | 15 | 45 | |
27.05 | 53 | 93 | | S20 (ITT)Stage 20 (ITT) - Tarvisio › Monte Lussari | 18.6 | | | |
26.05 | 100 | 93 | | S19Stage 19 - Longarone › Tre Cime di Lavaredo | 183 | | | |
25.05 | 71 | 90 | | S18Stage 18 - Oderzo › Val di Zoldo (Palafavera) | 161 | | | |
24.05 | 25 | 94 | | S17Stage 17 - Pergine Valsugana › Caorle | 197 | | | |
23.05 | 92 | 94 | | S16Stage 16 - Sabbio Chiese › Monte Bondone | 203 | | | |
21.05 | 101 | 99 | | S15Stage 15 - Seregno › Bergamo | 195 | | | |
20.05 | 71 | 99 | | S14Stage 14 - Sierre › Cassano Magnago | 194 | | | |
19.05 | 120 | 96 | | S13Stage 13 - Le Châble › Crans-Montana | 74.6 | | | |
18.05 | 135 | 97 | | S12Stage 12 - Bra › Rivoli | 185 | | | |
17.05 | 131 | 90 | | S11Stage 11 - Camaiore › Tortona | 219 | | | |
16.05 | 112 | 85 | | S10Stage 10 - Scandiano › Viareggio | 196 | | | |
14.05 | 126 | 93 | | S9 (ITT)Stage 9 (ITT) - Savignano sul Rubicone › Cesena | 35 | | | |
13.05 | 134 | 93 | | S8Stage 8 - Terni › Fossombrone | 207 | | | |
12.05 | 96 | 90 | | S7Stage 7 - Capua › Gran Sasso d'Italia (Campo Imperatore) | 218 | | | |
11.05 | 14 | 77 | | S6Stage 6 - Napoli › Napoli | 162 | 2 | 5 | |
10.05 | 111 | 94 | | S5Stage 5 - Atripalda › Salerno | 171 | | | |
09.05 | 107 | 96 | | S4Stage 4 - Venosa › Lago Laceno | 175 | | | |
08.05 | 100 | 104 | | S3Stage 3 - Vasto › Melfi | 213 | | | |
07.05 | 9 | 90 | | S2Stage 2 - Teramo › San Salvo | 202 | 8 | 30 | |
06.05 | 116 | 117 | | S1 (ITT)Stage 1 (ITT) - Fossacesia Marina › Ortona | 19.6 | | | |
09.04 | DNF | | | Paris-Roubaix (1.UWT) | 256.6 | | | more |
29.03 | 88 | | | Dwars door Vlaanderen - A travers la Flandre ME (1.UWT) | 183.7 | 5 | | more |
26.03 | DNF | | | Gent-Wevelgem in Flanders Fields ME (1.UWT) | 260.9 | | | more |
24.03 | DNF | | | E3 Saxo Classic (1.UWT) | 204.1 | | | more |
18.03 | 87 | | | Milano-Sanremo (1.UWT) | 294 | 5 | | more |
06.03 › 12.036-12/3 | | | | Tirreno-Adriatico (2.UWT) | | | | more |
| 23 | | | Youth classificationYouth classification | | | | |
| 92 | | | General classificationGeneral classification | | 5 | | |
12.03 | 13 | | | S7Stage 7 - San Benedetto del Tronto › San Benedetto del Tronto | 154 | | | |
11.03 | 97 | 98 | | S6Stage 6 - Osimo Stazione › Osimo | 193 | | | |
10.03 | 66 | 98 | | S5Stage 5 - Morro d'Oro › Sassotetto - Fonte Lardina | 165.6 | | | |
09.03 | 135 | 124 | | S4Stage 4 - Greccio › Tortoreto | 218 | | | |
08.03 | 22 | 76 | | S3Stage 3 - Follonica › Foligno | 216 | | | |
07.03 | 17 | 108 | | S2Stage 2 - Camaiore › Follonica | 210 | | | |
06.03 | 120 | 120 | | S1 (ITT)Stage 1 (ITT) - Lido di Camaiore › Lido di Camaiore | 11.5 | | | |
26.02 | DNF | | | Kuurne-Brussel-Kuurne (1.Pro) | 193.1 | | | more |
25.02 | 17 | | | Omloop Het Nieuwsblad ME (1.UWT) | 207.3 | 18 | 20 | more |
15.02 › 19.0215-19/2 | | | | Volta ao Algarve em Bicicleta (2.Pro) | | | | more |
| 69 | | | General classificationGeneral classification | | | | |
19.02 | 58 | | | S5 (ITT)Stage 5 (ITT) - Lagoa › Lagoa | 24.4 | | | |
18.02 | 79 | 74 | | S4Stage 4 - Albufeira › Alto do Malhão | 177.9 | | | |
17.02 | 106 | 75 | | S3Stage 3 - Faro › Tavira | 203.1 | | | |
16.02 | 84 | 82 | | S2Stage 2 - Sagres › Alto da Fóia | 186.3 | | | |
15.02 | 49 | 49 | | S1Stage 1 - Portimão › Lagos | 200.2 | | | |
01.02 › 05.021-5/2 | | | | Etoile de Bessèges - Tour du Gard (2.1) | | | | more |
04.02 | DNF | | | S4Stage 4 - Saint-Christol-Lèz-Alès › Le Mont Bouquet | 147.5 | | | |
03.02 | 67 | 61 | | S3Stage 3 - Bessèges › Bessèges | 169.71 | | | |
01.02 | 86 | 86 | | S1Stage 1 - Bellegarde › Bellegarde | 162.18 | | | |
29.01 | DNS | | | Grand Prix Cycliste de Marseille La Marseillaise (1.1) | 167.8 | | | more |