15.10 | 1 | | | Chrono des Nations (1.1) | 45.43 | 75 | 125 | more |
26.09 › 01.1026-1/9 | | | | CRO Race (2.1) | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 42 | | | General classificationGeneral classification | | | | |
01.10 | 77 | | | S6Stage 6 - Samobor › Zagreb | 157.5 | | | |
30.09 | 76 | 42 | | S5Stage 5 - Crikvenica › Ozalj | 189 | | | |
29.09 | 45 | 42 | | S4Stage 4 - Krk › Labin | 191 | | | |
28.09 | 75 | 71 | | S3Stage 3 - Otočac › Opatija | 133.5 | | | |
27.09 | 88 | 66 | | S2Stage 2 - Biograd na Moru › Novalja | 114.5 | | | |
26.09 | 41 | 41 | | S1Stage 1 - Primošten › Sinj | 181 | | | |
24.09 | DNF | | | European Continental Championships ME - Road Race (CC) 110k | 199.8 | | | more |
20.09 | 1 | | | European Continental Championships ME - ITT (CC) | 28.7 | 60 | 70 | more |
23.08 › 27.0823-27/8 | | | | Renewi Tour (2.UWT) | | | | more |
| 11 | | | Youth classificationYouth classification | | | | |
| 14 | | | Points classificationPoints classification | | | | |
| 114 | | | General classificationGeneral classification | | 5 | | |
27.08 | 112 | | | S5Stage 5 - Riemst › Bilzen | 187.3 | | | |
26.08 | 140 | 122 | | S4Stage 4 - Beringen › Peer | 179.4 | | | |
25.08 | 78 | 76 | | S3Stage 3 - Aalter › Geraardsbergen | 171.2 | | | |
24.08 | 1 | 1 | | S2 (ITT)Stage 2 (ITT) - Sluis › Sluis | 13.6 | 50 | 50 | |
23.08 | 77 | 78 | | S1Stage 1 - Blankenberge › Ardooie | 182.9 | | | |
20.08 | 100 | | | BEMER Cyclassics (1.UWT) | 205.6 | 5 | | more |
11.08 | 3 | | | World Championships ME - ITT (WC) | 47.8 | 140 | 260 | more |
22.07 › 26.0722-26/7 | | | | Ethias-Tour de Wallonie (2.Pro) | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 6 | | | Points classificationPoints classification | | | | |
| 2 | | | General classificationGeneral classification | | 110 | 150 | |
26.07 | 22 | | | S5Stage 5 - Banneux › Aubel | 215 | | | |
25.07 | 2 | 2 | | S4 (ITT)Stage 4 (ITT) - Mons › Mons | 32.7 | 18 | 15 | |
24.07 | 72 | 46 | | S3Stage 3 - Thuin › Mont-Saint-Guibert | 186.8 | | | |
23.07 | 31 | 39 | | S2Stage 2 - Saint-Ghislain › Walcourt | 179.7 | | | |
22.07 | 55 | 56 | | S1Stage 1 - Huy › Hamoir | 189.6 | | | |
25.06 | DNF | | | National Championships Great Britain ME - Road Race (NC) | 189 | | | more |
23.06 | 15 | | | National Championships Great Britain ME - Criterium (NAT) | | 6 | | more |
21.06 | 1 | | | National Championships Great Britain ME - ITT (NC) | 41.1 | 15 | 50 | more |
15.06 › 18.0615-18/6 | | | | La Route d'Occitanie - La Dépêche du Midi (2.1) | 164.7 | | | more |
18.06 | DNF | | | S4Stage 4 - Saint-Gaudens › Saint-Girons | 164.7 | | | |
17.06 | 110 | 104 | | S3Stage 3 - Gimont › Nistos-Cap-Nestès | 189 | | | |
16.06 | 111 | 85 | | S2Stage 2 - Cazouls-lès-Béziers › Graulhet | 182 | | | |
15.06 | 86 | 86 | | S1Stage 1 - Narbonne › Gruissan | 184.3 | | | |
26.05 › 29.0526-29/5 | | | | Tour of Norway (2.Pro) | | | | more |
| 13 | | | Youth classificationYouth classification | | | | |
| 43 | | | General classificationGeneral classification | | | | |
29.05 | 56 | | | S3Stage 3 - Stavanger › Stavanger | 151.2 | | | |
28.05 | 69 | 40 | | S2Stage 2 - Valle › Stavanger | 165.7 | | | |
27.05 | 51 | 22 | | S1Stage 1 - Røldal › Hovden | 85.2 | | | |
26.05 | 17 | 17 | | ProloguePrologue - Bergen › Mount Fløyen | 7.4 | | | |
19.04 | DNF | | | La Flèche Wallonne (1.UWT) | 194.3 | | | more |
16.04 | DNF | | | Amstel Gold Race (1.UWT) | 253.6 | | | more |
12.04 | 58 | | | De Brabantse Pijl - La Flèche Brabançonne ME (1.Pro) | 205.1 | | | more |
09.04 | OTL | | | Paris-Roubaix (1.UWT) | 256.6 | | | more |
24.03 | DNF | | | E3 Saxo Classic (1.UWT) | 204.1 | | | more |
05.03 › 12.035-12/3 | | | | Paris - Nice (2.UWT) | 142.9 | | | more |
11.03 | DNF | | | S7Stage 7 - Nice › Col de la Couillole 54k | 142.9 | | | |
09.03 | 60 | 75 | | S5Stage 5 - Saint-Symphorien-sur-Coise › Saint-Paul-Trois-Châteaux | 212.4 | | | |
08.03 | 72 | 75 | | S4Stage 4 - Saint-Amand-Montrond › La Loge des Gardes | 164.7 | | | |
07.03 | 10 | 97 | | S3 (TTT)Stage 3 (TTT) - Dampierre-en-Burly › Dampierre-en-Burly | 32.2 | | 0.29 | |
06.03 | 83 | 117 | | S2Stage 2 - Bazainville › Fontainebleau | 163.7 | | | |
05.03 | 117 | 117 | | S1Stage 1 - La Verrière › La Verrière | 169.4 | | | |
20.02 › 26.0220-26/2 | | | | UAE Tour (2.UWT) | | | | more |
| 19 | | | Youth classificationYouth classification | | | | |
| 48 | | | Points classificationPoints classification | | | | |
| 49 | | | General classificationGeneral classification | | 5 | 5 | |
26.02 | 23 | | | S7Stage 7 - Hazza Bin Zayed Stadium › Jebel Hafeet | 153 | | | |
25.02 | 132 | 59 | | S6Stage 6 - Warner Bros. World Abu Dhabi › Abu Dhabi Breakwater | 166 | | | |
24.02 | 24 | 58 | | S5Stage 5 - Al Marjan Island › Umm al Quwain | 170 | | | |
23.02 | 115 | 63 | | S4Stage 4 - Al Shindagha › Dubai Harbour | 174 | | | |
22.02 | 69 | 63 | | S3Stage 3 - Umbrella Beach Al Fujairah › Jebel Jais | 185 | | | |
21.02 | 3 | 83 | | S2 (TTT)Stage 2 (TTT) - Khalifa Port › Khalifa Port | 17.3 | 12 | 2.86 | |
20.02 | 86 | 86 | | S1Stage 1 - Al Dhafra Castle › Al Mirfa 98k | 151 | | | |
01.02 › 05.021-5/2 | | | | Etoile de Bessèges - Tour du Gard (2.1) | | | | more |
| 14 | | | Youth classificationYouth classification | | | | |
| 10 | | | Points classificationPoints classification | | | | |
| 56 | | | General classificationGeneral classification | | | | |
05.02 | 2 | | | S5 (ITT)Stage 5 (ITT) - Alès › Alès | 10.66 | 12 | 5 | |
04.02 | 69 | 60 | | S4Stage 4 - Saint-Christol-Lèz-Alès › Le Mont Bouquet | 147.5 | | | |
03.02 | 71 | 69 | | S3Stage 3 - Bessèges › Bessèges | 169.71 | | | |
02.02 | NR | 103 | | S2Stage 2 - Bagard › Aubais | 169.63 147 | | | |
01.02 | 103 | 103 | | S1Stage 1 - Bellegarde › Bellegarde | 162.18 | | | |