14.09 | 51 | | | European Continental Championships MJ - Road Race (CC) Sweden | 129.7 | | | more |
08.09 | 1 | | | Söderåsens - Road Race (NAT) | 82.2 | 25 | | more |
07.09 | 1 | | | Söderåsens - ITT (NAT) | 28.5 | 25 | | more |
01.09 › 03.091-3/9 | | | | Vuelta a Cantabria - GP. Gobierno de Cantabria (2.1) Svealand Cycling Team | | | | more |
| 21 | | | General classificationGeneral classification | | 10 | | |
03.09 | 19 | | | S3Stage 3 - Puente Viesgo › Puente Viesgo (Cuevas del Monte Castillo) | 127 | 5 | | |
02.09 | 23 | 28 | | S2Stage 2 - Vioño de Piélagos › Vioño de Piélagos | 140 | 3 | | |
01.09 | 101 | 101 | | S1 (ITT)Stage 1 (ITT) - Santander › Cuesta de la Atalaya | 0.84 | | | |
23.08 › 25.0823-25/8 | | | | Vuelta Junior a la Ribera del Duero (2.1) Svealand Cycling Team | | | | more |
| 52 | | | Youth classificationYouth classification | | | | |
| 119 | | | General classificationGeneral classification | | | | |
25.08 | 123 | | | S3Stage 3 - Aranda de Duero › Aranda de Duero | 106.7 | | | |
24.08 | 118 | 128 | | S2Stage 2 - Langa de Duero › Laguna Negra | 119.7 | | | |
23.08 | 137 | 137 | | S1Stage 1 - Castrillo de la Vega › Haza | 67.7 | | | |
01.08 › 04.081-4/8 | | | | Randers Bike Week (NAT) | | | | more |
| 16 | | | General classificationGeneral classification | | 33 | | |
04.08 | 6 | | | S4Stage 4 - Randers › Randers | 93.6 | 26 | | |
03.08 | 43 | | | S3Stage 3 - Randers › Randers | 105 | | | |
02.08 | 56 | | | S2Stage 2 - Randers › Randers | 39 | | | |
01.08 | 59 | | | S1 (ITT)Stage 1 (ITT) - Clausholm Slot › Clausholm Slot | 9 | | | |
08.07 › 13.078-13/7 | | | | U6 Cycle Tour (NAT) | | | | more |
| 9 | | | General classificationGeneral classification | | 24 | | |
13.07 | 9 | | | S6Stage 6 - Tidaholm › Tidaholm | 14 | 5 | | |
12.07 | 30 | | | S5Stage 5 - Tidaholm › Tidaholm | 43.7 | | | |
11.07 | 17 | | | S4Stage 4 - Ekedalen › Ekedalen | 101.2 | 2 | | |
09.07 | 30 | | | S2Stage 2 - Hökensås › Hökensås | 93.6 | | | |
08.07 | 19 | | | S1Stage 1 - Tidaholm › Tidaholm | 3.2 | 2 | | |
04.07 › 07.074-7/7 | | | | Sint Martinusprijs Kontich (2.1) | | | | more |
| 32 | | | Youth classificationYouth classification | | | | |
| 85 | | | General classificationGeneral classification | | | | |
07.07 | 101 | | | S4Stage 4 - Kontich › Kontich | 118.9 | | | |
06.07 | 95 | 87 | | S3bStage 3b - Kontich › Kontich | 120.4 | | | |
06.07 | 29 | 99 | | S3a (ITT)Stage 3a (ITT) - Kontich › Kontich | 11.3 | 1 | | |
05.07 | 116 | 109 | | S2Stage 2 - Kontich › Kontich | 129.5 | | | |
04.07 | 4 | 122 | | S1 (TTT)Stage 1 (TTT) - Kontich › Waarloos | 19.6 | 30 | | |
22.06 | 19 | | | National Championships Sweden MJ - Road Race (NC) | 122 | 4 | | more |
18.06 | 2 | | | National Championships Sweden MJ - ITT (NC) | 32 | 22 | | more |
08.06 › 09.068-9/6 | | | | Côte d'Or Classic Juniors (2.1) | | | | more |
09.06 | DNF | | | S3Stage 3 - Pouilly-en-Auxois › Semur-en-Auxois | 100 | | | |
08.06 | 10 | 59 | | S2 (TTT)Stage 2 (TTT) - Alésia › Vitteaux | 18 | 18 | | |
08.06 | 97 | 97 | | S1Stage 1 - Saulieu › Précy-sous-Thil | 82 | | | |
30.05 › 02.0630-2/5 | | | | LVM Saarland Trofeo (2.Ncup) Sweden | | | | more |
| 10 | | | Youth classificationYouth classification | | | | |
| 23 | | | Points classificationPoints classification | | | | |
| 41 | | | General classificationGeneral classification | | | | |
02.06 | 38 | | | S4Stage 4 - Walsheim › Walsheim | 101.8 | | | |
01.06 | 69 | 42 | | S3bStage 3b - Wolfersheim › Oberwurzbach | 106.5 | | | |
01.06 | 55 | 44 | | S3a (ITT)Stage 3a (ITT) - Ballweiler › Ballweiler | 9.8 | | | |
31.05 | 59 | 56 | | S2Stage 2 - Volmunster › Sarreguemines | 130.4 | | | |
30.05 | 74 | 74 | | S1Stage 1 - Friedrichsthal › Furpach | 110 | | | |
17.05 › 19.0517-19/5 | | | | SPIE Internationale Juniorendriedaagse (2.1) | | | | more |
| 28 | | | Youth classificationYouth classification | | | | |
| 70 | | | General classificationGeneral classification | | | | |
19.05 | 63 | | | S4Stage 4 - Velzeke › Velzeke | 99.9 | | | |
18.05 | 112 | 118 | | S3Stage 3 - Sluiskil › Sluiskil | 80.5 | | | |
18.05 | 45 | 128 | | S2 (ITT)Stage 2 (ITT) - Westdorpe › Westdorpe | 11.9 | | | |
17.05 | 132 | 132 | | S1Stage 1 - Axel › Axel | 103.7 | | | |
09.05 › 11.059-11/5 | | | | Tour de Himmelfart (NAT) | | | | more |
| 4 | | | General classificationGeneral classification | | 108 | | |
11.05 | 33 | | | S5Stage 5 - Odder › Odder | 129.6 | | | |
10.05 | 13 | | | S4Stage 4 - Odder › Odder | 10.9 | 12 | | |
10.05 | 8 | | | S3Stage 3 - Odder › Odder | 78.5 | 22 | | |
09.05 | 2 | | | S2Stage 2 - Odder › Odder | 27.2 | 35 | | |
09.05 | 34 | | | S1Stage 1 - Odder › Odder | 77.2 | | | |
02.05 › 05.052-5/5 | | | | Course de la Paix Juniors (2.Ncup) Sweden | | | | more |
| 19 | | | Youth classificationYouth classification | | | | |
| 73 | | | General classificationGeneral classification | | | | |
05.05 | 95 | | | S4Stage 4 - Terezín › Terezín | 98.3 | | | |
04.05 | 73 | 73 | | S3Stage 3 - Teplice › Olbernhau | 133.9 | | | |
03.05 | 104 | 90 | | S2bStage 2b - Roudnice › Štětí | 61.4 | | | |
03.05 | 112 | 90 | | S2a (ITT)Stage 2a (ITT) - Třebívlice › Třebívlice | 8.8 | | | |
02.05 | 85 | 85 | | S1Stage 1 - Litoměřice › Litoměřice | 100.9 | | | |
14.04 | 3 | | | Östgötaloppet (NAT) | 82 | 20 | | more |
13.04 | 2 | | | Östgöta tempo (NAT) | 15 | 22 | | more |
07.04 | 62 | | | Paris-Roubaix Juniors (1.Ncup) Sweden | 111 | | | more |
01.04 | 9 | | | 3 Dage i Nord - #3 Campione Cup - Aalborg (NAT) | 107.4 | 36 | | more |
30.03 | 37 | | | 3 Dage i Nord - #1 Campione Cup - Hjørring (NAT) | 107 | | | more |
16.03 › 17.0316-17/3 | | | | Guido Reybrouck Classic (2.1) | | | | more |
17.03 | DNF | | | S2Stage 2 - Damme › Damme | 121.9 | | | |
16.03 | 19 | 19 | | S1 (ITT)Stage 1 (ITT) - Damme › Damme | 11.4 | 16 | | |
25.02 | DNF | | | Kuurne - Brussel - Kuurne Juniors (1.1) | 122.5 | | | more |