| 06-10 | DNF | | Tour de Vendée (1.1) | 199.0km |
| 19-09 | 43 | | Coppa Sabatini (1.1) | |
| 18-09 | DNF | | Giro della Toscana (1.1) | 206.0km |
| 15-09 | 64 | | Tour du Doubs (1.1) | |
| | | Tour de l'Avenir (2.NCUP) |
| 31 | | Klassement |
| 51 | | Punten |
| 25-08 | 53 | 31 | Stage 10Saint-Colomban-des-Villards - Le Corbier (78.0km) | 78.0km |
| 24-08 | 25 | 32 | Stage 9Villaroger - Tignes (67.0km) | 67.0km |
| 23-08 | 53 | 36 | Stage 8Brides-les-Bains - Méribel (23.0km) | 23.0km |
| 22-08 | 102 | 34 | Stage 7Grésy-sur-Isere - La Giettaz (103.0km) | 103.0km |
| 20-08 | 12 | 3 | Stage 6Saint-Julien-Chapteuil - Privas (124.0km) | 124.0km |
| 19-08 | 40 | 5 | Stage 5Espalion - Saint-Julien-Chapteuil (158.0km) | 158.0km |
| 18-08 | 58 | 5 | Stage 4Mauriac - Espalion (158.0km) | 158.0km |
| 17-08 | 24 | 3 | Stage 3Montignac-Lascaux - Mauriac (162.0km) | 162.0km |
| 16-08 | | 3 | Stage 2Eymet - Bergerac (32.0km) | 32.0km |
| 15-08 | 30 | 30 | Stage 1Marmande - Marmande (128.0km) | 128.0km |
| | | Tour Alsace (2.2) |
| 14 | | Klassement |
| 37 | | Punten |
| 04-08 | 61 | 14 | Stage 5Ottmarsheim - Dannemarie (158.0km) | 158.0km |
| 03-08 | 23 | 14 | Stage 4Ribeauville - Lac Blanc (161.0km) | 161.0km |
| 02-08 | 9 | 3 | Stage 3Vesoul - La Planche des Belles Filles (143.0km) | 143.0km |
| 01-08 | 48 | 11 | Stage 2Selestat - Selestat (153.0km) | 153.0km |
| 31-07 | | 7 | Stage 1Sausheim - Sausheim (4.0km) | 4.0km |
| 30-06 | DNF | | National Road Championships - Switzerland (CN) | |
| 26-06 | 2 | | National Road Championships - Switzerland TT U23 (CN) | |
| 15-06 | 3 | | National Road Championships - Switzerland U23 (CN) | 166.0km |
| | | Boucles de la Mayenne (2.1) |
| 23 | | Klassement |
| 09-06 | 22 | 23 | Stage 3Cosse-le-Vivien - Laval (173.0km) | 173.0km |
| 08-06 | 21 | 27 | Stage 2La Croixille - Lassay-les-Châteaux (179.0km) | 179.0km |
| 07-06 | 45 | 38 | Stage 1Saint-Berthevin - Change (183.0km) | 183.0km |
| 06-06 | 32 | 32 | PrologueLaval - Laval (4.0km) | 4.0km |
| | | Flèche du Sud (2.2) |
| 20 | | Klassement |
| 02-06 | 36 | 20 | Stage 5Kayl - Esch-sur-Alzette (138.0km) | 138.0km |
| 01-06 | 36 | 20 | Stage 4Mondorf-les-Bains - Roeser (155.0km) | 155.0km |
| 31-05 | 21 | 21 | Stage 3Bourscheid - Bourscheid (132.0km) | 132.0km |
| 30-05 | 17 | | Stage 2Rumelange - Rumelange (157.0km) | 157.0km |
| 29-05 | 9 | 9 | Stage 1Esch-sur-Alzette - Esch-sur-Alzette (3.0km) | 3.0km |
| 12-05 | 27 | | Flèche Ardennaise (1.2) | 179.0km |
| 01-05 | 34 | | Eschborn-Frankfurt U23 (1.2U) | 147.0km |
| 28-04 | 63 | | Giro dell'Appennino (1.1) | 198.0km |
| | | Circuit des Ardennes International (2.2) |
| 44 | | Klassement |
| 14-04 | 24 | 44 | Stage 4Villers-Semeuse - Charleville-Mézières (101.0km) | 101.0km |
| 14-04 | 27 | 49 | Stage 3Nouvion-sur-Meuse - Aiglemont (58.0km) | 58.0km |
| 13-04 | 65 | 61 | Stage 2Rocroi - Monthermé (160.0km) | 160.0km |
| 12-04 | 29 | 31 | Stage 1Neuvizy - Launois-sur-Vence (187.0km) | 187.0km |
| | | Volta ao Alentejo (2.2) |
| 14 | | Klassement |
| 24-03 | 18 | 14 | Stage 6Portalegre - Évora (152.0km) | 152.0km |
| 23-03 | 15 | 19 | Stage 4Ponte de Sor - Portalegre (74.0km) | 74.0km |
| 23-03 | 18 | 15 | Stage 5Castelo de Vide - Castelo de Vide (8.0km) | 8.0km |
| 22-03 | 15 | 28 | Stage 3Santiago do Cacém - Mora (176.0km) | 176.0km |
| 21-03 | 39 | 30 | Stage 2Mértola - Odemira (182.0km) | 182.0km |
| 20-03 | 23 | 23 | Stage 1Montemor-o-Novo - Moura (208.0km) | 208.0km |
| 17-03 | 26 | | Classica da Arrabida - Cyclin'Portugal (1.2) | |
| | | International Tour of Rhodes (2.2) |
| 10 | | Klassement |
| 2 | | Berg |
| 10-03 | 45 | 10 | Stage 3Rhodes - Rhodes (181.0km) | 181.0km |
| 09-03 | 10 | 10 | Stage 2Rhodes - Koskinou (156.0km) | 156.0km |
| 08-03 | 52 | 53 | Stage 1Rhodes - Maritsa (148.0km) | 148.0km |
| 03-03 | 76 | | International Rhodes Grand Prix (1.2) | |
| 10-02 | 67 | | Grand Prix Alanya (1.2) | |
| 09-02 | 84 | | Grand Prix Gazipasa (1.2) | |