| 13-10 | 10 | | Chrono des Nations U23 (1.2U) | 27.0km |
| 05-10 | 13 | | Il Lombardia Under 23 (1.2U) | 170.0km |
| 07-09 | 30 | | GP Rik Van Looy (1.2) | |
| | | Tour de l'Avenir (2.NCUP) |
| 19-08 | DNF | | Stage 1Sarrebourg - Ronchamp (185.0km) | 185.0km |
| 18-08 | 21 | 21 | PrologueSarrebourg - Sarrebourg (7.0km) | 7.0km |
| | | Tour Alsace (2.2) |
| 27 | | Klassement |
| 16 | | Jongeren |
| 28-07 | 114 | 27 | Stage 5Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 27-07 | 16 | 28 | Stage 4L'Isle-sur-le-Doubs - Valentigney (176.0km) | 176.0km |
| 26-07 | 31 | 29 | Stage 3Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 25-07 | 31 | 26 | Stage 2Riedisheim - Ferrette (154.0km) | 154.0km |
| 24-07 | | 3 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 30-06 | 2 | | National Road Championships - Germany U23 (CN) | 148.0km |
| 23-06 | 25 | | National Road Championships - Germany (CN) | 200.0km |
| 21-06 | 9 | | National Road Championships - Germany TT U23 (CN) | 30.0km |
| | | Giro d'Italia Next Gen (2.2U) |
| 65 | | Klassement |
| 12 | | Jongeren |
| 16-06 | 48 | 65 | Stage 8Cesena - Forlimpopoli (146.0km) | 146.0km |
| 15-06 | 62 | 78 | Stage 7Montegrotto Terme - Zocca (170.0km) | 170.0km |
| 14-06 | 132 | 90 | Stage 6Borgo Virgilio - Fosse (145.0km) | 145.0km |
| 13-06 | 129 | 79 | Stage 5Bergamo - Cremona (136.0km) | 136.0km |
| 12-06 | 108 | 79 | Stage 4Pertusio - Borgomanero (130.0km) | 130.0km |
| 11-06 | 64 | 87 | Stage 3Verrès - Pian della Mussa (127.0km) | 127.0km |
| 10-06 | 95 | 94 | Stage 2Aymavilles - Saint-Vincent (121.0km) | 121.0km |
| 09-06 | 46 | 46 | Stage 1Aosta - Aosta (11.0km) | 11.0km |
| | | Orlen Nations Grand Prix (2.NCUP) |
| 26 | | Klassement |
| 19-05 | 35 | 26 | Stage 5Lesko - Arlamów (143.0km) | 143.0km |
| 18-05 | 38 | 25 | Stage 4Bukovina Resort - Jaslo (175.0km) | 175.0km |
| 17-05 | 35 | 26 | Stage 3Tvrdosin - Štrbské Pleso (121.0km) | 121.0km |
| 16-05 | 28 | 28 | Stage 2Prerov - Kohútka (110.0km) | 110.0km |
| 15-05 | 35 | 35 | Stage 1Prostejov - Bouzov (135.0km) | 135.0km |
| | | Circuit des Ardennes (2.2) |
| 05-04 | DNF | | Stage 2Auvillers-les-Forges - Hardoncelle (167.0km) | 167.0km |
| 04-04 | 106 | 106 | Stage 1Juniville - Asfeld (165.0km) | 165.0km |
| 30-03 | 93 | | Gran Premio Miguel Indurain (1.Pro) | 198.0km |
| 15-03 | 22 | | Youngster Coast Challenge (1.2U) | |
| 25-02 | DNF | | Faun Drome Classic (1.1) | 189.0km |
| 24-02 | 93 | | Faun-Ardèche Classic (1.Pro) | 169.0km |
| | | Tour des Alpes-Maritimes (2.1) |
| 74 | | Klassement |
| 18-02 | 83 | 74 | Stage 2Villefranche-sur-Mer - Vence (131.0km) | 131.0km |
| 17-02 | 45 | 45 | Stage 1Levens - Antibes (165.0km) | 165.0km |
| 16-02 | 65 | | Classic Var (1.1) | 184.0km |
| 27-01 | 75 | | Trofeo Pollença - Port d'Andratx (1.1) | |
| 26-01 | 66 | | Trofeo Serra Tramuntana (1.1) | |
| 24-01 | 94 | | Trofeo Calvià (1.1) | 150.0km |
| 20-01 | 44 | | Clàssica Comunitat Valenciana 1969 - Gran Premi València (1.1) | 200.0km |