| 12-10 | 97 | | Paris - Tours Elite (1.Pro) | 211.0km |
| 05-10 | DNF | | UEC Road European Championships (CC) | 202.0km |
| 28-09 | DNF | | UCI World Championship Kigali (CM) | 267.0km |
| | | Okolo Slovenska / Tour de Slovaquie (2.1) |
| 17 | | Klassement |
| 12 | | Berg |
| 6 | | Jongeren |
| 21-09 | 18 | 17 | Stage 5Nová Dubnica - Kohútka (124.0km) | 124.0km |
| 20-09 | 50 | 47 | Stage 4Vráble - Sládkovičovo (169.0km) | 169.0km |
| 19-09 | 61 | 49 | Stage 3Kežmarok - Banská Bystrica (191.0km) | 191.0km |
| 18-09 | 35 | 40 | Stage 2Svidník - Košice (170.0km) | 170.0km |
| 17-09 | 50 | 52 | Stage 1Bardejov - Bardejov (140.0km) | 140.0km |
| 31-08 | 96 | | Bretagne Classic - Ouest-France (1.UWT) | 261.0km |
| | | Renewi Tour (2.UWT) |
| 87 | | Klassement |
| 8 | | Jongeren |
| 24-08 | 56 | 87 | Stage 5Leuven - Leuven (185.0km) | 185.0km |
| 23-08 | 119 | 107 | Stage 4Riemst - Bilzen (196.0km) | 196.0km |
| 22-08 | 71 | 100 | Stage 3Aalter - Geraardsbergen (179.0km) | 179.0km |
| 21-08 | 99 | 113 | Stage 2Blankenberge - Ardooie (169.0km) | 169.0km |
| 20-08 | 117 | 117 | Stage 1Terneuzen - Breskens (182.0km) | 182.0km |
| 17-08 | 65 | | ADAC Cyclassics (1.UWT) | 206.0km |
| | | Tour de Pologne (2.UWT) |
| 27 | | Klassement |
| 17 | | Berg |
| 10-08 | 38 | 27 | Stage 7Wieliczka - Wieliczka (12.0km) | 12.0km |
| 09-08 | 25 | 28 | Stage 6Bukovina Resort - Bukowina Tatrzańska (147.0km) | 147.0km |
| 08-08 | 58 | 45 | Stage 5Katowice - Zakopane (205.0km) | 205.0km |
| 07-08 | 61 | 41 | Stage 4Rybnik - Cieszyn (200.0km) | 200.0km |
| 06-08 | 42 | 48 | Stage 3Walbrzych - Walbrzych (161.0km) | 161.0km |
| 05-08 | 51 | 49 | Stage 2Karpacz - Karpacz (148.0km) | 148.0km |
| 04-08 | 111 | 110 | Stage 1Wroclaw - Legnica (199.0km) | 199.0km |
| 02-08 | 75 | | Donostia San Sebastian Klasikoa (1.UWT) | 211.0km |
| | | Tour de Suisse (2.UWT) |
| 17-06 | DNF | | Stage 3Aarau - Heiden (195.0km) | 195.0km |
| 16-06 | 139 | 130 | Stage 2Aarau - Schwarzsee (177.0km) | 177.0km |
| 15-06 | 82 | 82 | Stage 1Küssnacht am Rigi - Küssnacht am Rigi (129.0km) | 129.0km |
| | | 4 Jours de Dunkerque (2.Pro) |
| 16-05 | DNS | | Stage 3Valenciennes - Famars (154.0km) | 154.0km |
| 15-05 | 114 | 85 | Stage 2Avesnes-sur-Helpe - Crépy-en-Valois (178.0km) | 178.0km |
| 14-05 | 62 | 63 | Stage 1Sainte-Catherine - Amiens (177.0km) | 177.0km |
| 13-05 | 23 | | Classique Dunkerque (1.Pro) | 193.0km |
| | | Tour de Romandie (2.UWT) |
| 70 | | Klassement |
| 27 | | Jongeren |
| 04-05 | 72 | 70 | Stage 5Genève - Genève (17.0km) | 17.0km |
| 03-05 | 58 | 69 | Stage 4Sion - Thyon (128.0km) | 128.0km |
| 02-05 | 72 | 77 | Stage 3Cossonay - Cossonay (183.0km) | 183.0km |
| 01-05 | 91 | 98 | Stage 2La Grande Béroche - La Grande Béroche (157.0km) | 157.0km |
| 30-04 | 114 | 106 | Stage 1Münchenstein - Fribourg (194.0km) | 194.0km |
| 29-04 | 84 | 84 | PrologueSaint-Imier - Saint-Imier (3.0km) | 3.0km |
| 20-04 | 37 | | Tour du Doubs (1.1) | 196.0km |
| 19-04 | 48 | | Tour du Jura Cycliste (1.1) | 176.0km |
| 18-04 | 43 | | Classic Grand Besançon Doubs (1.1) | 168.0km |
| 05-04 | 26 | | Volta NXT Classic (1.1) | 192.0km |
| | | Volta Ciclista a Catalunya (2.UWT) |
| 60 | | Klassement |
| 14 | | Jongeren |
| 30-03 | 74 | 60 | Stage 7Barcelona - Barcelona (88.0km) | 88.0km |
| 29-03 | 80 | 65 | Stage 6Berga - Nuestra Senore de Queralt (25.0km) | 25.0km |
| 28-03 | 23 | 66 | Stage 5Paüls - Amposta (172.0km) | 172.0km |
| 27-03 | 70 | 72 | Stage 4Sant Vicenç de Castellet - Monasterio de Montserrat (188.0km) | 188.0km |
| 26-03 | 101 | 82 | Stage 3Viladecans - La Molina (218.0km) | 218.0km |
| 25-03 | 71 | 32 | Stage 2Banyoles - Figueres (177.0km) | 177.0km |
| 24-03 | 35 | 35 | Stage 1Sant Feliu de Guíxols - Sant Feliu de Guíxols (178.0km) | 178.0km |
| 20-03 | 42 | | Grand Prix de Denain - Porte du Hainaut (1.Pro) | 197.0km |
| 08-03 | DNF | | Strade Bianche (1.UWT) | 213.0km |
| 02-03 | 49 | | Faun Drome Classic (1.Pro) | 189.0km |
| 01-03 | 56 | | Faun-Ardèche Classic (1.Pro) | 165.0km |
| 17-02 | 63 | | Clásica Jaén (1.1) | 169.0km |
| | | Santos Tour Down Under (2.UWT) |
| 34 | | Klassement |
| 5 | | Jongeren |
| 26-01 | 75 | 34 | Stage 6Adelaide - Adelaide (90.0km) | 90.0km |
| 25-01 | 44 | 34 | Stage 5McLaren Vale - Willunga (145.0km) | 145.0km |
| 24-01 | 34 | 38 | Stage 4Glenelg Shire - Victor Harbor (157.0km) | 157.0km |
| 23-01 | 43 | 42 | Stage 3Norwood - Uraidla (147.0km) | 147.0km |
| 22-01 | 79 | 66 | Stage 2Tanunda - Tanunda (128.0km) | 128.0km |
| 21-01 | 55 | 58 | Stage 1Prospect - Gumeracha (150.0km) | 150.0km |
| 18-01 | 24 | | Villawood Men's Classic (CRTP) | |