| 27.09 › 29.0927-29/9 | | | | Tour d'Eure-et-Loir (2.2) | | | | | more |
| 27.09 | DNF | | | S1Stage 1 - Le Coudray › Mignières | | 146.9 | | | |
| 03.09 › 08.093-8/9 | | | | Tour of Britain (2.Pro) | | | | | more |
| 24 | | | Youth classificationYouth classification | | | | | |
| 68 | | | General classificationGeneral classification | | | | | |
| 08.09 | 17 | | | S6Stage 6 - Lowestoft › Felixstowe | | 158.4 | | | |
| 07.09 | 81 | 76 | | S5Stage 5 - Northampton › Northampton | | 149.6 | | | |
| 06.09 | 48 | 76 | | S4Stage 4 - Derby › Newark-on-Trent | | 138.5 | | | |
| 05.09 | 64 | 77 | | S3Stage 3 - Sheffield › Barnsley | | 166 | | | |
| 04.09 | 87 | 86 | | S2Stage 2 - Darlington › Redcar | | 152.1 | | | |
| 03.09 | 81 | 81 | | S1Stage 1 - Kelso › Kelso | | 181.9 | | | |
| 25.08 | 45 | | | Grand Prix de Plouay (1.2) | | 186.9 | | | more |
| 24.07 › 28.0724-28/7 | | | | Tour Alsace (2.2) | | | | | more |
| 51 | | | Youth classificationYouth classification | | | | | |
| 74 | | | General classificationGeneral classification | | | | | |
| 28.07 | 57 | | | S5Stage 5 - Europa-Park › Sélestat | | 148.8 | | | |
| 27.07 | 72 | 75 | | S4Stage 4 - L'Isle-sur-le-Doubs › Valentigney | | 176 | | | |
| 26.07 | 82 | 73 | | S3Stage 3 - Vesoul › La Planche des Belles Filles | | 132.6 | | | |
| 25.07 | 71 | 73 | | S2Stage 2 - Riedisheim › Ferrette | | 154.9 | | | |
| 24.07 | 33 | 147 | | S1 (TTT)Stage 1 (TTT) - Sausheim › Sausheim | | 4.3 | | | |
| 23.06 | 39 | | | National Championships Great Britain ME - Road Race (NC) | | 182 | | | more |
| 30.05 › 02.0630-2/5 | | | | Ronde de l'Oise (2.2) | | | | | more |
| 10 | | | Youth classificationYouth classification | | | | | |
| 28 | | | Points classificationPoints classification | | | | | |
| 17 | | | General classificationGeneral classification | | | | | |
| 02.06 | 12 | | | S4Stage 4 - Beauvais › Beauvais | | 180.6 | | | |
| 01.06 | 18 | 18 | | S3Stage 3 - Bresles › Ressons-sur-Matz | | 184.2 | | | |
| 31.05 | 22 | 22 | | S2Stage 2 - Liancourt › Ribécourt-Dreslincourt | | 190.5 | | | |
| 30.05 | 36 | 36 | | S1Stage 1 - Crèvecœur-le-Grand › La Neuville-en-Hez | | 140.1 | | | |
| 15.05 › 19.0515-19/5 | | | | Orlen Nations Grand Prix (2.Ncup) Great Britain | | | | | more |
| 104 | | | General classificationGeneral classification | | | | | |
| 19.05 | 110 | | | S5Stage 5 - Lesko, Powiat Leski › Hotel Arłamów | | 149 | | | |
| 18.05 | 123 | 106 | | S4Stage 4 - Bukovina Resort › Jasło | | 175 | | | |
| 17.05 | 109 | 95 | | S3Stage 3 - Tvrdošín › Štrbské Pleso | | 121 | | | |
| 16.05 | 130 | 102 | | S2Stage 2 - Přerov › Kohútka | | 110 | | | |
| 15.05 | 76 | 76 | | S1Stage 1 - Prostějov › Bouzov | | 135 | | | |
| 09.05 | 63 | | | Circuit de Wallonie (1.1) | | 183.9 | | | more |
| 05.05 | 79 | | | Tro-Bro Léon (1.Pro) Groupama - FDJ | | 203.6 | | | more |
| 25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste (2.2) | | | | | more |
| 24 | | | Youth classificationYouth classification | | | | | |
| 61 | | | General classificationGeneral classification | | | | | |
| 01.05 | 62 | | | S7Stage 7 - Le Hinglé › Dinan | | 159.3 | | | |
| 30.04 | 47 | 62 | | S6Stage 6 - Saint-Onen-la-Chapelle › Louvigné-du-Désert | | 192.5 | | -5 | |
| 29.04 | 43 | 68 | | S5Stage 5 - La Gacilly › Saint-Méen-le-Grand | | 203.4 | | | |
| 28.04 | 101 | 71 | | S4Stage 4 - Le Croisic › La Gacilly | | 171.5 | | | |
| 27.04 | 72 | 43 | | S3Stage 3 - Pontivy › Guérande | | 180.8 | | | |
| 26.04 | 22 | 23 | | S2Stage 2 - Milizac-Guipronvel › Pontivy | | 206.2 | | | |
| 25.04 | 32 | 38 | | S1Stage 1 - Locmaria-Plouzané › Plougonvelin | | 146 | | | |
| 21.04 | 24 | | | Gent-Wevelgem / Kattekoers-Ieper (1.2U) | | 182.9 | | | more |
| 14.04 | 77 | | | Tour du Doubs (1.1) Groupama - FDJ | | 178.9 | | | more |
| 12.04 | DNF | | | Classic Grand Besançon Doubs (1.1) Groupama - FDJ | | 171.3 | | | more |
| 07.04 | 6 | | | Paris-Roubaix Espoirs (1.2U) | | 163.6 | 1 | 5 | more |
| 24.03 | 73 | | | La Roue Tourangelle Centre Val de Loire - Trophée Groupama Paris Val de Loire (1.1) Groupama - FDJ | | 200 | | | more |
| 15.03 | 90 | | | Youngster Coast Challenge (1.2U) | | 172.2 | | | more |
| 03.03 | 116 | | | Grand Prix de la Ville de Lillers Souvenir Bruno Comini (1.2) | | 197.4 | | | more |
| 02.03 | 46 | | | Le Tour des 100 Communes (1.2) | | 183 | | | more |
| 18.02 › 25.0218-25/2 | | | | Tour du Rwanda (2.1) | | | | | more |
| 11 | | | Youth classificationYouth classification | | | | | |
| 59 | | | General classificationGeneral classification | | | | | |
| 25.02 | 62 | | | S8Stage 8 - Kigali › Kigali | | 73.6 | | | |
| 24.02 | 62 | 58 | | S7Stage 7 - Rukomo › Kayonza | | 158 | | | |
| 23.02 | 73 | 59 | | S6Stage 6 - Ruhengeri (Muzanze) › Mont Kigali | | 93.3 | | | |
| 22.02 | 73 | 53 | | S5 (ITT)Stage 5 (ITT) - Ruhengeri (Muzanze) › Kinigi Kwita Izina | | 13 | | | |
| 21.02 | 7 | 53 | | S4Stage 4 - Karongi › Rubavu | | 93 | 2 | | |
| 20.02 | 54 | 65 | | S3Stage 3 - Huye › Rusizi | | 140.3 | | | |
| 19.02 | 81 | 81 | | S2Stage 2 - Muhanga › Kibeho | | 129.4 | | | |
| 18.02 | 8 | | | S1 (TTT)Stage 1 (TTT) - Kigali › Kigali | | 18.3 | | | |