09.10 | 5 | | | UCI Gravel World Championships ME (GRV) Kazakhstan | 190 | | | more |
06.10 | 52 | | | Gran Piemonte (1.Pro) | 198 | | | more |
02.10 | 2 | | | Il Piccolo Lombardia (1.2U) Astana Qazaqstan Development Team | 170.6 | 10 | 25 | more |
23.09 | 1 | | | World Championships MU - Road Race (WC) | 169.8 | 75 | 200 | more |
18.09 | 28 | | | World Championships ME - ITT (WC) | 34.2 | 10 | | more |
19.08 › 11.0919-11/8 | | | | La Vuelta ciclista a España (2.UWT) | | | | more |
| 36 | | | Youth classificationYouth classification | | | | |
| 98 | | | Points classificationPoints classification | | | | |
| 122 | | | General classificationGeneral classification | | 20 | | |
11.09 | 16 | | | S21Stage 21 - Las Rozas › Madrid | 96.7 | | | |
10.09 | 122 | 123 | | S20Stage 20 - Moralzarzal › Puerto de Navacerrada | 181 | | | |
09.09 | 106 | 123 | | S19Stage 19 - Talavera de la Reina › Talavera de la Reina | 138.3 | | | |
08.09 | 123 | 123 | | S18Stage 18 - Trujillo › Alto del Piornal | 192 | | | |
07.09 | 123 | 124 | | S17Stage 17 - Aracena › Monasterio de Tentudía | 162.3 | | | |
06.09 | 69 | 128 | | S16Stage 16 - Sanlúcar de Barrameda › Tomares | 189.4 | | | |
04.09 | 127 | 129 | | S15Stage 15 - Martos › Sierra Nevada | 152.6 | | | |
03.09 | 125 | 130 | | S14Stage 14 - Montoro › Sierra de La Pandera | 160.3 | | | |
02.09 | 19 | 129 | | S13Stage 13 - Ronda › Montilla | 168.4 | | | |
01.09 | 137 | 131 | | S12Stage 12 - Salobreña › Peñas Blancas. Estepona | 192.7 | | | |
31.08 | 13 | 129 | | S11Stage 11 - ElPozo Alimentación › Cabo de Gata | 191.2 | 3 | | |
30.08 | 35 | 135 | | S10 (ITT)Stage 10 (ITT) - Elche › Alicante | 30.9 | | | |
28.08 | 146 | 141 | | S9Stage 9 - Villaviciosa › Les Praeres. Nava | 171.4 | | | |
27.08 | 118 | 139 | | S8Stage 8 - La Pola Llaviana/Pola de Laviana › Colláu Fancuaya | 153.4 | | | |
26.08 | 153 | 145 | | S7Stage 7 - Camargo › Cistierna | 190 | | | |
25.08 | 127 | 119 | | S6Stage 6 - Bilbao › Ascensión al Pico Jano. San Miguel de Aguayo | 181.2 | | | |
24.08 | 134 | 117 | | S5Stage 5 - Irún › Bilbao | 187.2 | | | |
23.08 | 109 | 105 | | S4Stage 4 - Vitoria-Gasteiz › Laguardia | 152.5 | | | |
21.08 | 26 | 87 | | S3Stage 3 - Breda › Breda | 193.2 | | | |
20.08 | 153 | 89 | | S2Stage 2 - 's-Hertogenbosch › Utrecht | 175.1 | | | |
19.08 | 11 | 92 | | S1 (TTT)Stage 1 (TTT) - Utrecht › Utrecht | 23.3 | | | |
30.07 › 05.0830-5/7 | | | | Tour de Pologne (2.UWT) | | | | more |
| 21 | | | Mountains classificationMountains classification | | | | |
| 66 | | | General classificationGeneral classification | | 5 | | |
05.08 | 54 | | | S7Stage 7 - Valsir › Kraków | 177.8 | | | |
04.08 | 40 | 67 | | S6 (ITT)Stage 6 (ITT) - Nowy Targ (Gronków) › Stacja Narciarska Rusiński | 11.8 | | | |
03.08 | 78 | 72 | | S5Stage 5 - Łańcut › Rzeszów 168k | 178.1 | | | |
02.08 | 36 | 75 | | S4Stage 4 - Lesko › Sanok | 179.4 | | | |
01.08 | 86 | 83 | | S3Stage 3 - Kraśnik › Przemyśl | 237.9 | | | |
31.07 | 65 | 49 | | S2Stage 2 - Chełm › Zamość | 205.6 | | | |
30.07 | 45 | 47 | | S1Stage 1 - Kielce › Lublin | 218.8 | | | |
12.06 › 19.0612-19/6 | | | | Tour de Suisse (2.UWT) | | | | more |
16.06 | DNS | | | S5Stage 5 - Ambri › Novazzano | 190.1 | | | |
15.06 | 132 | 131 | | S4Stage 4 - Grenchen › Brunnen | 190.8 | | | |
14.06 | 120 | 129 | | S3Stage 3 - Aesch › Grenchen | 176.9 | | | |
13.06 | 137 | 127 | | S2Stage 2 - Küsnacht › Aesch | 198 | | | |
12.06 | 107 | 107 | | S1Stage 1 - Küsnacht › Küsnacht | 177.6 | | | |
11.05 › 15.0511-15/5 | | | | Tour de Hongrie (2.1) | | | | more |
| 27 | | | General classificationGeneral classification | | | | |
15.05 | 31 | | | S5Stage 5 - Miskolc › Gyöngyös-Kékestető | 184 | | | |
14.05 | 53 | 45 | | S4Stage 4 - Kazincbarcika › Kazincbarcika | 177 | | | |
13.05 | 67 | 42 | | S3Stage 3 - Sárospatak › Nyíregyháza | 154 | | | |
12.05 | 59 | 42 | | S2Stage 2 - Karcag › Hajdúszoboszló | 192 | | | |
11.05 | 36 | 40 | | S1Stage 1 - Csákvár › Székesfehérvár | 197.5 | | | |
20.04 | DNF | | | La Flèche Wallonne (1.UWT) | 202.1 | | | more |
17.04 | 100 | | | Paris-Roubaix (1.UWT) | 257.2 | 5 | | more |
03.04 | 101 | | | Ronde van Vlaanderen - Tour des Flandres ME (1.UWT) | 272.5 | 5 | | more |
30.03 | 84 | | | Dwars door Vlaanderen - A travers la Flandre ME (1.UWT) | 183.7 | 5 | | more |
27.03 | 1 | | | Asian Continental Championships ME - ITT (CC) | 24 | 60 | 70 | more |
25.03 | 1 | | | Asian Continental Championships ME - TTT (CC) Kazakhstan | 24 | | 17.5 | more |
06.03 › 13.036-13/3 | | | | Paris - Nice (2.UWT) | | | | more |
12.03 | DNS | | | S7Stage 7 - Nice › Col de Turini | 155.2 | | | |
11.03 | 97 | 66 | | S6Stage 6 - Courthézon › Aubagne 161k | 213.6 | | | |
10.03 | 44 | 40 | | S5Stage 5 - Saint-Just-Saint-Rambert › Saint-Sauveur-de-Montagut | 188.8 | | | |
09.03 | 26 | 50 | | S4 (ITT)Stage 4 (ITT) - Domérat › Montluçon | 13.4 | | | |
08.03 | 19 | 56 | | S3Stage 3 - Vierzon › Dun-le-Palestel | 190.8 | | | |
07.03 | 70 | 67 | | S2Stage 2 - Auffargis › Orléans | 159.2 | | | |
06.03 | 89 | 74 | | S1Stage 1 - Mantes-la-Ville › Mantes-la-Ville | 159.8 | | | |
26.02 | DNF | | | Omloop Het Nieuwsblad ME (1.UWT) | 204.2 | | | more |
16.02 › 20.0216-20/2 | | | | Vuelta a Andalucia Ruta Ciclista Del Sol (2.Pro) | | | | more |
| 74 | | | General classificationGeneral classification | | | | |
20.02 | 87 | | | S5Stage 5 - Huesa › Chiclana de Segura | 146.4 | | | |
19.02 | 53 | 77 | | S4Stage 4 - Cúllar Vega › Baza | 167.4 | | | |
18.02 | 96 | 74 | | S3Stage 3 - Lucena › Otura | 153.2 | | | |
17.02 | 71 | 69 | | S2Stage 2 - Archidona › Alcalá la Real | 150.6 | | | |
16.02 | 78 | 79 | | S1Stage 1 - Ubrique › Iznájar | 200.7 | | | |
14.02 | DNF | | | Clásica Jaén Paraiso Interior (1.1) | 187.8 | | | more |
13.02 | 29 | | | Clasica de Almeria (1.Pro) | 188.2 | | 5 | more |
12.02 | 88 | | | Vuelta Ciclista a la Region de Murcia Costa Calida (1.1) | 183.2 | | | more |