| 18.09 | 20 | | | Grand Prix de Wallonie (1.1) | 205.9 | 1 | 3 | more |
| 07.09 › 14.097-14/9 | | | | OVO Energy Tour of Britain (2.HC) | | | | more |
| 43 | | | Mountains classificationMountains classification | | | | |
| 36 | | | Points classificationPoints classification | | | | |
| 18 | | | General classificationGeneral classification | | 12 | 5 | |
| 14.09 | 31 | | | S8Stage 8 - Altrincham › Manchester | 166 | | | |
| 13.09 | 13 | 17 | | S7Stage 7 - Warwick › Burton Dassett Country Park | 188.7 | | | |
| 12.09 | 26 | 21 | | S6 (ITT)Stage 6 (ITT) - Pershore › Pershore | 14.4 | | | |
| 11.09 | 59 | 29 | | S5Stage 5 - Birkenhead › Birkenhead | 174.1 | | | |
| 10.09 | 32 | 32 | | S4Stage 4 - Gateshead › Kendal | 173.2 | | | |
| 09.09 | 66 | 48 | | S3Stage 3 - Berwick-upon-Tweed › Newcastle-upon-Tyne | 183.2 | | | |
| 08.09 | 26 | 52 | | S2Stage 2 - Kelso › Kelso | 165.9 | | | |
| 07.09 | 110 | 110 | | S1Stage 1 - Glasgow › Kirkcudbright | 201.5 | | | |
| 21.08 › 25.0821-25/8 | | | | PostNord Danmark Rundt - Tour of Denmark (2.HC) | | | | more |
| 20 | | | Points classificationPoints classification | | | | |
| 32 | | | General classificationGeneral classification | | | 3 | |
| 25.08 | 86 | | | S5Stage 5 - Roskilde › Frederiksberg | 165.6 | | | |
| 24.08 | 6 | 32 | | S4Stage 4 - Korsør › Asnæs Indelukke | 175.2 | 3 | | |
| 23.08 | 52 | 47 | | S3Stage 3 - Holstebro › Vejle | 199.7 | | | |
| 22.08 | 14 | 14 | | S2 (ITT)Stage 2 (ITT) - Grindsted › Grindsted | 17 | | | |
| 21.08 | 64 | 64 | | S1Stage 1 - Silkeborg › Silkeborg | 169.7 | | | |
| 18.08 | DNS | | | Fyen Rundt - Tour of Funen (1.2) | 202.9 | | | more |
| 27.07 › 31.0727-31/7 | | | | Tour de Wallonie (2.HC) | | | | more |
| 29.07 | DNF | | | S3Stage 3 - La Roche-en-Ardenne › Verviers | 204.2 | | | |
| 28.07 | 81 | 94 | | S2Stage 2 - Waremme › Beyne Heusay | 170.4 | | | |
| 27.07 | 115 | 115 | | S1Stage 1 - Le Roeulx › Dottignies | 186.4 | | | |
| 25.07 | 50 | | | Grand Prix Cerami (1.1) | 164.7 | | | more |
| 30.06 | 19 | | | National Championships Denmark ME - Road Race (NC) | 225 | | | more |
| 28.05 › 02.0628-2/5 | | | | Tour of Norway (2.HC) | | | | more |
| 51 | | | General classificationGeneral classification | | | | |
| 02.06 | 45 | | | S6Stage 6 - Gran › Hønefoss | 175.1 | | | |
| 01.06 | 66 | 63 | | S5Stage 5 - Skien › Drammen | 159.7 | | | |
| 31.05 | 87 | 66 | | S4Stage 4 - Arendal › Sandefjord | 224.4 | | | |
| 30.05 | 86 | 59 | | S3Stage 3 - Lyngdal › Kristiansand | 179.7 | | | |
| 29.05 | 79 | 82 | | S2Stage 2 - Kvinesdal › Mandal | 174 | | | |
| 28.05 | 94 | 98 | | S1Stage 1 - Stavanger › Egersund | 168.2 | | | |
| 02.05 › 05.052-5/5 | | | | Tour de Yorkshire (2.HC) | | | | more |
| 3 | | | Points classificationPoints classification | | | | |
| 4 | | | General classificationGeneral classification | | 80 | 100 | |
| 05.05 | 7 | | | S4Stage 4 - Halifax › Leeds | 175 | 2 | | |
| 04.05 | 1 | 2 | | S3Stage 3 - Bridlington › Scarborough | 132 | 30 | 20 | |
| 03.05 | 46 | 44 | | S2Stage 2 - Barnsley › Bedale | 132 | | | |
| 02.05 | 57 | 58 | | S1Stage 1 - Doncaster › Selby | 182.5 | | | |
| 17.04 | 8 | | | De Brabantse Pijl - La Flèche Brabançonne ME (1.HC) | 196.2 | 30 | 50 | more |
| 12.04 › 14.0412-14/4 | | | | Circuit des Ardennes International (2.2) | | | | more |
| 7 | | | Mountains classificationMountains classification | | | | |
| 2 | | | Points classificationPoints classification | | | | |
| 1 | | | General classificationGeneral classification | | 25 | 40 | |
| 14.04 | 6 | | | S4Stage 4 - Villers-Semeuse › Charleville-Mézières | 106 | | | |
| 14.04 | 4 | 1 | | S3Stage 3 - Nouvion-sur-Meuse › Aiglemont | 59.5 | | | |
| 13.04 | 1 | 1 | | S2Stage 2 - Rocroi › Monthermé | 157.7 | 5 | 7 | |
| 12.04 | 64 | 65 | | S1Stage 1 - Neuvizy › Launois-sur-Vence | 188.7 | | | |
| 06.04 | 15 | | | Volta Limburg Classic (1.1) | 192.1 | 6 | 5 | more |
| 27.03 › 31.0327-31/3 | | | | Settimana Internazionale Coppi e Bartali (2.1) | | | | more |
| 1 | | | Points classificationPoints classification | | | | |
| 19 | | | General classificationGeneral classification | | 2 | 3 | |
| 31.03 | 4 | | | S5Stage 5 - Fiorano Modenese › Sassuolo | 153.4 | 5 | | |
| 30.03 | 47 | 18 | | S4Stage 4 - Crevalcore › Crevalcore | 171.4 | | | |
| 29.03 | 3 | 18 | | S3Stage 3 - Forlì › Forlì | 166.2 | 7 | 3 | |
| 28.03 | 3 | 19 | | S2Stage 2 - Riccione › Sogliano al Rubicone | 140 | 7 | 3 | |
| 27.03 | 11 | 52 | | S1b (TTT)Stage 1b (TTT) - Gatteo a mare › Gatteo | 13.3 | | | |
| 27.03 | 132 | 138 | | S1aStage 1a - Gatteo › Gatteo | 97.8 | | | |
| 03.03 | DNF | | | Royal Bernard Drôme Classic (1.1) | 207.8 | | | more |
| 02.03 | 76 | | | Faun Environnement - Classic de l'Ardèche Rhône Crussol (1.1) | 197.5 | | | more |
| 22.02 › 24.0222-24/2 | | | | Tour Cycliste International du Haut Var (2.1) | | | | more |
| 94 | | | General classificationGeneral classification | | | | |
| 24.02 | 71 | | | S3Stage 3 - La Londe-les-Maures › Mont Faron (Toulon) | 136 | | | |
| 23.02 | 83 | 93 | | S2Stage 2 - Le Cannet-des-Maures › Mons | 201.4 | | | |
| 22.02 | 97 | 97 | | S1Stage 1 - Vence › Mandelieu-la-Napoul | 154.5 | | | |
| 17.02 | DNF | | | Trofeo Laigueglia (1.HC) | 203.7 | | | more |