23.09 | DNF | | | World Championships ME - Road Race (WC) Great Britain | 267.4 | | | more |
09.09 › 16.099-16/9 | | | | Tour of Britain (2.1) | | | | more |
14.09 | DNS | | | S6Stage 6 - Welshpool › Caerphilly | 189.6 | | | |
13.09 | 63 | 41 | | S5Stage 5 - Stoke-on-Trent › Stoke-on-Trent | 147 | | | |
12.09 | 20 | 17 | | S4Stage 4 - Carlisle › Blackpool | 156 | | | |
11.09 | 43 | 23 | | S3Stage 3 - Jedburgh › Dumfries | 152.6 | | | |
10.09 | 33 | 23 | | S2Stage 2 - Nottingham › Knowsley Safari Park | 180.7 | | | |
09.09 | 23 | 24 | | S1Stage 1 - Ipswich › Norfolk | 203 | | | |
01.08 | 1 | | | Olympic Games - ITT (Olympics) Great Britain | 44 | 300 | 100 | more |
28.07 | 103 | | | Olympic Games Road Race (Olympics) Great Britain | 250 | 15 | | more |
30.06 › 22.0730-22/6 | | | | Tour de France (WT) | | | | more |
| 15 | | | Mountains classificationMountains classification | | | | |
| 6 | | | Points classificationPoints classification | | | | |
| 1 | | | General classificationGeneral classification | | 500 | 200 | |
22.07 | 54 | | | S20Stage 20 - Rambouillet › Paris | 120 | | | |
21.07 | 1 | 1 | | S19 (ITT)Stage 19 (ITT) - Bonneval › Chartres | 53.5 | 100 | 20 | |
20.07 | 19 | 1 | | S18Stage 18 - Blagnac › Brive-la-Gaillarde | 222.5 | | | |
19.07 | 3 | 1 | | S17Stage 17 - Bagnères-de-Luchon › Peyragudes | 143.5 | 50 | 6 | |
18.07 | 12 | 1 | | S16Stage 16 - Pau › Bagnères-de-Luchon | 197 | 6 | | |
16.07 | 22 | 1 | | S15Stage 15 - Samatan › Pau | 158.5 | | | |
15.07 | 15 | 1 | | S14Stage 14 - Limoux › Foix | 191 | 1 | | |
14.07 | 12 | 1 | | S13Stage 13 - Saint-Paul-Trois-Châteaux › Cap d'Agde | 217 | 6 | | |
13.07 | 12 | 1 | | S12Stage 12 - Saint-Jean-de-Maurienne › Annonay Davézieux | 226 | 6 | | |
12.07 | 6 | 1 | | S11Stage 11 - Albertville › La Toussuire - Les Sybelles | 148 | 26 | | |
11.07 | 13 | 1 | | S10Stage 10 - Macon › Bellegarde-sur-valserine | 194.5 | 4 | | |
09.07 | 1 | 1 | | S9 (ITT)Stage 9 (ITT) - Arc-et-senans › Besancon | 41.5 | 100 | 20 | |
08.07 | 4 | 1 | | S8Stage 8 - Belfort › Porrentruy | 157.5 | 40 | 4 | |
07.07 | 3 | 1 | | S7Stage 7 - Tomblaine › La Planche Des Belles Filles | 199 | 50 | 6 | |
06.07 | 21 | 2 | | S6Stage 6 - Epernay › Metz | 205 | | | |
05.07 | 18 | 2 | | S5Stage 5 - Rouen › Saint-quentin | 196.5 | | | |
04.07 | 154 | 2 | | S4Stage 4 - Abbeville › Rouen | 214.5 | | | |
03.07 | 53 | 2 | | S3Stage 3 - Orchies › Boulogne-sur-mer | 197 | | | |
02.07 | 68 | 2 | | S2Stage 2 - Vise › Tournai | 207.5 | | | |
01.07 | 16 | 2 | | S1Stage 1 - Liege › Seraing | 198 | | | |
30.06 | 2 | 2 | | ProloguePrologue - Liège › Liège | 6.4 | 70 | 10 | |
03.06 › 10.063-10/6 | | | | Critérium du Dauphiné (WT) | | | | more |
| 18 | | | Mountains classificationMountains classification | | | | |
| 4 | | | Points classificationPoints classification | | | | |
| 1 | | | General classificationGeneral classification | | 250 | 100 | |
10.06 | 19 | | | S7Stage 7 - Morzine › Châtel | 124.5 | | | |
09.06 | 4 | 1 | | S6Stage 6 - Saint-Alban-Leysse › Morzine | 167.5 | 13 | 1 | |
08.06 | 27 | 1 | | S5Stage 5 - Saint-Trivier-sur-Moignans › Rumilly | 186.5 | | | |
07.06 | 1 | 1 | | S4 (ITT)Stage 4 (ITT) - Villié-Morgon › Bourg-en-Bresse | 53.5 | 50 | 6 | |
06.06 | 46 | 1 | | S3Stage 3 - Givors › La Clayette | 167 | | | |
05.06 | 9 | 1 | | S2Stage 2 - Lamastre › Saint-Félicien | 160 | 2 | | |
04.06 | 61 | 1 | | S1Stage 1 - Seyssins › Saint-Vallier | 187 | | | |
03.06 | 2 | 2 | | ProloguePrologue - Grenoble › Grenoble | 5.7 | 30 | 4 | |
24.04 › 29.0424-29/4 | | | | Tour de Romandie (WT) | | | | more |
| 18 | | | Mountains classificationMountains classification | | | | |
| 1 | | | General classificationGeneral classification | | 250 | 100 | |
29.04 | 1 | 1 | | S5 (ITT)Stage 5 (ITT) - Crans-Montana › Crans-Montana | 16.5 | 50 | 6 | |
28.04 | 18 | 2 | | S4Stage 4 - Bulle › Sion | 184 | | | |
27.04 | 22 | 1 | | S3Stage 3 - La Neuveville › Charmey | 157.6 | | | |
26.04 | 42 | 1 | | S2Stage 2 - Montbéliard › Moutier | 149.1 | | | |
25.04 | 1 | 1 | | S1Stage 1 - Morges › La Chaux-de-Fonds | 184.5 | 50 | 6 | |
24.04 | 11 | 11 | | ProloguePrologue - Lausanne › Lausanne | 3.34 | | | |
19.03 › 25.0319-25/3 | | | | Volta Ciclista a Catalunya (WT) | | | | more |
21.03 | DNF | | | S3Stage 3 - La Vall d'en Bas › Port Ainé | 154.2 | | | |
20.03 | 16 | 31 | | S2Stage 2 - Girona › Girona | 161 | | | |
19.03 | 165 | 165 | | S1Stage 1 - Calella › Calella | 138.9 | | | |
04.03 › 11.034-11/3 | | | | Paris - Nice (2.UWT) | | | | more |
| 8 | | | Mountains classificationMountains classification | | | | |
| 1 | | | Points classificationPoints classification | | | | |
| 1 | | | General classificationGeneral classification | | 250 | 100 | |
11.03 | 1 | 1 | | S8 (ITT)Stage 8 (ITT) - Nice › Col d'Èze | 9.6 | 50 | 6 | |
10.03 | 31 | 1 | | S7Stage 7 - Sisteron › Nice | 219.5 | | | |
09.03 | 41 | 1 | | S6Stage 6 - Suze-la-Rousse › Sisteron | 176.5 | | | |
08.03 | 3 | 1 | | S5Stage 5 - Onet-le-Château › Mende | 178 | 18 | 2 | |
07.03 | 10 | 1 | | S4Stage 4 - Brive-la-Gaillarde › Rodez | 183 | 1 | | |
06.03 | 20 | 1 | | S3Stage 3 - Vierzon › Lac de Vassivière | 194 | | | |
05.03 | 11 | 1 | | S2Stage 2 - Mantes-la-Jolie › Orléans | 185 | | | |
04.03 | 2 | 2 | | S1 (ITT)Stage 1 (ITT) - Dampierre-en-Yvelines › Saint-Rémy-lès-Chevreuse | 9.4 | 30 | 4 | |
15.02 › 19.0215-19/2 | | | | Volta ao Algarve (2.1) | | | | more |
| 8 | | | Mountains classificationMountains classification | | | | |
| 3 | | | General classificationGeneral classification | | 50 | 32 | |
19.02 | 1 | 3 | | S5 (ITT)Stage 5 (ITT) - Lagoa › Portimão | 25.8 | 20 | 16 | |
18.02 | 47 | 12 | | S4Stage 4 - Vilamoura › Tavira | 186.3 | | | |
17.02 | 10 | 12 | | S3Stage 3 - Castro Marim › Alto do Malhão (Loulé) | 194.6 | | | |
16.02 | 111 | 98 | | S2Stage 2 - Faro › Lagoa | 187.5 | | | |
15.02 | 77 | 76 | | S1Stage 1 - Dunas Douradas (Loul › Albufeira | 151 | | | |