12.10 | 57 | | | Il Lombardia (1.UWT) | 255 | 5 | 5 | more |
10.10 | 64 | | | Gran Piemonte (1.Pro) | 182 | | | more |
06.10 | 6 | | | UCI Gravel World Championships (GRV) | 182 | | | more |
22.09 | 1 | | | UCI Gravel World Series ME - Graean Cymru (GRV) | 113 | | | more |
15.09 | 78 | | | Grand Prix Cycliste de Montréal (1.UWT) | 209.1 | 5 | | more |
13.09 | DNF | | | Grand Prix Cycliste de Québec (1.UWT) | 201.6 | | | more |
03.09 › 08.093-8/9 | | | | Tour of Britain (2.Pro) | | | | more |
| 15 | | | Mountains classificationMountains classification | | | | |
| 26 | | | Points classificationPoints classification | | | | |
| 22 | | | General classificationGeneral classification | | 4 | 5 | |
08.09 | 23 | | | S6Stage 6 - Lowestoft › Felixstowe | 158.4 | | | |
07.09 | 39 | 27 | | S5Stage 5 - Northampton › Northampton 145k | 149.6 | | | |
06.09 | 77 | 30 | | S4Stage 4 - Derby › Newark-on-Trent | 138.5 | | | |
05.09 | 21 | 29 | | S3Stage 3 - Sheffield › Barnsley | 166 | | | |
04.09 | 45 | 43 | | S2Stage 2 - Darlington › Redcar | 152.1 | | | |
03.09 | 62 | 62 | | S1Stage 1 - Kelso › Kelso | 181.9 | | | |
31.08 | 1 | | | National Championships Great Britain - Gravel (GRV) | 87.6 | | | more |
25.08 | 95 | | | Bretagne Classic - Ouest-France (1.UWT) | 259.8 | 5 | | more |
12.08 › 18.0812-18/8 | | | | Tour de Pologne (2.UWT) | | | | more |
| 63 | | | General classificationGeneral classification | | 5 | | |
18.08 | 60 | | | S7Stage 7 - Wieliczka › Kraków | 142.1 | | | |
17.08 | 62 | 63 | | S6Stage 6 - Wadowice › Bukovina Resort | 183.2 | | | |
16.08 | 111 | 62 | | S5Stage 5 - Katowice › Katowice | 187.6 | | | |
15.08 | 64 | 65 | | S4Stage 4 - Kudowa-Zdrój › Prudnik | 195.3 | | | |
14.08 | 74 | 67 | | S3Stage 3 - Wałbrzych › Duszniki-Zdrój | 156.5 | | | |
13.08 | 30 | 59 | | S2 (ITT)Stage 2 (ITT) - Mysłakowice › Karpacz | 15.4 | | | |
12.08 | 68 | 68 | | S1Stage 1 - Wrocław › Karpacz | 156.1 | | | |
10.08 | DNF | | | Donostia San Sebastian Klasikoa (1.UWT) | 236 | | | more |
25.07 › 28.0725-28/7 | | | | Czech Tour (2.1) | | | | more |
| 50 | | | General classificationGeneral classification | | | | |
28.07 | 27 | | | S4Stage 4 - Šumperk › Šternberk | 131.8 | | | |
27.07 | 64 | 61 | | S3Stage 3 - Moravská Třebová › Dlouhé stráně | 134.5 | | | |
26.07 | 57 | 58 | | S2Stage 2 - Zlín › Pustevny | 172.7 | | | |
25.07 | 57 | 58 | | S1Stage 1 - Prostějov › Ostrava | 151.2 | | | |
23.06 | 4 | | | National Championships Great Britain ME - Road Race (NC) | 182 | 4 | 50 | more |
19.06 | 5 | | | National Championships Great Britain ME - ITT (NC) | 30 | | 10 | more |
12.06 › 16.0612-16/6 | | | | Tour of Slovenia (2.Pro) | | | | more |
| 58 | | | Points classificationPoints classification | | | | |
| 59 | | | General classificationGeneral classification | | | | |
16.06 | 68 | | | S5Stage 5 - Šentjernej › Novo mesto | 156.9 | | | |
15.06 | 51 | 56 | | S4Stage 4 - Škofljica › Krvavec | 147.2 | | | |
14.06 | 78 | 69 | | S3Stage 3 - Ljubljana › Nova Gorica | 160.5 | | | |
13.06 | 80 | 84 | | S2Stage 2 - Žalec › Rogaška Slatina 59k | 177.9 | | | |
12.06 | 138 | 138 | | S1Stage 1 - Murska Sobota › Ormož | 204.5 | | | |
04.05 › 26.054-26/5 | | | | Giro d'Italia (2.UWT) | | | | more |
| 83 | | | General classificationGeneral classification | | 20 | | |
26.05 | 110 | | | S21Stage 21 - Rome › Rome | 125 | | | |
25.05 | 57 | 83 | | S20Stage 20 - Alpago › Bassano del Grappa | 184 | | | |
24.05 | 63 | 84 | | S19Stage 19 - Mortegliano › Sappada | 157 | | | |
23.05 | 139 | 91 | | S18Stage 18 - Fiera di Primiero › Padova | 178 | | | |
22.05 | 102 | 90 | | S17Stage 17 - Selva di Val Gardena › Passo Brocon | 159 | | | |
21.05 | 58 | 84 | | S16Stage 16 - Laas › Santa Cristina Valgardena (Monte Pana) | 118.4 | | | |
19.05 | 70 | 87 | | S15Stage 15 - Manerba del Garda › Livigno (Mottolino) | 222 | | | |
18.05 | 87 | 93 | | S14 (ITT)Stage 14 (ITT) - Castiglione delle Stiviere › Desenzano del Garda | 31.2 | | | |
17.05 | 145 | 92 | | S13Stage 13 - Riccione › Cento | 179 | | | |
16.05 | 66 | 92 | | S12Stage 12 - Martinsicuro › Fano | 193 | | | |
15.05 | 50 | 93 | | S11Stage 11 - Foiano di Val Fortore › Francavilla al Mare | 207 | | | |
14.05 | 77 | 95 | | S10Stage 10 - Pompei › Bocca della Selva | 142 | | | |
12.05 | 111 | 104 | | S9Stage 9 - Avezzano › Naples | 214 | | | |
11.05 | 59 | 95 | | S8Stage 8 - Spoleto › Prati di Tivo | 152 | | | |
10.05 | 74 | 123 | | S7 (ITT)Stage 7 (ITT) - Foligno › Perugia | 40.6 | | | |
09.05 | 88 | 128 | | S6Stage 6 - Viareggio › Rapolano Terme | 180 | | | |
08.05 | 142 | 145 | | S5Stage 5 - Genova › Lucca | 178 | | | |
07.05 | 142 | 129 | | S4Stage 4 - Acqui Terme › Andora | 190 | | | |
06.05 | 128 | 119 | | S3Stage 3 - Novara › Fossano | 166.3 | | | |
05.05 | 121 | 120 | | S2Stage 2 - San Francesco al Campo › Santuario di Oropa | 161 | | | |
04.05 | 106 | 106 | | S1Stage 1 - Venaria Reale › Torino | 140 | | | |
14.04 | DNF | | | Amstel Gold Race (1.UWT) | 253.6 | | | more |
07.04 | 48 | | | Paris-Roubaix (1.UWT) | 259.7 | 5 | 15 | more |
31.03 | 66 | | | Ronde van Vlaanderen - Tour des Flandres ME (1.UWT) | 270.8 | 5 | | more |
27.03 | 58 | | | Dwars door Vlaanderen - A travers la Flandre ME (1.UWT) | 188.6 | 5 | 1 | more |
24.03 | DNF | | | Gent-Wevelgem in Flanders Fields ME (1.UWT) | 253.1 | | | more |
22.03 | 41 | | | E3 Saxo Classic (1.UWT) | 207.6 | 5 | 8 | more |
04.03 › 10.034-10/3 | | | | Tirreno-Adriatico (2.UWT) | | | | more |
| 73 | | | General classificationGeneral classification | | 5 | | |
10.03 | 89 | | | S7Stage 7 - San Benedetto del Tronto › San Benedetto del Tronto | 154 | | | |
09.03 | 86 | 79 | | S6Stage 6 - Sassoferrato › Cagli (Monte Petrano) | 180 | | | |
08.03 | 91 | 78 | | S5Stage 5 - Torricella Sicura › Valle Castellana | 144 | | | |
07.03 | 135 | 113 | | S4Stage 4 - Arrone › Giulianova | 207 | | | |
06.03 | 120 | 108 | | S3Stage 3 - Volterra › Gualdo Tadino | 225 | | | |
05.03 | 65 | 45 | | S2Stage 2 - Camaiore › Follonica | 198 | | | |
04.03 | 45 | 45 | | S1 (ITT)Stage 1 (ITT) - Lido di Camaiore › Lido di Camaiore | 10 | | | |
25.02 | 63 | | | Kuurne-Brussel-Kuurne (1.Pro) | 196.4 | | | more |
24.02 | 50 | | | Omloop Het Nieuwsblad ME (1.UWT) 80k | 202.2 | 5 | 5 | more |