15.10 | DNF | | | Japan Cup Cycle Road Race (1.Pro) | 133.9 | | | more |
14.10 | 87 | | | Japan Cup Criterium (NAT) | 33.75 | | | more |
23.09 » 30.09 | | | | PETRONAS Le Tour de Langkawi (2.Pro) | | | | more |
| 2 | | | Mountains classification | | | | more |
| 16 | | | Points classification | | | | more |
| 1 | | | General classification | | 150 | 200 | more |
30.09 | 62 | | | Stage 8 - Setia Alam › Kuala Lumpur | 156.5 | | | more |
29.09 | 29 | 1 | | Stage 7 - Muar › Seremban | 123.8 | | +5 | more |
28.09 | 55 | 1 | | Stage 6 - Karak › Melaka | 174.5 | | +5 | more |
27.09 | 1 | 1 | | Stage 5 - Slim River › Genting Highlands | 126.4 | 30 | 20 +5 | more |
26.09 | 94 | 3 | | Stage 4 - Bukit Mertajam › Meru Raya | 140.2 | | | more |
25.09 | 49 | 3 | | Stage 3 - Jeli › Baling 160k | 183.1 | | | more |
24.09 | 81 | 5 | | Stage 2 - Kuala Terengganu › Kota Bharu | 186.2 | | | more |
23.09 | 84 | 8 | | Stage 1 - Kerteh › Kuala Terengganu | 187.4 | | | more |
14.09 | DNF | | | Gran Premio città di Peccioli - Coppa Sabatini (1.Pro) | 198.9 | | | more |
13.09 | DNF | | | Giro della Toscana - Memorial Alfredo Martini (1.1) | 191.55 | | | more |
29.07 | DNF | | | Donostia San Sebastian Klasikoa (1.UWT) | 230.3 | | | more |
25.07 | 32 | | | Prueba Villafranca - Ordiziako Klasika (1.1) | 165.9 | | | more |
25.06 | DNF | | | National Championships Great Britain ME - Road Race (NC) | 189 | | | more |
21.06 | DNS | | | National Championships Great Britain ME - ITT (NC) | 41.1 | | | more |
15.06 » 18.06 | | | | La Route d'Occitanie - La Dépêche du Midi (2.1) | | | | more |
| 18 | | | Youth classification | | | | more |
| 6 | | | Mountains classification | | | | more |
| 7 | | | Points classification | | | | more |
| 39 | | | General classification | | | | more |
18.06 | 1 | | | Stage 4 - Saint-Gaudens › Saint-Girons | 164.7 | 20 | 14 | more |
17.06 | 53 | 46 | | Stage 3 - Gimont › Nistos-Cap-Nestès | 189 | | | more |
16.06 | 83 | 53 | | Stage 2 - Cazouls-lès-Béziers › Graulhet | 182 | | | more |
15.06 | 32 | 33 | | Stage 1 - Narbonne › Gruissan | 184.3 | | | more |
13.06 | 3 | | | CIC - Mont Ventoux (1.Pro) | 98.3 | 60 | 125 | more |
25.04 » 30.04 | | | | Tour de Romandie (2.UWT) | | | | more |
30.04 | DNS | | | Stage 5 - Vufflens-la-Ville › Genève | 170.8 | | | more |
29.04 | 13 | 12 | | Stage 4 - Sion › Thyon 2000 | 161.6 | | | more |
28.04 | 29 | 24 | | Stage 3 (ITT) - Châtel-Saint-Denis › Châtel-Saint-Denis | 18.75 | | | more |
27.04 | 55 | 25 | | Stage 2 - Morteau › La Chaux-de-Fonds | 162.7 | | | more |
26.04 | 99 | 38 | | Stage 1 - Crissier › Vallée de Joux | 170.9 | | | more |
25.04 | 47 | 47 | | Prologue - Port-Valais › Port-Valais | 6.82 | | | more |
17.04 » 21.04 | | | | Tour of the Alps (2.Pro) | | | | more |
| 6 | | | Mountains classification | | | | more |
| 4 | | | Points classification | | | | more |
| 47 | | | General classification | | | | more |
21.04 | 1 | | | Stage 5 - Cavalese › Brunico 82k | 144.5 | 30 | 20 | more |
20.04 | 86 | 63 | | Stage 4 - Rovereto › Predazzo 108k | 152.9 | | | more |
19.04 | 85 | 55 | | Stage 3 - Ritten › Brentonico San Valentino | 162.5 | | | more |
18.04 | 59 | 46 | | Stage 2 - Reith im Alpbachtal › Ritten 146k | 165.2 | | | more |
17.04 | 20 | 20 | | Stage 1 - Rattenberg › Alpbach | 127.5 | | | more |
12.04 | DNF | | | De Brabantse Pijl - La Flèche Brabançonne ME (1.Pro) | 205.1 | | | more |
20.03 » 26.03 | | | | Volta Ciclista a Catalunya (2.UWT) | | | | more |
| 22 | | | Mountains classification | | | | more |
| 10 | | | Points classification | | | | more |
| 78 | | | General classification | | 5 | | more |
26.03 | 100 | | | Stage 7 - Barcelona › Barcelona 88k | 135.8 | | | more |
25.03 | 118 | 84 | | Stage 6 - Martorell › Molins de Rei | 174.1 | | | more |
24.03 | 22 | 74 | | Stage 5 - Tortosa › Lo Port | 176.6 | | | more |
23.03 | 131 | 103 | | Stage 4 - Llívia › Sabadell | 188.2 | | | more |
22.03 | 154 | 104 | | Stage 3 - Olost › La Molina (Alp) | 180.6 | | | more |
21.03 | 80 | 72 | | Stage 2 - Mataró › Vallter 151k | 165.4 | | | more |
20.03 | 70 | 70 | | Stage 1 - Sant Feliu de Guíxols › Sant Feliu de Guíxols | 164.6 | | | more |
20.02 » 26.02 | | | | UAE Tour (2.UWT) | | | | more |
| 22 | | | Youth classification | | | | more |
| 52 | | | General classification | | 5 | 2 | more |
26.02 | 30 | | | Stage 7 - Hazza Bin Zayed Stadium › Jebel Hafeet | 153 | | | more |
25.02 | 98 | 63 | | Stage 6 - Warner Bros. World Abu Dhabi › Abu Dhabi Breakwater | 166 | | | more |
24.02 | 130 | 66 | | Stage 5 - Al Marjan Island › Umm al Quwain | 170 | | | more |
23.02 | 105 | 59 | | Stage 4 - Al Shindagha › Dubai Harbour | 174 | | | more |
22.02 | 22 | 59 | | Stage 3 - Umbrella Beach Al Fujairah › Jebel Jais | 185 | | | more |
21.02 | 2 | 135 | | Stage 2 (TTT) - Khalifa Port › Khalifa Port | 17.3 | 16 | 3.57 | more |
20.02 | 139 | 139 | | Stage 1 - Al Dhafra Castle › Al Mirfa | 151 | | | more |
01.02 » 05.02 | | | | Etoile de Bessèges - Tour du Gard (2.1) | | | | more |
| 38 | | | Points classification | | | | more |
| 111 | | | General classification | | | | more |
05.02 | 15 | | | Stage 5 (ITT) - Alès › Alès | 10.66 | | | more |
04.02 | 115 | 119 | | Stage 4 - Saint-Christol-Lèz-Alès › Le Mont Bouquet | 147.5 | | | more |
03.02 | 124 | 125 | | Stage 3 - Bessèges › Bessèges | 169.71 | | | more |
02.02 | NR | 124 | | Stage 2 - Bagard › Aubais | 169.63 147 | | | more |
01.02 | 124 | 124 | | Stage 1 - Bellegarde › Bellegarde | 162.18 | | | more |
29.01 | 77 | | | Grand Prix Cycliste de Marseille La Marseillaise (1.1) | 167.8 | | | more |
26.01 | 84 | | | Trofeo Ses Salines - Alcudia (1.1) | 158.6 | | | more |