| 03-10 | 37 | | UEC Road European Championships U19 (CC) | 103.0km |
| 01-10 | 26 | | UEC Road European Championships TT U19 (CC) | 24.0km |
| | | Keizer der Juniores (2.1) |
| 21-09 | 9 | 51 | Stage 2Wulpen - Wulpen (6.0km) | 6.0km |
| 21-09 | 71 | 47 | Stage 3Koksijde - Koksijde (99.0km) | 99.0km |
| 20-09 | 50 | 51 | Stage 1Pittem - Pittem (111.0km) | 111.0km |
| | | Grand Prix Rüebliland (2.1) |
| 39 | | Klassement |
| 17 | | Jongeren |
| 07-09 | 43 | 39 | Stage 3Altishofen - Altishofen (110.0km) | 110.0km |
| 06-09 | 42 | 46 | Stage 2Kaisten - Kaisten (88.0km) | 88.0km |
| 05-09 | 70 | 70 | Stage 1Sulz - Sulz (102.0km) | 102.0km |
| 22-08 | 8 | | UCI Junior Track World Championships (Individual Pursuit) (CM) | |
| 21-08 | 3 | | UCI Junior Track World Championships (Team Pursuit) (CM) | |
| | | Aubel-Thimister-Stavelot (2.1) |
| 08-08 | 113 | 113 | Stage 1Aubel - Aubel (98.0km) | 98.0km |
| 29-06 | 5 | | National Road Championships - Germany U19 (CN) | |
| | | LVM Saarland Trofeo (2.NCUP) |
| 11 | | Klassement |
| 3 | | Jongeren |
| 22-06 | 14 | 11 | Stage 4Peppenkum - Peppenkum (122.0km) | 122.0km |
| 21-06 | 19 | 12 | Stage 3bBallweiler - Ballweiler (106.0km) | 106.0km |
| 21-06 | 14 | 12 | Stage 3aAltheim - Altheim (12.0km) | 12.0km |
| 20-06 | 16 | 26 | Stage 2Sarreguemines - Rohrbach-lès-Bitche (119.0km) | 119.0km |
| 19-06 | 45 | 45 | Stage 1Elversberg - Elversberg (127.0km) | 127.0km |
| | | Côte d'Or Classic Juniors (2.1) |
| 8 | | Klassement |
| 18 | | Punten |
| 6 | | Jongeren |
| 09-06 | 9 | 8 | Stage 3Pouilly-en-Auxois - Semur-en-Auxois (110.0km) | 110.0km |
| 08-06 | 46 | 46 | Stage 1Saulieu - Précy-sous-Thil (85.0km) | 85.0km |
| 08-06 | | 29 | Stage 2Pouillenay - MuséoParc Alésia (15.0km) | 15.0km |
| | | SPIE Internationale Junioren Driedaagse (2.1) |
| 80 | | Klassement |
| 38 | | Punten |
| 26 | | Jongeren |
| 25-05 | 69 | 80 | Stage 3Strijpen - Strijpen (105.0km) | 105.0km |
| 24-05 | 97 | 89 | Stage 2bSluiskil - Sluiskil (94.0km) | 94.0km |
| 24-05 | 17 | 16 | Stage 2aWestdorpe - Westdorpe (11.0km) | 11.0km |
| 23-05 | 47 | 48 | Stage 1Axel - Axel (101.0km) | 101.0km |
| 11-05 | 50 | | Gent-Wevelgem / Grote Prijs A. Noyelle-Ieper (1.1) | 71.0km |
| | | La Coupe du President de la Ville de Grudziądz (2.1) |
| 33 | | Klassement |
| 3 | | Punten |
| 13 | | Jongeren |
| 04-05 | 36 | 33 | Stage 4Grudziadz - Grudziadz (103.0km) | 103.0km |
| 03-05 | 2 | 6 | Stage 3Swiecie - Swiecie (93.0km) | 93.0km |
| 02-05 | 5 | 13 | Stage 2Kijewo Królewskie - Kijewo Królewskie (90.0km) | 90.0km |
| 01-05 | 14 | 18 | Stage 1Gruta - Lasin (102.0km) | 102.0km |
| 27-04 | DNF | | Giro di Primavera (1.1) | 129.0km |
| 26-04 | 38 | | Trofeo Emozione (1.1) | 137.0km |
| 25-04 | DNF | | Coppa Montes Gran Premio della Resistenza (1.1) | 115.0km |
| | | Internationale Cottbuser Junioren-Etappenfahrt (2.1) |
| 29 | | Klassement |
| 11 | | Jongeren |
| 06-04 | 34 | 29 | Stage 3Dissen - Dissen (120.0km) | 120.0km |
| 05-04 | 31 | 28 | Stage 2bCottbus - Cottbus (60.0km) | 60.0km |
| 05-04 | 29 | 29 | Stage 2aPapproth - Papproth (9.0km) | 9.0km |
| 04-04 | 67 | 67 | Stage 1Drebkau - Drebkau (77.0km) | 77.0km |