| | | Gree-Tour of Guangxi (2.UWT) |
| 88 | | Klassement |
| 17-10 | 59 | 88 | Stage 6Guilin - Guilin (168.0km) | 168.0km |
| 16-10 | 47 | 90 | Stage 5Liuzhou - Guilin (209.0km) | 209.0km |
| 15-10 | 101 | 101 | Stage 4Nanning - Mashan Nongla (161.0km) | 161.0km |
| 14-10 | 97 | 98 | Stage 3Nanning - Nanning (134.0km) | 134.0km |
| 13-10 | 62 | 64 | Stage 2Beihai - Qinzhou (149.0km) | 149.0km |
| 12-10 | 63 | 66 | Stage 1Beihai - Beihai (135.0km) | 135.0km |
| 16-09 | DNF | | Super 8 Classic / Primus Classic (1.Pro) | 203.0km |
| 15-09 | 117 | | Kampioenschap van Vlaanderen (1.1) | 165.0km |
| 13-09 | 32 | | Grand Prix de Wallonie (1.Pro) | 201.0km |
| | | Deutschland Tour (2.Pro) |
| 50 | | Klassement |
| 27-08 | 15 | 50 | Stage 4Hannover - Bremen (180.0km) | 180.0km |
| 26-08 | 101 | 51 | Stage 3Arnsberg - Essen (174.0km) | 174.0km |
| 25-08 | 16 | 26 | Stage 2Kassel - Winterberg (190.0km) | 190.0km |
| 24-08 | 49 | 49 | Stage 1Sankt-Wendel - Merzig (178.0km) | 178.0km |
| 23-08 | 96 | 96 | PrologueSankt-Wendel - Sankt-Wendel (2.0km) | 2.0km |
| 20-08 | 100 | | BEMER Cyclassics (1.UWT) | 205.0km |
| | | Vuelta a Castilla y Leon (2.1) |
| 41 | | Klassement |
| 27-07 | 34 | 41 | Stage 2Coca - Segovia (186.0km) | 186.0km |
| 26-07 | 84 | 85 | Stage 1Soria - Soria (168.0km) | 168.0km |
| 25-07 | 20 | | Prueba Villafranca - Ordiziako Klasika (1.1) | |
| 07-07 | 5 | | Juegos Deportivos Centroamerican (JR) | |
| | | La Route d'Occitanie - La Dépêche du Midi (2.1) |
| 83 | | Klassement |
| 18-06 | 89 | 83 | Stage 4Saint-Gaudens - Saint-Girons (164.0km) | 164.0km |
| 17-06 | 59 | 80 | Stage 3Gimont - Nistos Cap Nestès (189.0km) | 189.0km |
| 16-06 | 35 | 93 | Stage 2Cazouls-lès-Béziers - Graulhet (182.0km) | 182.0km |
| 15-06 | 108 | 109 | Stage 1Narbonne - Gruissan (184.0km) | 184.0km |
| 13-06 | 81 | | CIC - Mont Ventoux (1.Pro) | 154.0km |
| | | Vuelta Asturias Julio Alvarez Mendo (2.1) |
| 59 | | Klassement |
| 21 | | Punten |
| 21 | | Berg |
| 30-04 | 11 | 59 | Stage 3Cangas del Narcea - Oviedo (147.0km) | 147.0km |
| 29-04 | 63 | 75 | Stage 2Candás - Cangas del Narcea (183.0km) | 183.0km |
| 28-04 | 89 | 89 | Stage 1Oviedo - Pola de Lena (181.0km) | 181.0km |
| | | Tour of the Alps (2.Pro) |
| 21-04 | DNF | | Stage 5Cavalese - Brunico (144.0km) | 144.0km |
| 20-04 | 90 | 78 | Stage 4Rovereto - Predazzo (152.0km) | 152.0km |
| 19-04 | 52 | 78 | Stage 3Ritten - Brentonico San Valentino (162.0km) | 162.0km |
| 18-04 | 121 | 91 | Stage 2Reith im Alpbachtal - Ritten (165.0km) | 165.0km |
| 17-04 | 79 | 79 | Stage 1Rattenberg - Alpbach (127.0km) | 127.0km |
| | | O Gran Camiño (2.1) |
| 24-02 | 111 | 111 | Stage 2A Guarda - Monte Trega (188.0km) | 188.0km |
| | | Tour of Oman (2.Pro) |
| 57 | | Klassement |
| 15-02 | 43 | 57 | Stage 5Samail - Jabal al Akhdhar (Green Mountain) (152.0km) | 152.0km |
| 14-02 | 92 | 65 | Stage 4Izki - Yitti Hills (204.0km) | 204.0km |
| 13-02 | 50 | 53 | Stage 3Al Khobar - Jabal Haat (151.0km) | 151.0km |
| 12-02 | 65 | 64 | Stage 2Muscat - Qurayyat (174.0km) | 174.0km |
| 11-02 | 76 | 77 | Stage 1Al Rustaq Fort - Muscat (147.0km) | 147.0km |
| 10-02 | 65 | | Muscat Classic (1.1) | 173.0km |
| | | Vuelta a San Juan Internacional (2.Pro) |
| 17 | | Klassement |
| 17 | | Berg |
| 29-01 | 55 | 17 | Stage 7San Juan - San Juan (112.0km) | 112.0km |
| 28-01 | 85 | 17 | Stage 6San Juan - San Juan (144.0km) | 144.0km |
| 27-01 | 20 | 18 | Stage 5San Juan - Alto de Colorado (173.0km) | 173.0km |
| 25-01 | 39 | 36 | Stage 4San Juan - Barreal (196.0km) | 196.0km |
| 24-01 | 52 | 52 | Stage 3San Juan - San Juan (170.0km) | 170.0km |
| 23-01 | 59 | 65 | Stage 2Villa San Augustin - San José de Jáchal (201.0km) | 201.0km |
| 22-01 | 84 | 80 | Stage 1San Juan - San Juan (143.0km) | 143.0km |