28.09 | 77 | | | World Championships MU - Road Race (WC) Portugal | 179.5 | | | more |
24.09 | 30 | | | World Championships MU - ITT (WC) Portugal | 27.7 | | | more |
16.09 | DNF | | | Grote Prijs Jef Scherens - Rondom Leuven (1.1) | 185.7 | | | more |
15.09 | 68 | | | Primus Classic (1.HC) | 193 | | | more |
12.09 | 13 | | | Grand Prix de Wallonie (1.1) | 205.9 | 8 | 5 | more |
17.08 › 26.0817-26/8 | | | | Tour de l'Avenir (2.Ncup) Portugal | | | | more |
| 16 | | | Mountains classificationMountains classification | | | | |
| 50 | | | Points classificationPoints classification | | | | |
| 7 | | | General classificationGeneral classification | | 4 | 30 | |
26.08 | 7 | | | S10Stage 10 - Val d'Isère › Saint-Colomban-des-Villards Col du Glandon | 150.8 | | | |
25.08 | 10 | 9 | | S9Stage 9 - Séez › Val d'Isère | 89 | | | |
24.08 | 18 | 10 | | S8Stage 8 - La Bathie › Crest-Voland Cohennoz | 81.1 | | | |
23.08 | 12 | 11 | | S7Stage 7 - Moutiers › Méribel | 35.9 | | | |
22.08 | 74 | 50 | | S6Stage 6 - Le Blanc › Cérilly | 183.5 | | | |
21.08 | 54 | 53 | | S5Stage 5 - Beaugency › Levroux | 130.4 | | | |
20.08 | 17 | 73 | | S4 (TTT)Stage 4 (TTT) - Orléans › Orléans | 20.2 | | | |
19.08 | 70 | 65 | | S3Stage 3 - Le Lude › Châteaudu | 165.8 | | | |
18.08 | 81 | 67 | | S2Stage 2 - Drefféac › Châteaubriant | 137.6 | | | |
17.08 | 65 | 66 | | S1Stage 1 - Grand-Champ › Elven | 132.5 | | | |
15.07 | 36 | | | European Continental Championships MU - Road Race (CC) Portugal | 140.4 | | | more |
13.07 | 10 | | | European Continental Championships MU - ITT (CC) Portugal | 23 | 1 | | more |
23.06 | 2 | | | National Championships Portugal MU - Road Race (NC) | 160.4 | | 30 | more |
22.06 | 2 | | | National Championships Portugal MU - ITT (NC) | 24.1 | | | more |
07.06 › 16.067-16/6 | | | | Giro Ciclistico d'Italia (2.2U) | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 7 | | | Mountains classificationMountains classification | | | | |
| 2 | | | General classificationGeneral classification | | 18 | 25 | |
16.06 | 2 | | | S9b (ITT)Stage 9b (ITT) - Il Muro di cà del Poggio › Cà del Poggio | 22.4 | 2 | | |
16.06 | 43 | 6 | | S9aStage 9a - Conegliano › Valdobbiadene | 72.8 | | | |
15.06 | 4 | 5 | | S8Stage 8 - Levico Terme › Asiago | 157.4 | | | |
14.06 | 4 | 5 | | S7Stage 7 - Schio › Pian Delle Fugazze | 136.9 | | | |
13.06 | 21 | 7 | | S6Stage 6 - Dimaro Folgarida › Pergine Valsugana | 120.7 | | | |
12.06 | 5 | 7 | | S5Stage 5 - Darfo Boario Terme › Dimaro Folgarida (Malga di Dimaro) | 127.8 | | | |
11.06 | 10 | 8 | | S4Stage 4 - Mornico Al Serio › Passo Manivia | 127.9 | | | |
10.06 | 114 | 12 | | S3Stage 3 - Rio Saliceto › Mornico Al Serio | 164.3 | | | |
09.06 | 52 | 10 | | S2Stage 2 - Nonantola › Sestola | 138.2 | | | |
08.06 | 95 | 9 | | S1Stage 1 - Riccione › Forlì | 137.7 | | | |
07.06 | 6 | 6 | | ProloguePrologue - Forlì › Forlì | 4.4 | | | |
17.05 › 20.0517-20/5 | | | | Ronde de l'Isard (2.2U) | | | | more |
| 1 | | | Youth classificationYouth classification | | | | |
| 17 | | | Mountains classificationMountains classification | | | | |
| 5 | | | General classificationGeneral classification | | 8 | 10 | |
20.05 | 10 | | | S4Stage 4 - Salies-du-Salat › Saint-Girons | 152.4 | | | |
19.05 | 37 | 5 | | S3Stage 3 - Lévignac › Boulogne-sur-Gesse | 153.4 | | | |
18.05 | 6 | 5 | | S2Stage 2 - Fonsorbes › Goulier-Neige | 154.3 | | | |
17.05 | 14 | 14 | | S1Stage 1 - Lorp-Sentaraille › Eycheil (Ouerdes) | 125.9 | | | |
25.04 › 01.0525-1/4 | | | | Le Tour de Bretagne Cycliste (2.2) | | | | more |
| 31 | | | Youth classificationYouth classification | | | | |
| 38 | | | Mountains classificationMountains classification | | | | |
| 61 | | | General classificationGeneral classification | | | | |
01.05 | 34 | | | S7Stage 7 - Saint-Pôtan › Dinan | 145 | | | |
30.04 | 63 | 78 | | S6Stage 6 - Plancoët › Dol-de-Bretagne | 151.6 | | | |
29.04 | 58 | 89 | | S5Stage 5 - Colpo › Plancoët | 155.7 | | | |
28.04 | 101 | 108 | | S4Stage 4 - Clohars-Carnoët (Le Pouldu) › Grand-Champ | 162.7 | | | |
27.04 | 96 | 98 | | S3Stage 3 - Baden › Clohars-Carnoët | 181.1 | | | |
26.04 | 121 | 129 | | S2Stage 2 - Louisfert › Plougoumelen | 180 | | | |
25.04 | 56 | 59 | | S1Stage 1 - Châteaubriant › Louisfert | 159.8 | | | |
14.04 | 1 | | | Liège - Bastogne - Liège U23 (1.2U) | 173.4 | 15 | 30 | more |
06.04 › 08.046-8/4 | | | | Circuit des Ardennes International (2.2) | | | | more |
| 22 | | | Youth classificationYouth classification | | | | |
| 70 | | | General classificationGeneral classification | | | | |
08.04 | 97 | | | S4Stage 4 - Charleville-Mézières › Charleville-Mézières | 106 | | | |
08.04 | 67 | 45 | | S3Stage 3 - Donchery › Vivier-au-Court | 79 | | | |
07.04 | 79 | 40 | | S2Stage 2 - Beauraing › Givet | 175 | | | |
06.04 | 24 | 24 | | S1Stage 1 - Bazeilles › Bazeilles | 160 | | | |
31.03 › 02.0431-2/3 | | | | Le Triptyque des Monts et Chateaux (2.2U) | | | | more |
| 20 | | | General classificationGeneral classification | | | | |
02.04 | 42 | | | S3bStage 3b - Chateau de Moulbaix › Beau Site (Saint-Sauveur) | 91.3 | | | |
02.04 | 11 | 12 | | S3a (ITT)Stage 3a (ITT) - Frasnes › Saint-Sauveur | 9.6 | | | |
01.04 | 67 | 60 | | S2Stage 2 - Tournai › Leuze-en-Hainaut | 162.8 | | | |
31.03 | 67 | 68 | | S1Stage 1 - Pecq › Flobecq | 136.4 | | | |
21.03 | 119 | | | Driedaagse Brugge - De Panne ME (1.HC) | 202.4 | | | more |
16.03 | 56 | | | Handzame Classic (1.HC) | 204.1 | | | more |
14.03 | 104 | | | Danilith Nokere Koerse (1.HC) | 191.1 | | | more |
11.03 | 39 | | | Rabobank Dorpenomloop Rucphen (1.2) | 187.5 | | | more |