| 13-10 | 7 | | UEC Gravel European Championships (CC) | 153.0km |
| | | Petronas Le Tour de Langkawi (2.Pro) |
| 20 | | Klassement |
| 35 | | Punten |
| 13 | | Berg |
| 06-10 | 69 | 20 | Stage 8Bintulu - Bintulu (145.0km) | 145.0km |
| 05-10 | 67 | 20 | Stage 7Miri - Bintulu (199.0km) | 199.0km |
| 04-10 | 54 | 20 | Stage 6Batu Pahat - Kulai (123.0km) | 123.0km |
| 03-10 | 44 | 20 | Stage 5Kuala Lumpur - Melaka (167.0km) | 167.0km |
| 02-10 | 29 | 21 | Stage 4Kuala Kubu Bharu - Bentong (131.0km) | 131.0km |
| 01-10 | 22 | 22 | Stage 3Taiping - Cameron Highlands (170.0km) | 170.0km |
| 30-09 | 69 | 82 | Stage 2Arau - Butterworth (154.0km) | 154.0km |
| 29-09 | 95 | 96 | Stage 1Langkawi - Langkawi (96.0km) | 96.0km |
| 21-09 | 50 | | SUPER 8 Classic (1.Pro) | 197.0km |
| 20-09 | 93 | | Kampioenschap van Vlaanderen (1.1) | 181.0km |
| 18-09 | 110 | | Grand Prix de Wallonie (1.Pro) | 202.0km |
| 15-09 | 22 | | UEC Road European Championships (CC) | 222.0km |
| 12-09 | DNF | | Gran Premio città di Peccioli - Coppa Sabatini (1.Pro) | 197.0km |
| 11-09 | 65 | | Giro della Toscana - Memorial Alfredo Martini (1.1) | 182.0km |
| | | Renewi Tour (2.UWT) |
| 01-09 | DNF | | Stage 5Menen - Geraardsbergen (202.0km) | 202.0km |
| 31-08 | 54 | 77 | Stage 4Oostburg - Aalter (178.0km) | 178.0km |
| 30-08 | 61 | 79 | Stage 3Blankenberge - Ardooie (185.0km) | 185.0km |
| 29-08 | 101 | 84 | Stage 2Tessenderlo - Tessenderlo (15.0km) | 15.0km |
| 28-08 | 92 | 92 | Stage 1Riemst - Bilzen (163.0km) | 163.0km |
| 23-08 | DNF | | Druivenkoers - Overijse (1.1) | 206.0km |
| | | Arctic Race of Norway (2.Pro) |
| 73 | | Klassement |
| 19 | | Punten |
| 4 | | Berg |
| 07-08 | 67 | 73 | Stage 4Glomfjord - Bodø (156.0km) | 156.0km |
| 06-08 | 69 | 74 | Stage 3Tverlandet - Sulitjelma (155.0km) | 155.0km |
| 05-08 | 87 | 84 | Stage 2Beiarn - Fauske (175.0km) | 175.0km |
| 04-08 | 35 | 37 | Stage 1Bodø - Rognan (156.0km) | 156.0km |
| 23-06 | 2 | | National Road Championships - Switzerland (CN) | 184.0km |
| | | Tour of Slovenia (2.Pro) |
| 76 | | Klassement |
| 16-06 | 104 | 76 | Stage 5Sentjernej - Novo Mesto (159.0km) | 159.0km |
| 15-06 | 83 | 64 | Stage 4Škofljica - Krvavec (147.0km) | 147.0km |
| 14-06 | 57 | 52 | Stage 3 Ljubljana - Nova Gorica (160.0km) | 160.0km |
| 13-06 | 74 | 50 | Stage 2Zalec - Rogaška Slatina (180.0km) | 180.0km |
| 12-06 | 45 | 50 | Stage 1Murska Sobota - Ormoz (192.0km) | 192.0km |
| 07-06 | 12 | | Grosser Preis des Kantons Aargau (1.1) | 173.0km |
| | | Boucles de la Mayenne - Crédit Mutuel (2.Pro) |
| 27 | | Klassement |
| 26-05 | 50 | 27 | Stage 3Quelaines-Saint-Gault - Laval (169.0km) | 169.0km |
| 25-05 | 33 | 27 | Stage 2Le Ham - Villaines-la-Juhel (208.0km) | 208.0km |
| 23-05 | 72 | 72 | PrologueLaval - Laval (5.0km) | 5.0km |
| 20-05 | 27 | | Ronde van Limburg (1.1) | 195.0km |
| 18-05 | 69 | | Veenendaal-Veenendaal (1.1) | 171.0km |
| | | Tour de Hongrie (2.Pro) |
| 57 | | Klassement |
| 12-05 | 66 | 57 | Stage 5Siofok - Pécs (173.0km) | 173.0km |
| 11-05 | 66 | 56 | Stage 4Budapest - Etyek (165.0km) | 165.0km |
| 10-05 | 58 | 54 | Stage 3Kazincbarcika - Gyöngyös (182.0km) | 182.0km |
| 09-05 | 20 | 27 | Stage 2Tokaj - Kazincbarcika (162.0km) | 162.0km |
| 08-05 | 38 | 41 | Stage 1Karcag - Hajdúszoboszló (169.0km) | 169.0km |
| 01-05 | 48 | | Eschborn-Frankfurt (1.UWT) | 203.0km |
| | | Tour of the Alps (2.Pro) |
| 60 | | Klassement |
| 10 | | Punten |
| 11 | | Berg |
| 19-04 | 87 | 60 | Stage 5Levico Terme - Levico Terme (118.0km) | 118.0km |
| 18-04 | 48 | 61 | Stage 4Laives - Borgo Valsugana (141.0km) | 141.0km |
| 17-04 | 83 | 61 | Stage 3Schwaz - Schwaz (127.0km) | 127.0km |
| 16-04 | 3 | 53 | Stage 2Salorno - Stans (189.0km) | 189.0km |
| 15-04 | 88 | 88 | Stage 1Neumarkt - Kurtinig an der Weinstraße (133.0km) | 133.0km |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 88 | | Klassement |
| 23-03 | 86 | 88 | Stage 5Forlì - Forlì (157.0km) | 157.0km |
| 22-03 | 114 | 96 | Stage 4Brisighella - Brisighella (150.0km) | 150.0km |
| 21-03 | 86 | 95 | Stage 3Riccione - Riccione (134.0km) | 134.0km |
| 20-03 | 94 | 104 | Stage 2Riccione - Sogliano al Rubicone (140.0km) | 140.0km |
| 19-03 | 95 | 95 | Stage 1Pesaro - Pesaro (109.0km) | 109.0km |
| 13-03 | 103 | | Milano - Torino (1.Pro) | 177.0km |
| 03-03 | 46 | | Grote prijs Jean - Pierre Monseré
(1.1) | 200.0km |
| 02-03 | 106 | | Grand Prix Criquielion (1.1) | 200.0km |
| 28-02 | DNF | | Trofeo Laigueglia (1.Pro) | 202.0km |
| 25-02 | 71 | | Faun Drome Classic (1.1) | 189.0km |
| 24-02 | 74 | | Faun-Ardèche Classic (1.Pro) | 169.0km |
| | | Tour of Antalya (2.1) |
| 77 | | Klassement |
| 11-02 | 72 | 77 | Stage 4Antalya - Antalya (185.0km) | 185.0km |
| 10-02 | 79 | 80 | Stage 3Kemer - Tahtali (136.0km) | 136.0km |
| 09-02 | 83 | 84 | Stage 2Demre - Antalya (141.0km) | 141.0km |
| 08-02 | 73 | 74 | Stage 1Side - Antalya (150.0km) | 150.0km |
| | | AlUla Tour (2.1) |
| 61 | | Klassement |
| 03-02 | 63 | 61 | Stage 5Al-'Ula Old Town - Skyviews of Harrat Uwayrid (150.0km) | 150.0km |
| 02-02 | 84 | 68 | Stage 4Hegra - Maraya (142.0km) | 142.0km |
| 01-02 | 40 | 74 | Stage 3AlUla International Airport - AlUla Camel Cup Track (170.0km) | 170.0km |
| 31-01 | 91 | 88 | Stage 2Winter Park - Sharaan Nature Reserve (199.0km) | 199.0km |
| 30-01 | 72 | 72 | Stage 1Al Manshiyah - Al Manshiyah (149.0km) | 149.0km |