1 | 2019-09-01 | 83 | Grand Prix International de la ville de Nogent-sur-Oise | 1.2 | 168 | - | - | 1297 |
2 | 2019-08-16 | 89 | Gp Capodarco Comunita Di Capodarco | 1.2U | 180 | - | - | 1885 |
3 | 2019-05-26 | 19 | Ronde de l'Isard | Mountains classification | 2.2U | | - | - | |
4 | 2019-05-26 | 68 | Ronde de l'Isard | 2.2U | | - | - | |
5 | 2019-05-26 | 60 | Ronde de l'Isard | Stage 4 | 2.2U | 154.1 | - | - | 3065 |
6 | 2019-05-25 | 99 | Ronde de l'Isard | Stage 3 | 2.2U | 141.3 | - | - | 3481 |
7 | 2019-05-24 | 52 | Ronde de l'Isard | Stage 2 | 2.2U | 136.7 | - | - | 3155 |
8 | 2019-05-23 | 34 | Ronde de l'Isard | Stage 1 | 2.2U | 145 | - | - | 1396 |
9 | 2019-04-14 | 18 | Circuit des Ardennes International | Youth classification | 2.2 | | - | - | |
10 | 2019-04-14 | 45 | Circuit des Ardennes International | 2.2 | | - | - | |
11 | 2019-04-14 | 60 | Circuit des Ardennes International | Stage 4 | 2.2 | 106 | - | - | 1306 |
12 | 2019-04-14 | 54 | Circuit des Ardennes International | Stage 3 | 2.2 | 59.5 | - | - | 955 |
13 | 2019-04-13 | 56 | Circuit des Ardennes International | Stage 2 | 2.2 | 157.7 | - | - | 2621 |
14 | 2019-04-12 | 87 | Circuit des Ardennes International | Stage 1 | 2.2 | 188.7 | - | - | 2350 |
15 | 2019-04-07 | 15 | Trofeo Piva | 1.2U | 174.8 | - | - | 3025 |
16 | 2018-10-07 | DNF | Paris-Tours Espoirs | 1.2U | 182 | - | - | 1106 |
17 | 2018-09-25 | 26 | Ruota d'Oro - GP Festa del Perdono | 1.2U | 167.7 | - | - | 1821 |
18 | 2018-09-23 | 29 | Tour du Gévaudan Occitanie | 1.2 | 153 | - | - | 2784 |
19 | 2018-08-05 | 22 | Tour Alsace | Mountains classification | 2.2 | | - | - | |
20 | 2018-08-05 | 30 | Tour Alsace | 2.2 | | - | - | |
21 | 2018-08-05 | 13 | Tour Alsace | Stage 4 | 2.2 | 145.6 | - | - | 1564 |
22 | 2018-08-04 | 36 | Tour Alsace | Stage 3 | 2.2 | 165.3 | - | - | 4317 |
23 | 2018-08-03 | 20 | Tour Alsace | Stage 2 | 2.2 | 143.1 | - | - | 2274 |
24 | 2018-08-02 | 106 | Tour Alsace | Stage 1 | 2.2 | 147.5 | - | - | 396 |
25 | 2018-08-01 | 28 | Tour Alsace | Prologue | 2.2 | 4.7 | - | - | 1 |
26 | 2018-06-24 | 20 | Le Tour de Savoie Mont Blanc | Youth classification | 2.2 | | - | - | |
27 | 2018-06-24 | 26 | Le Tour de Savoie Mont Blanc | Mountains classification | 2.2 | | - | - | |
28 | 2018-06-24 | 55 | Le Tour de Savoie Mont Blanc | 2.2 | | - | - | |
29 | 2018-06-24 | 34 | Le Tour de Savoie Mont Blanc | Stage 5 | 2.2 | 137.9 | - | - | 3144 |
30 | 2018-06-23 | 54 | Le Tour de Savoie Mont Blanc | Stage 4 | 2.2 | 189.1 | - | - | 4547 |
31 | 2018-06-22 | 58 | Le Tour de Savoie Mont Blanc | Stage 3 (ITT) | 2.2 | 7.4 | - | - | 258 |
32 | 2018-06-22 | 72 | Le Tour de Savoie Mont Blanc | Stage 2 | 2.2 | 82.5 | - | - | 1720 |
33 | 2018-06-21 | 67 | Le Tour de Savoie Mont Blanc | Stage 1 | 2.2 | 153 | - | - | 3688 |
34 | 2018-05-20 | 14 | Ronde de l'Isard | Mountains classification | 2.2U | | - | - | |
35 | 2018-05-20 | 43 | Ronde de l'Isard | 2.2U | | - | - | |
36 | 2018-05-20 | 44 | Ronde de l'Isard | Stage 4 | 2.2U | 152.4 | - | - | 3257 |
37 | 2018-05-19 | 52 | Ronde de l'Isard | Stage 3 | 2.2U | 153.4 | - | - | 1918 |
38 | 2018-05-18 | 54 | Ronde de l'Isard | Stage 2 | 2.2U | 154.3 | - | - | 2114 |
39 | 2018-05-17 | 74 | Ronde de l'Isard | Stage 1 | 2.2U | 125.9 | - | - | 1713 |
40 | 2018-05-01 | 38 | Toscana Terra di Ciclismo Eroica | 2.2U | | - | - | |
41 | 2018-05-01 | 36 | Toscana Terra di Ciclismo Eroica | Stage 3 | 2.2U | 163 | - | - | |
42 | 2018-04-30 | 28 | Toscana Terra di Ciclismo Eroica | Stage 2 | 2.2U | 156.2 | - | - | |
43 | 2018-04-28 | 83 | Toscana Terra di Ciclismo Eroica | Stage 1 | 2.2U | 146.3 | - | - | |
44 | 2018-04-25 | 22 | Gran Premio della Liberazione | 1.2U | 138 | - | - | 1377 |
45 | 2018-04-07 | 26 | Trofeo Edil C | 1.2U | 147.5 | - | - | 2078 |
46 | 2018-04-02 | 56 | Giro del Belvedere | 1.2U | 166.6 | - | - | 1723 |
47 | 2018-04-01 | 81 | Trofeo Piva | 1.2U | 160 | - | - | 1675 |
48 | 2017-09-24 | 6 | Tour du Gévaudan Languedoc-Roussillon | Youth classification | 2.2 | | - | - | |
49 | 2017-09-24 | 30 | Tour du Gévaudan Languedoc-Roussillon | 2.2 | | - | - | |
50 | 2017-09-24 | 26 | Tour du Gévaudan Languedoc-Roussillon | Stage 2 | 2.2 | 146 | - | - | |
51 | 2017-09-23 | 39 | Tour du Gévaudan Languedoc-Roussillon | Stage 1 | 2.2 | 138.5 | - | - | |
52 | 2017-06-25 | OTL | National Championships Great Britain - Road Race | NC | 193.7 | - | - | |
53 | 2017-06-22 | 27 | National Championships Great Britain U23 - ITT | NC | 22.2 | - | - | |
54 | 2017-06-18 | 7 | Le Tour de Savoie Mont Blanc | Youth classification | 2.2 | | - | - | |
55 | 2017-06-18 | 25 | Le Tour de Savoie Mont Blanc | 2.2 | | - | - | |
56 | 2017-06-18 | 29 | Le Tour de Savoie Mont Blanc | Stage 5 | 2.2 | 99.1 | - | - | |
57 | 2017-06-17 | 27 | Le Tour de Savoie Mont Blanc | Stage 4 (ITT) | 2.2 | 11.9 | - | - | |
58 | 2017-06-17 | 31 | Le Tour de Savoie Mont Blanc | Stage 3 | 2.2 | 126 | - | - | |
59 | 2017-06-16 | 36 | Le Tour de Savoie Mont Blanc | Stage 2 | 2.2 | 188 | - | - | |
60 | 2017-06-15 | 33 | Le Tour de Savoie Mont Blanc | Stage 1 | 2.2 | 145 | - | - | |
61 | 2017-05-21 | 12 | Ronde de l'Isard | Youth classification | 2.2U | | - | - | |
62 | 2017-05-21 | 27 | Ronde de l'Isard | 2.2U | | - | - | |
63 | 2017-05-21 | 31 | Ronde de l'Isard | Stage 4 | 2.2U | 141.5 | - | - | 2841 |
64 | 2017-05-20 | 31 | Ronde de l'Isard | Stage 3 | 2.2U | 143.7 | - | - | 4191 |
65 | 2017-05-19 | 36 | Ronde de l'Isard | Stage 2 | 2.2U | 146 | - | - | 2262 |
66 | 2017-04-14 | DNF | Tour du Loir et Cher | Stage 3 | 2.2 | 211 | - | - | |
67 | 2017-04-13 | 148 | Tour du Loir et Cher | Stage 2 | 2.2 | 184 | - | - | |
68 | 2017-04-12 | 62 | Tour du Loir et Cher | Stage 1 | 2.2 | 154.5 | - | - | |
69 | 2017-04-08 | 74 | Trofeo Edil C | 1.2U | 149.1 | - | - | |
70 | 2017-03-12 | 118 | Paris-Troyes | 1.2 | 179.3 | - | - | |
71 | 2016-09-10 | DNF | De Kustpijl | 1.2 | 199 | - | - | |
72 | 2016-08-27 | 33 | Omloop Mandel-Leie-Schelde Meulebeke | 1.2 | 170 | - | - | |
73 | 2016-08-23 | DNF | Grand Prix des Marbriers | 1.2 | 160 | - | - | |
74 | 2016-07-24 | 43 | Grand Prix de la ville de Pérenchies | 1.2 | 163.2 | - | - | |
75 | 2016-07-02 | 13 | Course Cycliste de Solidarnosc et des Champions Olympiques | Youth classification | 2.2 | | - | - | |
76 | 2016-07-02 | 38 | Course Cycliste de Solidarnosc et des Champions Olympiques | 2.2 | | - | - | |
77 | 2016-07-02 | 25 | Course Cycliste de Solidarnosc et des Champions Olympiques | Stage 5 | 2.2 | 195 | - | - | |
78 | 2016-07-01 | 51 | Course Cycliste de Solidarnosc et des Champions Olympiques | Stage 4 | 2.2 | 169.4 | - | - | |
79 | 2016-06-30 | 42 | Course Cycliste de Solidarnosc et des Champions Olympiques | Stage 3 | 2.2 | 84 | - | - | |
80 | 2016-06-30 | 52 | Course Cycliste de Solidarnosc et des Champions Olympiques | Stage 2 | 2.2 | 99.6 | - | - | |
81 | 2016-06-29 | 58 | Course Cycliste de Solidarnosc et des Champions Olympiques | Stage 1 | 2.2 | 178.2 | - | - | |
82 | 2016-06-26 | DNF | National Championships Great Britain - Road Race | NC | 207 | - | - | |
83 | 2016-06-18 | OTL | Tour de Savoie Mont Blanc | Stage 3 | 2.2 | 123 | - | - | |
84 | 2016-06-17 | 62 | Tour de Savoie Mont Blanc | Stage 2 | 2.2 | 118 | - | - | |
85 | 2016-06-16 | 94 | Tour de Savoie Mont Blanc | Stage 1 | 2.2 | 145 | - | - | |
86 | 2016-05-01 | 32 | Rund um den Finanzplatz Eschborn-Frankfurt (U23) | 1.2U | 147.6 | - | - | 2691 |
87 | 2016-04-17 | 24 | Tour du Loir et Cher E Provost | Youth classification | 2.2 | | - | - | |
88 | 2016-04-17 | 80 | Tour du Loir et Cher E Provost | 2.2 | | - | - | |
89 | 2016-04-17 | 97 | Tour du Loir et Cher E Provost | Stage 5 | 2.2 | 97.5 | - | - | |
90 | 2016-04-16 | 41 | Tour du Loir et Cher E Provost | Stage 4 | 2.2 | 189.5 | - | - | |
91 | 2016-04-15 | 112 | Tour du Loir et Cher E Provost | Stage 3 | 2.2 | 203 | - | - | |
92 | 2016-04-14 | 61 | Tour du Loir et Cher E Provost | Stage 2 | 2.2 | 202.5 | - | - | |
93 | 2016-04-13 | 40 | Tour du Loir et Cher E Provost | Stage 1 | 2.2 | 172.5 | - | - | |
94 | 2016-03-28 | DNF | Giro del Belvedere | 1.2U | 166.6 | - | - | |
95 | 2016-03-06 | 38 | Grand Prix de la Ville de Lillers Souvenir Bruno Comini | 1.2 | 185 | - | - | |
96 | 2015-09-20 | 15 | Keizer der Juniores | Mountains classification | 2.1 | | - | - | |
97 | 2015-09-20 | 43 | Keizer der Juniores | 2.1 | | - | - | |
98 | 2015-09-20 | 41 | Keizer der Juniores | Stage 3 | 2.1 | 102.2 | - | - | |
99 | 2015-09-20 | 50 | Keizer der Juniores | Stage 2 (ITT) | 2.1 | 6 | - | - | |
100 | 2015-09-19 | 83 | Keizer der Juniores | Stage 1 | 2.1 | 94 | - | - | |
| | | | | 10911.5 | 0 | 0 | 79996 |