23.09 | 4 | | | World Championships MJ - Road Race (WC) | 133.8 | 80 | | more |
01.09 › 03.091-3/9 | | | | Giro della Lunigiana (2.1) | | | | more |
| 2 | | | Points classificationPoints classification | | | | |
| 31 | | | General classificationGeneral classification | | | | |
03.09 | 2 | | | S3Stage 3 - Dogana di Luni › Casano di Luni | 104.3 | 12 | | |
02.09 | 64 | 57 | | S2Stage 2 - Fosdinovo › Fosdinovo | 116.9 | | | |
01.09 | 4 | 3 | | S1Stage 1 - Castelnuovo Magra › M di Massa loc. Partaccia | 100 | 5 | | |
27.08 | 1 | | | Trofeo Emilio Paganessi (1.1) | 134 | 75 | | more |
26.08 | 1 | | | Trofeo comune di Vertova Memorial Pietro Merelli (1.1) | 81.2 | 75 | | more |
04.08 | 3 | | | European Continental Championships MJ - Road Race (CC) | 120.6 | 50 | | more |
28.07 › 30.0728-30/7 | | | | Internationale Niedersachsen-Rundfahrt der Junioren (2.1) | | | | more |
| 2 | | | Points classificationPoints classification | | | | |
| 31 | | | General classificationGeneral classification | | | | |
30.07 | 3 | | | S3Stage 3 - Wallenhorst › Wallenhorst | 114.3 | 7 | | |
29.07 | 5 | 40 | | S2bStage 2b - Wallenhorst › Wallenhorst | 94.2 | 4 | | |
29.07 | 39 | 40 | | S2a (ITT)Stage 2a (ITT) - Bramsche › Bramsche | 10.5 | | | |
28.07 | 14 | 15 | | S1Stage 1 - Wallenhorst › Wallenhorst | 66.3 | | | |
14.07 › 16.0714-16/7 | | | | OberÖsterreich Juniorenrundfahrt (2.1) | | | | more |
16.07 | DNF | | | S3Stage 3 - Bad Wimsbach › Altmünster | 94.7 | | | |
15.07 | 95 | 84 | | S2Stage 2 - Bad Leonfelden › Bad Leonfelden | 117.6 | | | |
14.07 | 97 | 96 | | S1Stage 1 - Haid/Ansfelden › Marchtrenk | 96.5 | | | |
25.06 | 5 | | | National Championships Germany MJ - Road Race (NC) | 122.1 | 4 | | more |
24.06 | 35 | | | National Championships Germany MJ - ITT (NC) | 23.2 | | | more |
08.06 › 11.068-11/6 | | | | Trofeo Karlsberg (2.Ncup) | | | | more |
| 16 | | | Mountains classificationMountains classification | | | | |
| 4 | | | Points classificationPoints classification | | | | |
| 2 | | | General classificationGeneral classification | | 110 | | |
11.06 | 3 | | | S4Stage 4 - Reinheim › Reinheim | 120 | 12 | | |
10.06 | 12 | 4 | | S3b (ITT)Stage 3b (ITT) - Brenschelbach › Brenschelbach | 11.5 | | | |
10.06 | 7 | 1 | | S3aStage 3a - Homburg › Homburg | 79 | 2 | | |
09.06 | 3 | 1 | | S2Stage 2 - Blieskastel- › Ommersheim | 99 | 12 | | |
08.06 | 2 | 2 | | S1Stage 1 - Neunkirchen › Neunkirchen | 99 | 18 | | |
20.05 › 21.0520-21/5 | | | | Trophée Centre Morbihan (2.Ncup) | | | | more |
| 2 | | | Points classificationPoints classification | | | | |
| 36 | | | General classificationGeneral classification | | 5 | | |
21.05 | 2 | | | S3Stage 3 - Pluméliau › Locminé | 95.5 | 18 | | |
21.05 | 66 | 43 | | S2 (ITT)Stage 2 (ITT) - Réguiny › Naizin | 7.2 | | | |
20.05 | 7 | 7 | | S1Stage 1 - Saint-Jean-Brévelay › Saint-Jean-Brévelay | 101.7 | 2 | | |
04.05 › 07.054-7/5 | | | | Course de la Paix Juniors (2.Ncup) | | | | more |
| 1 | | | Points classificationPoints classification | | | | |
| 36 | | | General classificationGeneral classification | | 5 | | |
07.05 | 1 | | | S4Stage 4 - Terezin › Terezin | 96.4 | 30 | | |
06.05 | 45 | 39 | | S3Stage 3 - Teplice › Altenberg | 100 | | | |
05.05 | 4 | 47 | | S2bStage 2b - Roudnice nad Labem › Roudnice nad Labem | 62.4 | 7 | | |
05.05 | 62 | 47 | | S2a (ITT)Stage 2a (ITT) - Trebenice › Trebenice | 11.2 | | | |
04.05 | 21 | 22 | | S1Stage 1 - Litomerice › Litomerice | 102.5 | | | |
09.04 | 28 | | | Paris - Roubaix Juniors (1.Ncup) | 111 | | | more |
02.04 | 8 | | | Grand Prix Bob Jungels (1.1) | 130.8 | 18 | | more |
26.03 | 4 | | | Gent-Wevelgem/Grote Prijs A. Noyelle-Ieper (1.Ncup) | 129.2 | 50 | | more |