| | | Tour de l'Avenir (2.NCUP) |
| 24-08 | OTL | | Stage 9Villaroger - Tignes (67.0km) | 67.0km |
| 23-08 | 107 | 111 | Stage 8Brides-les-Bains - Méribel (23.0km) | 23.0km |
| 22-08 | 101 | 111 | Stage 7Grésy-sur-Isere - La Giettaz (103.0km) | 103.0km |
| 20-08 | 119 | 115 | Stage 6Saint-Julien-Chapteuil - Privas (124.0km) | 124.0km |
| 19-08 | 111 | 120 | Stage 5Espalion - Saint-Julien-Chapteuil (158.0km) | 158.0km |
| 18-08 | 65 | 120 | Stage 4Mauriac - Espalion (158.0km) | 158.0km |
| 17-08 | 109 | 123 | Stage 3Montignac-Lascaux - Mauriac (162.0km) | 162.0km |
| 16-08 | | 141 | Stage 2Eymet - Bergerac (32.0km) | 32.0km |
| 15-08 | 140 | 146 | Stage 1Marmande - Marmande (128.0km) | 128.0km |
| 20-07 | DNS | | Portugese National Championships - XCO U23 (CN) | |
| | | Tour of Qinghai Lake (2.HC) |
| 92 | | Klassement |
| 20 | | Punten |
| 27-07 | 37 | 92 | Stage 13Yinchuan - Yinchuan (117.0km) | 117.0km |
| 26-07 | 29 | 92 | Stage 12Zhongwei - Zhongwei (111.0km) | 111.0km |
| 25-07 | 17 | 92 | Stage 11Minqin - Tengger (153.0km) | 153.0km |
| 24-07 | 13 | 93 | Stage 10Jingchang - Wuwei (116.0km) | 116.0km |
| 22-07 | 133 | 96 | Stage 9Menyuan - Minie (160.0km) | 160.0km |
| 21-07 | 110 | 68 | Stage 8Xihaizhen - Qingshizui (224.0km) | 224.0km |
| 20-07 | 113 | 63 | Stage 7Haiyan - Haiyan (42.0km) | 42.0km |
| 19-07 | 96 | 60 | Stage 6Chaka - Bird Island (136.0km) | 136.0km |
| 18-07 | 4 | 55 | Stage 5Gongha - Chaka (173.0km) | 173.0km |
| 17-07 | 62 | 55 | Stage 4Guide - Longyangxia (100.0km) | 100.0km |
| 16-07 | 51 | 53 | Stage 3Duoba - Guide (140.0km) | 140.0km |
| 15-07 | 7 | | Stage 2Xining - Xining (119.0km) | 119.0km |
| 14-07 | 10 | 48 | Stage 1Hehuang - Xining (40.0km) | 40.0km |
| 29-06 | 5 | | National Road Championships - Portugal U23 (CN) | |
| 16-06 | 40 | | Portugal Cup XCO - Valongo (1) | |
| | | Course de la Paix Grand Prix Priessnitz spa (2.NCUP) |
| 91 | | Klassement |
| 9 | | Punten |
| 20 | | Berg |
| 09-06 | 92 | 91 | Stage 3Jeseník - Jeseník (171.0km) | 171.0km |
| 08-06 | 108 | 104 | Stage 2Krnov - Dlouhé (150.0km) | 150.0km |
| 07-06 | 3 | 4 | Stage 1Jeseník - Rýmařov (134.0km) | 134.0km |
| 06-06 | 75 | 75 | PrologueKrnov - Krnov (2.0km) | 2.0km |
| | | Vuelta Ciclista Comunidad de Madrid (2.1) |
| 37 | | Klassement |
| 12 | | Punten |
| 12-05 | 6 | 37 | Stage 3Madrid - Madrid (99.0km) | 99.0km |
| 11-05 | 36 | 37 | Stage 2San Martín de Valdeiglesias - San Martín de Valdeiglesias (164.0km) | 164.0km |
| 10-05 | 24 | 24 | Stage 1Aranjuez - Aranjuez (164.0km) | 164.0km |
| 05-05 | 105 | | Entre Brenne et Montmorillonnais (1.2) | |
| 04-05 | 58 | | L'Etoile d'Or (1.NCUP) | |
| | | Vuelta a Castilla y Leon (2.1) |
| 71 | | Klassement |
| 12 | | Berg |
| 27-04 | 72 | 71 | Stage 3León - Villafranca del Bierzo (151.0km) | 151.0km |
| 26-04 | 88 | 94 | Stage 2Fromista - Villada (170.0km) | 170.0km |
| 25-04 | 106 | 106 | Stage 1Belorado - Castrojeriz (181.0km) | 181.0km |
| | | GP Beiras e Serra da Estrela (2.1) |
| 42 | | Klassement |
| 14-04 | 43 | 42 | Stage 3Celorico da Beira - Colvilha (177.0km) | 177.0km |
| 13-04 | 20 | 4 | Stage 2Manteigas - Fundão (197.0km) | 197.0km |
| 12-04 | 2 | 3 | Stage 1V. Formoso - Pinhel (155.0km) | 155.0km |