|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 17/08/2019 | | 2.NCs | | | | 1 | | Tour de l'Avenir, Stage 3 : Montignac-Lascaux - Mauriac | | 8 | |
| 15/08/2019 | | 2.NCs | | | | 2 | | Tour de l'Avenir, Stage 1 : Marmande - Marmande | | 4 | |
| 4/08/2019 | | 1.WT3 | | | | 10 | | Ride London - Surrey Classic | | 36 | |
| 30/06/2019 | | NC2 | | | | 5 | | National Championships Great Britain (Norwich) R.R. | | 35 | |
| 23/06/2019 | | 2.2U | | | | 15 | | Giro Ciclistico d'Italia | | 1 | |
| 15/06/2019 | | 2.2Us | | | | leader | | Giro Ciclistico d'Italia, Stage 2 : Bagno di Romagna - Pescia | | 2 | |
| 14/06/2019 | | 2.2Us | | | | leader | | Giro Ciclistico d'Italia, Stage 1 : Riccione - Santa Sofia | | 2 | |
| 14/06/2019 | | 2.2Us | | | | 1 | | Giro Ciclistico d'Italia, Stage 1 : Riccione - Santa Sofia | | 4 | |
| 13/06/2019 | | 2.2Us | | | | leader | | Giro Ciclistico d'Italia, Prologue : Riccione I.T.T. | | 2 | |
| 13/06/2019 | | 2.2Us | | | | 1 | | Giro Ciclistico d'Italia, Prologue : Riccione I.T.T. | | 4 | |
| 2/06/2019 | | 2.NC | | | | 8 | | Orlen Nations GP | | 10 | |
| 2/06/2019 | | 2.NCs | | | | 2 | | Orlen Nations GP, Stage 2 : Bulovina Resort - Bukowina Tatrzanska | | 4 | |
| 26/05/2019 | | 2.2 | | | | 1 | | A Travers les Hauts de France | | 25 | |
| 25/05/2019 | | 2.2s | | | | leader | | A Travers les Hauts de France, Stage 2 : Seclin - Bonningues-les-Calais | | 2 | |
| 25/05/2019 | | 2.2s | | | | 1 | | A Travers les Hauts de France, Stage 2 : Seclin - Bonningues-les-Calais | | 4 | |
| 5/05/2019 | | 2.HC | | | | 36 | | Tour de Yorkshire | | 5 | |