27.07 | 6 | | | GP Mortágua - Pedro Silva (NAT) | 144 | | | more |
20.07 | 8 | | | Dorletako Amaren Sari Nagusia (NAT) | 118 | | | more |
10.07 › 13.0710-13/7 | | | | GP Internacional Torres Vedras - Trofeu Joaquim Agostinho (2.2) | | | | more |
| 3 | | | Youth classificationYouth classification | | | | |
| 30 | | | General classificationGeneral classification | | | | |
13.07 | 36 | | | S3Stage 3 - Lourinha › Torres Vedras | 172.5 | | | |
12.07 | 28 | 29 | | S2Stage 2 - Bombarral › Alto do Montejunto | 161.3 | | | |
11.07 | 19 | 48 | | S1Stage 1 - Arruda dos Vinhos › Sobral de Monte Agraço | 181.4 | | | |
10.07 | 66 | 66 | | ProloguePrologue - Turcifal › Turcifal | 8 | | | |
30.05 › 01.0630-1/5 | | | | Grande Prémio Abimota (NAT) | | | | more |
| 24 | | | General classificationGeneral classification | | | | |
01.06 | 16 | | | S3Stage 3 - Vagos › Águeda | 136 | | | |
31.05 | 13 | | | S2Stage 2 - Vouzela › Vouzela | 156.2 | | | |
30.05 | 35 | | | S1Stage 1 - Proença-a-Nova › Anadia | 185.8 | | | |
21.05 › 25.0521-25/5 | | | | Ronde de l'Isard (2.2U) | | | | more |
21.05 | DNF | | | S1Stage 1 - Saint-Mont › Bagnères-de-Bigorre | 149.19 | | | |
01.05 › 04.051-4/5 | | | | Volta a Portugal do Futuro (NAT) | | | | more |
| 5 | | | General classificationGeneral classification | 153.3 | | | |
04.05 | 33 | | | S4Stage 4 - Ansião › Leiria | 153.5 | | | |
03.05 | 3 | | | S3Stage 3 - Castanheira de Pera › Figueiró dos Vinhos | 140.7 | | | |
02.05 | 11 | | | S2Stage 2 - Águeda › São Pedro do Sul | 124.8 | | | |
01.05 | 8 | | | S1Stage 1 - Pombal › Aveiro | 126.9 | | | |
26.03 › 30.0326-30/3 | | | | Volta ao Alentejo (2.2) | | | | more |
| 43 | | | Youth classificationYouth classification | | | | |
| 104 | | | General classificationGeneral classification | | | | |
30.03 | 87 | | | S5Stage 5 - Estremoz › Évora | 151.5 | | | |
29.03 | 101 | 103 | | S4Stage 4 - Monforte › Castelo de Vide | 147.7 | | | |
28.03 | 121 | 65 | | S3Stage 3 - Carvalhal › Arraiolos | 181.5 | | | |
27.03 | 40 | 36 | | S2Stage 2 - Castro Verde › Grândola | 171.5 | | | |
26.03 | 43 | 45 | | S1Stage 1 - Beja › Moura | 166.6 | | | |
23.03 | DNF | | | Troféu Internacional da Arrábida (1.2) | 173.8 | | | more |
09.03 | 22 | | | Cape Town Cycle Tour (NAT) | 109 | 2 | | more |
23.02 › 02.0323-2/2 | | | | Tour du Rwanda (2.1) South Africa | | | | more |
| 9 | | | Youth classificationYouth classification | | | | |
| 22 | | | General classificationGeneral classification | | | 3 | |
02.03 | NR | | | S7Stage 7 - Kigali › Kigali | 74 46.2 | | | |
01.03 | 23 | 22 | | S6Stage 6 - Nyanza › Kigali | 131.5 | | | |
28.02 | 27 | 25 | | S5Stage 5 - Rusizi › Butare (Huye) | 144 | | | |
27.02 | 33 | 26 | | S4Stage 4 - Gisenyi (Rubavu) › Gitesi (Karongi) | 95.1 | | | |
26.02 | 25 | 25 | | S3Stage 3 - Musanze › Gisenyi (Rubavu) | 121.3 | | | |
25.02 | 8 | 15 | | S2Stage 2 - Kigali › Musanze | 112.8 | 1 | | |
24.02 | 16 | 20 | | S1Stage 1 - Rukomo › Kayonza | 157.8 | | | |
23.02 | 23 | 23 | | ProloguePrologue - BK Arena › Amahoro Stadium | 3.4 | | | |
09.02 | 10 | | | National Championships South Africa ME - Road Race (NC) | 165 | | 3 | more |
07.02 | 6 | | | National Championships South Africa MU - ITT (NC) | 33 | | | more |
24.01 › 28.0124-28/1 | | | | Tour of Sharjah (2.2) | | | | more |
| 4 | | | Youth classificationYouth classification | | | | |
| 31 | | | Points classificationPoints classification | | | | |
| 18 | | | Tour of SharjahTour of Sharjah | | | | |
28.01 | 26 | | | S5Stage 5 - Heritage Village, AlHamriya › Al Jada, Sharjah | 121.87 | | | |
27.01 | 28 | 18 | | S4Stage 4 - Al Hefaiyah Lake, Kalba › Al Suhub Rest Area, Khorfakkan | 132.32 | | | |
26.01 | 45 | 16 | | S3 (ITT)Stage 3 (ITT) - Sharjah University City › Sharjah University City | 11.16 | | | |
25.01 | 13 | 11 | | S2Stage 2 - Wheat Farm, Maliha › Al Dhaid University | 127 | | | |
24.01 | 13 | 13 | | S1Stage 1 - Almajaz Amphitheatre, Sharjah › Hanging Gardens, Kalba | 133.2 | | | |