29.06 | DNF | | | National Championships Great Britain ME - Road Race (NC) | 187 | | | more |
27.06 | 6 | | | National Championships Great Britain ME - Criterium (NAT) | | 28 | | more |
15.06 › 22.0615-22/6 | | | | Giro d'Italia Next Gen (2.2U) | | | | more |
| 117 | | | General classificationGeneral classification | | | | |
22.06 | 77 | | | S8Stage 8 - Pinerolo › Pinerolo | 127 | | | |
21.06 | 107 | 125 | | S7Stage 7 - Bra › Prato Nevoso | 163 | | | |
20.06 | 133 | 125 | | S6Stage 6 - Ovada › Acqui Terme | 154 | | | |
19.06 | 125 | 121 | | S5Stage 5 - Fiorenzuola d'Arda › Gavi | 153 | | | |
18.06 | 20 | 120 | | S4Stage 4 - Manerbio › Salsomaggiore Terme | 134 | | | |
17.06 | 140 | 127 | | S3Stage 3 - Albese Con Cassano › Passo del Maniva | 144 | | | |
16.06 | 118 | 115 | | S2Stage 2 - Rho Fiera Milano › Cantù | 146 | | | |
15.06 | 66 | 66 | | S1 (ITT)Stage 1 (ITT) - Rho › Rho | 8.4 | | | |
29.05 › 01.0629-1/5 | | | | Course de la Paix Grand Prix Jeseníky (2.Ncup) Great Britain | | | | more |
| 9 | | | Points classificationPoints classification | | | | |
| 79 | | | General classificationGeneral classification | | | | |
01.06 | 1 | | | S4Stage 4 - Jeseník › Šumperk | 118.4 | 5 | 12 | |
31.05 | 91 | 87 | | S3Stage 3 - Zábřeh › Dlouhé stráně | 131 | | | |
30.05 | 97 | 73 | | S2Stage 2 - Uničov › Rýmařov | 148.7 | | | |
29.05 | 49 | 49 | | S1Stage 1 - Krnov › Šternberk | 167.7 | | | |
11.05 | 19 | | | Gent-Wevelgem / Kattekoers-Ieper (1.2U) | 188.5 | | | more |
25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste (2.2) | | | | more |
| 1 | | | Points classificationPoints classification | | | | |
| 7 | | | General classificationGeneral classification | | 4 | 5 | |
01.05 | 1 | | | S7Stage 7 - Landébia › Plancoët | 159.2 | 5 | 7 | |
30.04 | 1 | 8 | | S6Stage 6 - Missillac › Le Pertre | 179.8 | 5 | 7 | |
29.04 | 16 | 14 | | S5Stage 5 - Erdeven › Guenrouët | 164.1 | | | |
28.04 | 19 | 19 | | S4Stage 4 - Plonéour-Lanvern › Landévant | 204.6 | | | |
27.04 | 21 | 2 | | S3Stage 3 - Loudéac › Plonéour-Lanvern | 212 | | | |
26.04 | 1 | 1 | | S2Stage 2 - La Gouesnière › Le Cambout | 182.2 | 5 | 7 +1 | |
25.04 | 9 | 10 | | S1Stage 1 - Hirel › Le Fresnais | 143.2 | | | |
13.04 | 32 | | | Paris-Roubaix Espoirs (1.2U) | 167 | | | more |
08.04 › 11.048-11/4 | | | | Région Pays de la Loire Tour (2.1) EF Education - EasyPost | | | | more |
| 7 | | | Youth classificationYouth classification | | | | |
| 8 | | | Points classificationPoints classification | | | | |
| 44 | | | General classificationGeneral classification | | | | |
11.04 | 57 | | | S4Stage 4 - Sillé-le-Guillaume › Le Mans | 186.5 | | | |
10.04 | 73 | 46 | | S3Stage 3 - Tiercé › Hambers (La Butte de Montaigu) | 165.9 | | | |
09.04 | 3 | 6 | | S2Stage 2 - Cugand-la-Bernardière › Beaupréau-en-Mauges | 158.5 | 7 | 3 | |
08.04 | 5 | 9 | | S1Stage 1 - Machecoul-Saint-Même › La Baule-Escoublac | 208.4 | 4 | | |
26.03 › 30.0326-30/3 | | | | Volta ao Alentejo (2.2) | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 1 | | | Points classificationPoints classification | | | | |
| 1 | | | General classificationGeneral classification | | 25 | 40 | |
30.03 | 2 | | | S5Stage 5 - Estremoz › Évora | 151.5 | 2 | 3 | |
29.03 | 8 | 1 | | S4Stage 4 - Monforte › Castelo de Vide | 147.7 | | +1 | |
28.03 | 1 | 1 | | S3Stage 3 - Carvalhal › Arraiolos | 181.5 | 5 | 7 +1 | |
27.03 | 2 | 1 | | S2Stage 2 - Castro Verde › Grândola | 171.5 | 2 | 3 +1 | |
26.03 | 1 | 1 | | S1Stage 1 - Beja › Moura | 166.6 | 5 | 7 +1 | |
13.03 › 16.0313-16/3 | | | | Tour of Rhodes Powered by Rodos Palace (2.2) | | | | more |
| 26 | | | Youth classificationYouth classification | | | | |
| 49 | | | General classificationGeneral classification | | | | |
16.03 | 106 | | | S3Stage 3 - Kremasti › Kremasti | 155.9 | | | |
15.03 | 64 | 29 | | S2Stage 2 - Rhodes › Kalithies | 158.5 | | | |
14.03 | 29 | 33 | | S1Stage 1 - Rhodes › Soroni | 148.5 | | | |
13.03 | 20 | 20 | | ProloguePrologue - Rhodes › Rhodes | 5.1 | | | |
08.03 | 19 | | | Rhodes GP (1.2) | 179.7 | | | more |
01.03 › 02.031-2/3 | | | | Visit South Aegean Islands (2.2) | | | | more |
| 25 | | | Youth classificationYouth classification | | | | |
| 43 | | | General classificationGeneral classification | | | | |
02.03 | 45 | | | S2Stage 2 - Rhodes › Salakos | 160.9 | | | |
01.03 | 59 | 59 | | S1Stage 1 - Rhodes › Koskinou | 180.2 | | | |