| 08-10 | 61 | | UCI Gravel World Championship (CM) | 169.0km |
| 03-10 | DNS | | Sparkassen Münsterland Giro (1.Pro) | |
| 01-10 | DNF | | Lotto Famenne Ardenne Classic (1.1) | 188.0km |
| 30-09 | 54 | | Grand Prix Cerami (1.2) | |
| 28-09 | DNF | | Circuit Franco-Belge (1.Pro) | 190.0km |
| | | Tour of Britain (2.Pro) |
| 09-09 | DNS | | Stage 7Tewkesbury - Gloucester (170.0km) | 170.0km |
| 08-09 | 90 | 60 | Stage 6Southend-on-Sea - Harlow (146.0km) | 146.0km |
| 07-09 | 29 | 60 | Stage 5Felixstowe - Felixstowe (192.0km) | 192.0km |
| 06-09 | 23 | 64 | Stage 4Sherwood Forest - Newark-on-Trent (166.0km) | 166.0km |
| 05-09 | 67 | 64 | Stage 3Goole - Beverley (154.0km) | 154.0km |
| 04-09 | 38 | 34 | Stage 2Wrexham - Wrexham (109.0km) | 109.0km |
| 03-09 | 34 | 34 | Stage 1Altrincham - Manchester (163.0km) | 163.0km |
| | | Tour Poitou - Charentes (2.1) |
| 31 | | Klassement |
| 25-08 | 27 | 31 | Stage 4Moncoutant - Poitiers (170.0km) | 170.0km |
| 24-08 | 51 | 43 | Stage 3bLa Roche-Posay - La Roche-Posay (22.0km) | 22.0km |
| 24-08 | 46 | 48 | Stage 3aCoussay-les-Bois - La Roche-Posay (94.0km) | 94.0km |
| 23-08 | 50 | 52 | Stage 2Aulnay - Bressuire (185.0km) | 185.0km |
| 22-08 | 62 | 63 | Stage 1Confolens - Mathay (195.0km) | 195.0km |
| 20-08 | DNF | | Egmont Cycling Race (1.1) | |
| 19-08 | 35 | | Druivenkoers - Overijse (1.1) | 185.0km |
| 15-08 | 43 | | Tour of Leuven - Memorial Jef Scherens (1.1) | 193.0km |
| 13-08 | 38 | | La Polynormande (1.1) | |
| 06-08 | 48 | | UCI World Championship Glasgow (CM) | 271.0km |
| | | Czech Tour (2.1) |
| 29-07 | 56 | 78 | Stage 3Moravská Třebová - Cervenohorské sedlo (161.0km) | 161.0km |
| 28-07 | 96 | 91 | Stage 2Olomouc - Pustevny (166.0km) | 166.0km |
| 27-07 | 90 | 90 | Stage 1Prostejov - Uničov (167.0km) | 167.0km |
| | | Tour of Qinghai Lake (2.Pro) |
| 45 | | Klassement |
| 28 | | Berg |
| 16-07 | 21 | 45 | Stage 8Gonghe - Chaka (200.0km) | 200.0km |
| 15-07 | 87 | 48 | Stage 7Xihaizhen - Gonghe (127.0km) | 127.0km |
| 14-07 | 35 | 42 | Stage 6Qilian - Xihaizhen (206.0km) | 206.0km |
| 13-07 | 89 | 47 | Stage 5Menyuan - Qilian (170.0km) | 170.0km |
| 12-07 | 19 | 48 | Stage 4Huzhu - Menyuan (188.0km) | 188.0km |
| 11-07 | 46 | 55 | Stage 3Guide - Huzhu (201.0km) | 201.0km |
| 10-07 | 61 | 61 | Stage 2Duoba - Guide (132.0km) | 132.0km |
| 09-07 | 30 | 37 | Stage 1Xining - Xining (108.0km) | 108.0km |
| | | Baloise Belgium Tour (2.Pro) |
| 42 | | Klassement |
| 18-06 | 26 | 42 | Stage 5Brussel - Brussel (194.0km) | 194.0km |
| 17-06 | 65 | 45 | Stage 4Durbuy - Durbuy (172.0km) | 172.0km |
| 16-06 | 106 | 41 | Stage 3Beveren - Beveren (15.0km) | 15.0km |
| 15-06 | 20 | 20 | Stage 2Merelbeke - Knokke-Heist (175.0km) | 175.0km |
| 14-06 | 28 | 31 | Stage 1Scherpenheuvel-Zichem - Scherpenheuvel-Zichem (164.0km) | 164.0km |
| 10-06 | DNF | | Duracell Dwars door het Hageland (1.Pro) | |
| 04-06 | 63 | | Brussels Cycling Classic (1.Pro) | 207.0km |
| 29-05 | 42 | | Ronde van Limburg (1.1) | 203.0km |
| 27-05 | 31 | | Marcel Kint Classic (1.1) | 199.0km |
| 21-05 | 22 | | Antwerp Port Epic / Sels Trophy (1.1) | 192.0km |
| 18-05 | 56 | | Circuit de Wallonie (1.1) | |
| | | International Tour of Hellas (2.1) |
| 92 | | Klassement |
| 06-05 | 82 | 92 | Stage 4Pylos - Olympia (133.0km) | 133.0km |
| 05-05 | 101 | 95 | Stage 3Pylos - Kyparissia (153.0km) | 153.0km |
| 04-05 | 87 | 92 | Stage 2Mycenae - Kalamata (178.0km) | 178.0km |
| 03-05 | 79 | 78 | Stage 1Heraklion - Heraklion (187.0km) | 187.0km |
| 02-05 | 54 | 54 | PrologueHeraklion - Heraklion (8.0km) | 8.0km |
| 23-04 | 36 | | Rutland-Melton CiCLE Classic (1.2) | |
| 16-04 | 79 | | Tour du Doubs (1.1) | 200.0km |
| 15-04 | 16 | | Tour du Jura Cycliste (1.1) | 168.0km |
| 14-04 | DNF | | Classic Grand Besançon Doubs (1.1) | 180.0km |
| 12-04 | DNF | | De Brabantse Pijl (1.Pro) | 205.0km |
| 31-03 | 30 | | La Route Adélie de Vitré (1.1) | 197.0km |
| 26-03 | 33 | | La Roue Tourangelle (1.1) | 202.0km |
| 19-03 | 59 | | Cholet - Pays de la Loire (1.1) | 205.0km |
| 18-03 | 53 | | Classic Loire Atlantique (1.1) | 182.0km |
| 15-03 | 108 | | Danilith Nokere Koerse (1.Pro) | 193.0km |
| 12-03 | DNS | | Albert Achterhes Profronde van Drenthe (1.1) | |
| 05-03 | 71 | | Grote Prijs Jean - Pierre Monseré (1.1) | 198.0km |
| | | Tour du Rwanda (2.1) |
| 43 | | Klassement |
| 26-02 | 27 | 43 | Stage 8Kigali - Kigali (75.0km) | 75.0km |
| 25-02 | 55 | 49 | Stage 7Nyamata - Kigali (115.0km) | 115.0km |
| 24-02 | 56 | 44 | Stage 6Rubavu - Gicumbi (157.0km) | 157.0km |
| 23-02 | 44 | 37 | Stage 5Rusizi - Rubavu (195.0km) | 195.0km |
| 22-02 | 30 | 40 | Stage 4Musanze - Karongi (138.0km) | 138.0km |
| 21-02 | 55 | 54 | Stage 3Huye - Musanze (199.0km) | 199.0km |
| 20-02 | 5 | 8 | Stage 2Kigali - Gisagara (132.0km) | 132.0km |
| 19-02 | 17 | 17 | Stage 1Kigali - Rwamagana (115.0km) | 115.0km |
| 12-02 | 2 | | National Road Championships - New Zealand (CN) | |