| 06-10 | 53 | | Tour de Vendée (1.1) | 199.0km |
| 18-09 | 89 | | Grand Prix de Wallonie (1.1) | 205.0km |
| 15-09 | 34 | | Tour du Doubs (1.1) | |
| 08-09 | DNF | | GP de Fourmies (1.HC) | |
| 07-09 | 126 | | Brussels Cycling Classic (1.HC) | 189.0km |
| | | Deutschland Tour (2.HC) |
| 55 | | Klassement |
| 25 | | Punten |
| 01-09 | 77 | 55 | Stage 4Eisenach - Erfurt (160.0km) | 160.0km |
| 31-08 | 76 | 52 | Stage 3Göttingen - Eisenach (177.0km) | 177.0km |
| 30-08 | 32 | 28 | Stage 2Marburg - Göttingen (199.0km) | 199.0km |
| 29-08 | 8 | 9 | Stage 1Hannover - Halberstadt (167.0km) | 167.0km |
| 25-08 | 80 | | EuroEyes Cyclassics Hamburg (1.UWT) | 216.0km |
| | | Binck Bank Tour (2.UWT) |
| 28 | | Klassement |
| 18-08 | 60 | 28 | Stage 7Sint-Pieters-Leeuw - Geraardsbergen (178.0km) | 178.0km |
| 17-08 | 49 | 26 | Stage 6Den Haag - Den Haag (8.0km) | 8.0km |
| 16-08 | 79 | 30 | Stage 5Riemst - Venray (184.0km) | 184.0km |
| 15-08 | 34 | 30 | Stage 4Houffalize - Houffalize (96.0km) | 96.0km |
| 14-08 | 77 | 101 | Stage 3Aalter - Aalter (137.0km) | 137.0km |
| 13-08 | 111 | 113 | Stage 2Blankenberge - Ardooie (167.0km) | 167.0km |
| 12-08 | 115 | 115 | Stage 1Beveren - Hulst (167.0km) | 167.0km |
| 11-08 | DNF | | UEC Road European Championships (CC) | 172.0km |
| 04-08 | 48 | | Prudential RideLondon-Surrey Classic (1.UWT) | 169.0km |
| | | VOO-Tour de Wallonie (2.HC) |
| 22 | | Klassement |
| 31-07 | 33 | 22 | Stage 5Couvin - Thuin (186.0km) | 186.0km |
| 30-07 | 25 | 14 | Stage 4Villers-le-Bouillet - Lierneux (178.0km) | 178.0km |
| 29-07 | 20 | 13 | Stage 3La Roche-en-Ardenne - Verviers (194.0km) | 194.0km |
| 28-07 | 11 | 12 | Stage 2Waremme - Beyne-Heusay (170.0km) | 170.0km |
| 27-07 | 30 | 35 | Stage 1Le Roeulx - Dottignies (186.0km) | 186.0km |
| 21-07 | 32 | | Tokyo 2020 Test Event (1.2) | |
| 30-06 | 11 | | National Road Championships - Germany (CN) | 178.0km |
| 25-06 | 11 | | European Games Minsk TT (CC) | |
| 23-06 | 56 | | European Games Minsk (CC) | |
| 13-06 | 16 | | Grosser Preis des Kantons Aargau (1.HC) | 185.0km |
| | | Giro d'Italia (2.UWT) |
| 124 | | Klassement |
| 62 | | Punten |
| 60 | | Berg |
| 33 | | Jongeren |
| 02-06 | 93 | 124 | Stage 21Verona - Verona (15.0km) | 15.0km |
| 01-06 | 117 | 124 | Stage 20Feltre - Croce d'Aune (193.0km) | 193.0km |
| 31-05 | 121 | 124 | Stage 19Treviso - San Martino di Castrozza (151.0km) | 151.0km |
| 30-05 | 11 | 124 | Stage 18Valdaora/Olang - Santa Maria di Sala (220.0km) | 220.0km |
| 29-05 | 72 | 134 | Stage 17Val di Sole - Anterselva/Antholz (180.0km) | 180.0km |
| 28-05 | 89 | 134 | Stage 16Lovere - Ponte di Legno Tonale (194.0km) | 194.0km |
| 26-05 | 60 | 141 | Stage 15Ivrea - Como (237.0km) | 237.0km |
| 25-05 | 129 | 147 | Stage 14Saint-Vincent - Courmayeur (131.0km) | 131.0km |
| 24-05 | 137 | 149 | Stage 13Pinerolo - Ceresole Reale (188.0km) | 188.0km |
| 23-05 | 108 | 157 | Stage 12Cuneo - Pinerolo (146.0km) | 146.0km |
| 22-05 | 22 | 161 | Stage 11Carpi - Novi Ligure (206.0km) | 206.0km |
| 21-05 | 133 | 162 | Stage 10Ravenna - Modena (147.0km) | 147.0km |
| 19-05 | 140 | 163 | Stage 9Riccione - San Marino (34.0km) | 34.0km |
| 18-05 | 152 | 164 | Stage 8Tortoreto Lido - Pesaro (235.0km) | 235.0km |
| 17-05 | 133 | 164 | Stage 7Vasto - L'Aquila (180.0km) | 180.0km |
| 16-05 | 122 | 167 | Stage 6Cassino - San Giovanni Rotondo (233.0km) | 233.0km |
| 15-05 | 139 | 169 | Stage 5Frascati - Terracina (140.0km) | 140.0km |
| 14-05 | 169 | 172 | Stage 4Orbetello - Frascati (228.0km) | 228.0km |
| 13-05 | 163 | 172 | Stage 3Vinci - Orbetello (219.0km) | 219.0km |
| 12-05 | 173 | 173 | Stage 2Bologna - Fucecchio (200.0km) | 200.0km |
| 11-05 | 125 | 125 | Stage 1Bologna - Bologna (8.0km) | 8.0km |
| | | Tour de Romandie (2.UWT) |
| 79 | | Klassement |
| 05-05 | 61 | 79 | Stage 5Genève - Genève (16.0km) | 16.0km |
| 04-05 | 99 | 80 | Stage 4Lucens - Torgon (107.0km) | 107.0km |
| 03-05 | 88 | 65 | Stage 3Romont - Romont (160.0km) | 160.0km |
| 02-05 | 88 | 51 | Stage 2Le Locle - Morges (174.0km) | 174.0km |
| 01-05 | 42 | 55 | Stage 1Neuchâtel - La Chaux-de-Fonds (168.0km) | 168.0km |
| 30-04 | 86 | 86 | PrologueNeuchâtel - Neuchâtel (3.0km) | 3.0km |
| 14-04 | 36 | | Paris-Roubaix (1.UWT) | |
| 07-04 | 122 | | Ronde van Vlaanderen (1.UWT) | 267.0km |
| 03-04 | 126 | | Dwars door Vlaanderen (1.UWT) | 183.0km |
| 31-03 | 68 | | Gent-Wevelgem in Flanders Fields (1.UWT) | 251.0km |
| 29-03 | DNF | | E3 BinckBank Classic (1.UWT) | 203.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 92 | | Klassement |
| 48 | | Punten |
| 16 | | Berg |
| 19-03 | 81 | 92 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto (10.0km) | 10.0km |
| 18-03 | 123 | 96 | Stage 6Matelica - Jesi (195.0km) | 195.0km |
| 17-03 | 41 | 87 | Stage 5Colli al Metauro - Recanati (178.0km) | 178.0km |
| 16-03 | 105 | 119 | Stage 4Foligno - Fossombrone (223.0km) | 223.0km |
| 15-03 | 102 | 101 | Stage 3Pomarance - Foligno (224.0km) | 224.0km |
| 14-03 | 105 | 106 | Stage 2Camaiore - Pomarance (189.0km) | 189.0km |
| 13-03 | 21 | 110 | Stage 1Lido di Camaiore - Lido di Camaiore (21.0km) | 21.0km |
| 09-03 | 77 | | Strade Bianche (1.UWT) | 184.0km |
| 03-03 | DNF | | Kuurne-Brussel-Kuurne (1.HC) | 201.0km |
| 02-03 | 95 | | Omloop Het Nieuwsblad (1.UWT) | 200.0km |
| 17-02 | DNF | | Trofeo Laigueglia (1.HC) | 203.0km |
| 27-01 | 20 | | Cadel Evans Great Ocean Road Race (WT) | 163.0km |
| | | Santos Tour Down Under (WT) |
| 115 | | Klassement |
| 40 | | Punten |
| 20-01 | 103 | 115 | Stage 6McLaren Vale - Willunga (151.0km) | 151.0km |
| 19-01 | 89 | 123 | Stage 5Glenelg Shire - Strathalbyn (149.0km) | 149.0km |
| 18-01 | 125 | 123 | Stage 4Unley - Campbelltown (129.0km) | 129.0km |
| 17-01 | 98 | 101 | Stage 3Lobethal - Uraidla (146.0km) | 146.0km |
| 16-01 | 55 | 78 | Stage 2Norwood - Angaston (149.0km) | 149.0km |
| 15-01 | 102 | 102 | Stage 1Adelaide - Adelaide (132.0km) | 132.0km |