| 03-10 | DNF | | Sparkassen Münsterland Giro (1.Pro) | |
| 30-09 | 44 | | Grand Prix Cerami (1.2) | |
| 17-09 | 13 | | Grote Prijs Rik Van Looy (1.2) | |
| 15-09 | 87 | | Kampioenschap van Vlaanderen (1.1) | 165.0km |
| | | Tour of Britain (2.Pro) |
| 10-09 | DNF | | Stage 8Margam Country Park - Caerphilly (166.0km) | 166.0km |
| 09-09 | 61 | 60 | Stage 7Tewkesbury - Gloucester (170.0km) | 170.0km |
| 08-09 | 72 | 61 | Stage 6Southend-on-Sea - Harlow (146.0km) | 146.0km |
| 07-09 | 68 | 61 | Stage 5Felixstowe - Felixstowe (192.0km) | 192.0km |
| 06-09 | 80 | 65 | Stage 4Sherwood Forest - Newark-on-Trent (166.0km) | 166.0km |
| 05-09 | 69 | 66 | Stage 3Goole - Beverley (154.0km) | 154.0km |
| 04-09 | 76 | 70 | Stage 2Wrexham - Wrexham (109.0km) | 109.0km |
| 03-09 | 62 | 62 | Stage 1Altrincham - Manchester (163.0km) | 163.0km |
| | | PostNord Danmark Rundt - Tour of Denmark (2.Pro) |
| 102 | | Klassement |
| 19-08 | 44 | 102 | Stage 5Helsingør - Helsingør (16.0km) | 16.0km |
| 18-08 | 27 | 103 | Stage 4Kalundborg - Bagsværd (177.0km) | 177.0km |
| 17-08 | 126 | 110 | Stage 3Vejle - Vejle (209.0km) | 209.0km |
| 16-08 | 88 | 86 | Stage 2Kjellerup - Silkeborg (163.0km) | 163.0km |
| 15-08 | 84 | 84 | Stage 1Aalborg - Aalborg (169.0km) | 169.0km |
| | | Tour ALSACE (2.2) |
| 121 | | Klassement |
| 30-07 | 119 | 121 | Stage 4Ribeauville - Cernay (139.0km) | 139.0km |
| 29-07 | 127 | 126 | Stage 3Tagolsheim - Altkirch (197.0km) | 197.0km |
| 28-07 | 133 | 129 | Stage 2Vesoul - La Planche des Belles Filles (132.0km) | 132.0km |
| 27-07 | 69 | 3 | Stage 1Rust (Europapark) - Selestat (166.0km) | 166.0km |
| 26-07 | 1 | 3 | PrologueSausheim - Sausheim (4.0km) | 4.0km |
| 23-07 | 61 | | Grand Prix de la ville de Pérenchies (1.2) | |
| 21-06 | 11 | | National Road Championships - Great Britain TT U23 (CN) | |
| | | Course de la Paix Grand Prix Jeseníky (2.NCUP) |
| 73 | | Klassement |
| 8 | | Punten |
| 34 | | Jongeren |
| 11-06 | 92 | 73 | Stage 3Jeseník - Jeseník (166.0km) | 166.0km |
| 10-06 | 91 | 72 | Stage 2Bruntál - Cervenohorské sedlo (129.0km) | 129.0km |
| 09-06 | 2 | 3 | Stage 1Jeseník - Rýmařov (121.0km) | 121.0km |
| 08-06 | 9 | 9 | PrologueJeseník - Jeseník (3.0km) | 3.0km |
| 03-06 | 105 | | Heylen Vastgoed Heistse Pijl (1.1) | 198.0km |
| | | Alpes Isère Tour (2.2) |
| 28-05 | DNF | | Stage 5Saint-Thibaud-de-Couz - Saint-Pierre-de-Chartreuse (161.0km) | 161.0km |
| 27-05 | 103 | 86 | Stage 4Monsteroux-Milieu - Saint-Maurice-l'Exil (182.0km) | 182.0km |
| 26-05 | 13 | 78 | Stage 3Saint-Exupéry - Colombier-Saugnieu (145.0km) | 145.0km |
| 25-05 | 95 | 80 | Stage 2Saint-André-le-Gaz - Four CAPI (144.0km) | 144.0km |
| 24-05 | 13 | 15 | Stage 1Charvieu-Chavagneux - Charvieu-Chavagneux (145.0km) | 145.0km |
| 20-05 | 82 | | Veenendaal-Veenendaal Classic (1.1) | 175.0km |
| 07-05 | 17 | | Paris-Roubaix Espoirs (1.2U) | |
| 01-05 | 11 | | Eschborn-Frankfurt U23 (1.2U) | 107.0km |
| 23-04 | 25 | | Rutland-Melton CiCLE Classic (1.2) | |
| | | Tour du Loir et Cher (2.2) |
| 51 | | Klassement |
| 16-04 | 57 | 51 | Stage 5Blois - Blois (97.0km) | 97.0km |
| 15-04 | 84 | 57 | Stage 4Vernou-en-Sologne - Vernou-en-Sologne (156.0km) | 156.0km |
| 14-04 | 69 | 57 | Stage 3Freteval - Vendôme (167.0km) | 167.0km |
| 13-04 | 82 | 67 | Stage 2Sassay - Selommes (151.0km) | 151.0km |
| 12-04 | 76 | 76 | Stage 1Blois - Chailles (136.0km) | 136.0km |
| | | Olympia's Tour (2.2) |
| 43 | | Klassement |
| 26-03 | 28 | 43 | Stage 5Beek - Beek (178.0km) | 178.0km |
| 25-03 | 72 | 62 | Stage 4Neede - Tiel (161.0km) | 161.0km |
| 24-03 | 25 | 57 | Stage 3Gieten - Ruurlo (170.0km) | 170.0km |
| 23-03 | 94 | 72 | Stage 2Assen - Assen (165.0km) | 165.0km |
| 22-03 | 3 | 3 | Stage 1Assen - Assen (9.0km) | 9.0km |
| | | Tour des Alpes Maritimes et du Var (2.1) |
| 19-02 | DNF | | Stage 3Villefranche-sur-Mer - Vence (139.0km) | 139.0km |
| 18-02 | 107 | 107 | Stage 2Mandelieu-la-Napoule - Antibes (179.0km) | 179.0km |
| 17-02 | 94 | 94 | Stage 1Saint-Raphaël - Ramatuelle (197.0km) | 197.0km |