| 20-10 | DNS | | Veneto Classic (1.Pro) | 191.0km |
| 16-10 | DNF | | Giro del Veneto (1.Pro) | 173.0km |
| 06-10 | 61 | | Paris - Tours Espoirs (1.2U) | |
| 28-09 | 58 | | Grand Prix Cerami (1.2) | 159.0km |
| 22-09 | 60 | | Paris-Chauny (1.1) | 197.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 84 | | Klassement |
| 25 | | Berg |
| 24-08 | 88 | 84 | Etappe 6 Bobbio Pellice - Colle delle Finestre | 120.0km |
| 23-08 | 78 | 82 | Etappe 5Les Karellis - Condove | 120.0km |
| 22-08 | 45 | 82 | Etappe 4La Rosière-Montvalezan - Les Karellis | 143.0km |
| 21-08 | 98 | 107 | Etappe 3Peisey-Vallandry - La Rosière-Montvalezan | 71.0km |
| 20-08 | 95 | 111 | Etappe 2Mouchard - Plateau d'Hauteville | 170.0km |
| 19-08 | 119 | 123 | Etappe 1Sarrebourg - Ronchamp | 185.0km |
| 18-08 | 48 | 48 | ProloogSarrebourg - Sarrebourg | 7.0km |
| | | Czech Tour (2.1) |
| 68 | | Klassement |
| 16 | | Jongeren |
| 28-07 | 119 | 68 | Etappe 4Šumperk - Šternberk | 129.0km |
| 27-07 | 86 | 55 | Etappe 3Moravska Trebova - Dlouhé | 131.0km |
| 26-07 | 43 | 44 | Etappe 2Zlin - Pustevny | 170.0km |
| 25-07 | 107 | 107 | Etappe 1Prostejov - Ostrava | 151.0km |
| 30-06 | DNS | | National Road Championships - Germany U23 (CN) | 148.0km |
| 23-06 | DNF | | National Road Championships - Germany (CN) | 200.0km |
| 21-06 | 4 | | National Road Championships - Germany TT U23 (CN) | 30.0km |
| | | Giro d'Italia Next Gen (2.2U) |
| 62 | | Klassement |
| 58 | | Punten |
| 16-06 | 88 | 62 | Etappe 8Cesena - Forlimpopoli | 146.0km |
| 15-06 | 101 | 55 | Etappe 7Montegrotto Terme - Zocca | 170.0km |
| 14-06 | 37 | 55 | Etappe 6Borgo Virgilio - Fosse | 145.0km |
| 13-06 | 132 | 103 | Etappe 5Bergamo - Cremona | 136.0km |
| 12-06 | 113 | 103 | Etappe 4Pertusio - Borgomanero | 130.0km |
| 11-06 | 133 | 116 | Etappe 3Verrès - Pian della Mussa | 127.0km |
| 10-06 | 90 | 95 | Etappe 2Aymavilles - Saint-Vincent | 121.0km |
| 09-06 | 49 | 49 | Etappe 1Aosta - Aosta | 11.0km |
| 26-05 | DNF | | Rund um Köln (1.1) | 194.0km |
| | | Orlen Nations Grand Prix (2.NCUP) |
| 20 | | Klassement |
| 17 | | Berg |
| 19-05 | 23 | 20 | Etappe 5Lesko - Arlamów | 143.0km |
| 18-05 | 90 | 20 | Etappe 4Bukovina Resort - Jaslo | 175.0km |
| 17-05 | 37 | 21 | Etappe 3Tvrdosin - Štrbské Pleso | 121.0km |
| 16-05 | 22 | 20 | Etappe 2Prerov - Kohútka | 110.0km |
| 15-05 | 13 | 13 | Etappe 1Prostejov - Bouzov | 135.0km |
| 12-05 | DNF | | Boucles de l'Aulne - Châteaulin (1.1) | 181.0km |
| 11-05 | DNF | | Tour du Finistère (1.1) | 199.0km |
| | | Circuit des Ardennes (2.2) |
| 07-04 | DNF | | Etappe 4Sedan - Sedan | 163.0km |
| 06-04 | 120 | 116 | Etappe 3Charleville-Mézières - Aiglemont | 145.0km |
| 05-04 | 125 | 106 | Etappe 2Auvillers-les-Forges - Hardoncelle | 167.0km |
| 04-04 | 58 | 58 | Etappe 1Juniville - Asfeld | 165.0km |
| 17-03 | DNF | | Cholet Agglo Tour (1.1) | 205.0km |
| 16-03 | 82 | | Classic Loire Atlantique (1.1) | 182.0km |
| 13-03 | 100 | | Milano - Torino (1.Pro) | 177.0km |
| | | Tour du Rwanda (2.1) |
| 9 | | Klassement |
| 15 | | Berg |
| 25-02 | 23 | 9 | Etappe 8Kigali - Kigali | 90.0km |
| 24-02 | 12 | 7 | Etappe 7Rukomo - Kayonza | 163.0km |
| 23-02 | 7 | 7 | Etappe 6Musanze - Kigali | 93.0km |
| 22-02 | 7 | 6 | Etappe 5Musanze - Kinigi | 13.0km |
| 21-02 | 20 | 14 | Etappe 4Karongi - Rubavu | 92.0km |
| 20-02 | 8 | 13 | Etappe 3Huye - Rusizi | 141.0km |
| 19-02 | 30 | 30 | Etappe 2Muhanga - Kibeho | 130.0km |