| 27-09 | 60 | | UCI World Championship Firenze U23 (CM) | 185.0km |
| | | Tour de l'Avenir (2.NCUP) |
| 42 | | Klassement |
| 31-08 | 39 | 42 | Stage 7Châtel - Plateau des Glières (134.0km) | 134.0km |
| 30-08 | 55 | 54 | Stage 6Morzine - Châtel (126.0km) | 126.0km |
| 29-08 | 10 | 60 | Stage 5Saint Gervais - Morzine (79.0km) | 79.0km |
| 28-08 | 77 | 73 | Stage 4Albertville - Saint-François-Longchamp (106.0km) | 106.0km |
| 27-08 | 1 | 71 | Stage 3Aix-les-Bains - Albertville (127.0km) | 127.0km |
| 26-08 | 71 | 86 | Stage 2Champagnole - Saint-Vulbas (162.0km) | 162.0km |
| 25-08 | 90 | 87 | Stage 1Louhans - Arbois (146.0km) | 146.0km |
| 24-08 | 24 | 24 | PrologueLouhans - Louhans (5.0km) | 5.0km |
| | | Tour des Fjords (2.1) |
| 21 | | Klassement |
| 18-08 | 36 | 21 | Stage 4Egersund - Stavanger (183.0km) | 183.0km |
| 17-08 | 72 | 51 | Stage 2Hjelmeland - Forsand (100.0km) | 100.0km |
| 17-08 | 6 | 22 | Stage 3Stavanger - Valle (20.0km) | 20.0km |
| 16-08 | 40 | 41 | Stage 1Valle - Stavanger (199.0km) | 199.0km |
| | | Post Danmark Rundt - Tour of Denmark (2.HC) |
| 56 | | Klassement |
| 04-08 | 56 | 56 | Stage 6Roskilde - Frederiksberg (165.0km) | 165.0km |
| 03-08 | 54 | 60 | Stage 4Høng - Asnæs (105.0km) | 105.0km |
| 03-08 | 55 | 58 | Stage 5Holbæk - Holbæk (12.0km) | 12.0km |
| 02-08 | 76 | 68 | Stage 3Sønderborg - Vejle (200.0km) | 200.0km |
| 01-08 | 59 | 60 | Stage 2Ribe - Sønderborg (175.0km) | 175.0km |
| 31-07 | 78 | 79 | Stage 1Silkeborg - Varde (180.0km) | 180.0km |
| 23-06 | 90 | | National Road Championships - Denmark (CN) | |
| | | Internationale Thüringen-Rundfahrt U23 (2.2U) |
| 9 | | Klassement |
| 15-06 | 54 | 9 | Stage 7Ichtershausen - Ichtershausen (157.0km) | 157.0km |
| 14-06 | 2 | 8 | Stage 6Ichtershausen - Ichtershausen (171.0km) | 171.0km |
| 13-06 | 12 | 8 | Stage 5Streufdorf - Streufdorf (27.0km) | 27.0km |
| 12-06 | 79 | 10 | Stage 4Langewiesen - Langewiesen (163.0km) | 163.0km |
| 11-06 | 25 | 10 | Stage 3Neuhaus am Rennweg - Neuhaus am Rennweg (152.0km) | 152.0km |
| 10-06 | 82 | 11 | Stage 2Behringen - Behringen (177.0km) | 177.0km |
| 09-06 | 35 | 11 | Stage 1Erfurt - Erfurt (170.0km) | 170.0km |
| 08-06 | 14 | 14 | PrologueSülzenbrücken - Holzhausen (4.0km) | 4.0km |
| | | Course de la Paix U23 (2.2U) |
| 22 | | Klassement |
| 26-05 | 30 | 22 | Stage 3Jeseník - Jeseník (150.0km) | 150.0km |
| 25-05 | 43 | 4 | Stage 2Jeseník - Bruntal (112.0km) | 112.0km |
| 25-05 | 4 | 4 | Stage 1Jeseník - Jeseník (2.0km) | 2.0km |
| | | Flèche du Sud (2.2) |
| 1 | | Klassement |
| 12-05 | 37 | 1 | Stage 5Esch-sur-Alzette - Esch-sur-Alzette (136.0km) | 136.0km |
| 11-05 | 7 | 1 | Stage 4Kayl - Soleuvre (157.0km) | 157.0km |
| 10-05 | 1 | 1 | Stage 3Bourscheid - Clervaux (146.0km) | 146.0km |
| 09-05 | 47 | 62 | Stage 2Schifflange - Rumelange (145.0km) | 145.0km |
| 08-05 | 98 | 97 | Stage 1Roeser - Roeser (81.0km) | 81.0km |
| 01-05 | 2 | | Rund um den Finanzplatz Eschborn-Frankfurt (U23) (1.2U) | |
| 28-04 | 25 | | Destination Thy (1.2) | |
| 26-04 | 49 | | Skive-Lobet (1.2) | |
| 20-04 | 10 | | Grand Prix Herning (1.2) | 199.0km |
| 13-04 | 1 | | Liège - Bastogne - Liège U23 (1.2U) | 181.0km |
| 10-04 | 35 | | La Côte Picarde (1.NCUP) | |
| 06-04 | 28 | | Ronde van Vlaanderen Beloften (1.NCUP) | 173.0km |
| | | Tour de Normandie (2.2) |
| 20 | | Klassement |
| 24-03 | 31 | 20 | Stage 6Bagnoles de l'Orne - Caen (137.0km) | 137.0km |
| 23-03 | 42 | 20 | Stage 5Gouville-sur-Mer - Bagnoles de l'Orne (183.0km) | 183.0km |
| 22-03 | 39 | 21 | Stage 4Domfront - Villers-Bocage (155.0km) | 155.0km |
| 21-03 | 20 | 24 | Stage 3Le Thuit-Signol - Argentan (159.0km) | 159.0km |
| 20-03 | 13 | 29 | Stage 2Forges-les-Eaux - Elbeuf (161.0km) | 161.0km |
| 19-03 | 40 | 53 | Stage 1Colombelles - Forges-les-Eaux (201.0km) | 201.0km |
| 18-03 | 74 | 74 | PrologueSaint-Lô - Saint-Lô (3.0km) | 3.0km |
| 10-03 | 48 | | Rabobank Dorpenomloop Rucphen (1.2) | |
| 03-03 | 156 | | Grand Prix de la Ville de Lillers (1.2) | 177.0km |