13.09 › 17.0913-17/9 | | | | Škoda Tour Luxembourg (2.Pro) | | | | more |
15.09 | DNS | | | S3Stage 3 - Rosport › Diekirch | 188.4 | | | |
14.09 | 69 | 48 | | S2Stage 2 - Junglinster › Schifflange | 163.4 | | | |
13.09 | 46 | 46 | | S1Stage 1 - Luxembourg › Luxembourg | 163.8 | | | |
04.09 | 27 | | | Gylne Gutuer (1.2) | 165.2 | | | more |
03.09 | 30 | | | Lillehammer GP (1.2) | 131 | | | more |
16.08 › 20.0816-20/8 | | | | PostNord Danmark Rundt - Tour of Denmark (2.Pro) | | | | more |
| 35 | | | General classificationGeneral classification | | | 3 | |
20.08 | 40 | | | S5Stage 5 - Give › Vejle | 126.5 | | | |
19.08 | 52 | 51 | | S4Stage 4 - Skive › Skive | 167.3 | | | |
18.08 | 51 | 55 | | S3Stage 3 - Otterup › Herning | 239.3 | | | |
17.08 | 107 | 94 | | S2 (ITT)Stage 2 (ITT) - Assens › Assens | 12.2 | | | |
16.08 | 61 | 64 | | S1Stage 1 - Allerød › Køge | 222.6 | | | |
09.08 › 11.089-11/8 | | | | Tour de l'Ain (2.1) | | | | more |
11.08 | DNF | | | S3Stage 3 - Plateau d'Hauteville › Lélex | 131 | | | |
10.08 | 93 | 82 | | S2Stage 2 - Saint-Vulbas › Lagnieu | 144 | | | |
09.08 | 53 | 53 | | S1Stage 1 - Châtillon-Sur-Chalaronne › Val-Revermont | 152 | | | |
29.07 › 01.0829-1/7 | | | | Kreiz Breizh Elites (2.2) | | | | more |
| 44 | | | Points classificationPoints classification | | | | |
| 10 | | | General classificationGeneral classification | | 1 | 3 | |
01.08 | 40 | | | S4Stage 4 - Guingamp › Rostrenen | 186.4 | | | |
31.07 | 15 | 5 | | S3Stage 3 - Priziac › Carhaix | 187.5 | | | |
30.07 | 55 | 12 | | S2Stage 2 - Calanhel › Plouray | 200.3 | | | |
29.07 | 4 | 18 | | S1 (TTT)Stage 1 (TTT) - Ploumagoar › Ploumagoar | 12.5 | 2 | | |
26.06 | 3 | | | National Championships Sweden ME - Road Race (NC) | 186 | 7 | 60 | more |
08.06 › 12.068-12/6 | | | | ZLM Tour (2.Pro) | | | | more |
| 32 | | | General classificationGeneral classification | | | 3 | |
12.06 | 35 | | | S5Stage 5 - Made › Rijsbergen | 160.5 | | | |
11.06 | 52 | 38 | | S4Stage 4 - Sint Willebrord › Mierlo | 196.5 | | | |
10.06 | 61 | 40 | | S3Stage 3 - Heythuysen › Buchten 120k | 192.5 | | | |
09.06 | 44 | 38 | | S2Stage 2 - Veere › Goes | 183.2 | | | |
08.06 | 56 | 57 | | S1Stage 1 - Kapelle › Kapelle | 100.9 | | | |
24.05 › 29.0524-29/5 | | | | Tour of Norway (2.Pro) | | | | more |
| 34 | | | General classificationGeneral classification | | | 3 | |
29.05 | 62 | | | S6Stage 6 - Stavanger › Stavanger | 149.3 | | | |
28.05 | 19 | 34 | | S5Stage 5 - Flekkefjord › Sandnes | 181.7 | | | |
27.05 | 20 | 36 | | S4Stage 4 - Hovden › Kristiansand | 232.1 | | | |
26.05 | 81 | 41 | | S3Stage 3 - Gol › Stavsro/Gaustatoppen | 175.8 | | | |
25.05 | 45 | 32 | | S2Stage 2 - Ulvik › Geilo | 123.8 | | | |
24.05 | 16 | 16 | | S1Stage 1 - Bergen › Voss Resort | 173.6 | | | |
08.05 | 15 | | | Ringerike GP (1.2) | 165.9 | | | more |
07.05 | 17 | | | Sundvolden GP (1.2) | 169.1 | | | more |
06.04 › 09.046-9/4 | | | | Circuit des Ardennes (2.2) | | | | more |
| 11 | | | Mountains classificationMountains classification | | | | |
| 7 | | | General classificationGeneral classification | | 4 | 5 | |
09.04 | 44 | | | S4Stage 4 - Charleville-Mézières › Charleville-Mézières | 172.7 | | | |
07.04 | 19 | 8 | | S2Stage 2 - Bazeilles › Sedan | 92.5 | | | |
06.04 | 13 | 15 | | S1Stage 1 - Signy-le-Petit › Signy-le-Petit | 165.2 | | | |
02.04 | 4 | | | Volta Limburg Classic (1.1) | 195 | 32 | 60 | more |
27.02 | 59 | | | Drôme Classic (1.Pro) | 191.5 | | | more |
26.02 | 40 | | | Faun-Ardèche Classic (1.Pro) | 168.5 | | 3 | more |
18.02 › 20.0218-20/2 | | | | Tour des Alpes Maritimes et du Var (2.1) | | | | more |
| 13 | | | Youth classificationYouth classification | | | | |
| 55 | | | General classificationGeneral classification | | | | |
20.02 | 57 | | | S3Stage 3 - Villefranche-sur-Mer › Blausasc | 112.6 | | | |
19.02 | 62 | 59 | | S2Stage 2 - Puget-Théniers › La Turbie | 149.1 | | | |
18.02 | 48 | 52 | | S1Stage 1 - Saint-Raphaël › La Seyne-sur-Mer | 176.3 | | | |