| 13-10 | 8 | | Chrono des Nations U23 (1.2U) | 27.0km |
| 05-10 | 2 | | Il Lombardia Under 23 (1.2U) | 170.0km |
| 01-10 | 36 | | Coppa Citta' Di San Daniele (1.2) | 160.0km |
| 24-09 | 6 | | Ruota d'Oro - GP Festa del Perdono (1.2U) | 168.0km |
| 08-09 | 1 | | Grote Prijs Stad Halle (1.2) | 174.0km |
| | | West Bohemia Tour (2.2U) |
| 3 | | Klassement |
| 10 | | Punten |
| 4 | | Berg |
| 2 | | Jongeren |
| 25-08 | 20 | 3 | Stage 3Plzeň - Plzeň (150.0km) | 150.0km |
| 24-08 | 12 | 3 | Stage 2Klatovy - Klatovy (150.0km) | 150.0km |
| 23-08 | 4 | 3 | Stage 1Rokycany - Rokycany (150.0km) | 150.0km |
| 22-08 | 4 | 4 | PrologueStarý Plzenec - Starý Plzenec (3.0km) | 3.0km |
| | | Tour Alsace (2.2) |
| 93 | | Klassement |
| 34 | | Punten |
| 65 | | Jongeren |
| 28-07 | 102 | 93 | Stage 5Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 27-07 | 102 | 95 | Stage 4L'Isle-sur-le-Doubs - Valentigney (176.0km) | 176.0km |
| 26-07 | 70 | 95 | Stage 3Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 25-07 | 103 | 102 | Stage 2Riedisheim - Ferrette (154.0km) | 154.0km |
| 24-07 | | 11 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 23-06 | DNS | | National Road Championships - Italy U23 (CN) | 166.0km |
| | | Ronde de l'Oise (2.2) |
| 31-05 | DNS | | Stage 2Liancourt - Ribécourt-Dreslincourt (190.0km) | 190.0km |
| 30-05 | 81 | 81 | Stage 1Crèvecœur-le-Grand - La Neuville-en-Hez (140.0km) | 140.0km |
| | | Le Tour de Bretagne Cycliste (2.2) |
| 66 | | Klassement |
| 53 | | Punten |
| 1 | | Berg |
| 28 | | Jongeren |
| 01-05 | 55 | 66 | Stage 7Le Hinglé - Dinan (159.0km) | 159.0km |
| 30-04 | 94 | 71 | Stage 6Saint-Onen-la-Chapelle - Louvigné-du-Désert (192.0km) | 192.0km |
| 29-04 | 79 | 71 | Stage 5La Gacilly - Saint-Méen-le-Grand (203.0km) | 203.0km |
| 28-04 | 81 | 74 | Stage 4Le Croisic - La Gacilly (171.0km) | 171.0km |
| 27-04 | 100 | 76 | Stage 3Noyal-Pontivy - Guérande (180.0km) | 180.0km |
| 26-04 | 36 | 65 | Stage 2Milizac-Guipronvel - Noyal-Pontivy (206.0km) | 206.0km |
| 25-04 | 111 | 109 | Stage 1Locmaria-Plouzané - Plougonvelin (146.0km) | 146.0km |
| 13-04 | 63 | | Liège-Bastogne-Liège U23 (1.2U) | 175.0km |
| | | Circuit des Ardennes (2.2) |
| 27 | | Klassement |
| 10 | | Punten |
| 6 | | Berg |
| 07-04 | 62 | 27 | Stage 4Sedan - Sedan (163.0km) | 163.0km |
| 06-04 | 1 | 23 | Stage 3Charleville-Mézières - Aiglemont (145.0km) | 145.0km |
| 05-04 | 26 | 38 | Stage 2Auvillers-les-Forges - Hardoncelle (167.0km) | 167.0km |
| 04-04 | 54 | 54 | Stage 1Juniville - Asfeld (165.0km) | 165.0km |
| 30-03 | 15 | | Volta Limburg Classic (1.1) | 190.0km |
| 24-03 | DNF | | La Roue Tourangelle (1.1) | 200.0km |
| | | Istarsko Proljece - Istrian Spring Trophy (2.2) |
| 43 | | Klassement |
| 24 | | Punten |
| 10-03 | 69 | 43 | Stage 3Pazin - Umag (118.0km) | 118.0km |
| 09-03 | 58 | 47 | Stage 2Novigrad - Motovun (139.0km) | 139.0km |
| 08-03 | 53 | 9 | Stage 1Porec - Funtana (144.0km) | 144.0km |
| 07-03 | 7 | 7 | PrologueVrsar - Vrsar (1.0km) | 1.0km |