|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 22/10/2019 | | 2.WT3 | | | | 25 | | Tour of Guangxi | | 10 | |
| 22/10/2019 | | 2.WT3s | | | | 60 | | Tour of Guangxi, Stage 6 : Guilin - Guilin | | 0 | |
| 21/10/2019 | | 2.WT3s | | | | 60 | | Tour of Guangxi, Stage 5 : Liuzhou - Guilin | | 0 | |
| 20/10/2019 | | 2.WT3s | | | | 30 | | Tour of Guangxi, Stage 4 : Nanning - Nongla | | 0 | |
| 19/10/2019 | | 2.WT3s | | | | 37 | | Tour of Guangxi, Stage 3 : Nanning - Nanning | | 0 | |
| 18/10/2019 | | 2.WT3s | | | | 44 | | Tour of Guangxi, Stage 2 : Beihai - Qinzhou | | 0 | |
| 17/10/2019 | | 2.WT3s | | | | 43 | | Tour of Guangxi, Stage 1 : Beihai - Beihai | | 0 | |
| 1/09/2019 | | 1.WT2 | | | | DNF | | Bretagne Classic - Ouest-France | | 0 | |
| 17/08/2019 | | 2.HC | | | | 95 | | Vuelta a Burgos | | 0 | |
| 3/08/2019 | | 1.WT2 | | | | 79 | | Clasica San Sebastian | | 5 | |
| 13/06/2019 | | 2.WT1s | | | | DNS | | Critérium du Dauphiné, Stage 5 : Boën-sur-Lignon - Voiron | | 0 | |
| 12/06/2019 | | 2.WT1s | | | | 119 | | Critérium du Dauphiné, Stage 4 : Roanne - Roanne I.T.T. | | 0 | |
| 11/06/2019 | | 2.WT1s | | | | 135 | | Critérium du Dauphiné, Stage 3 : Le Puy-en-Velay - Riom | | 0 | |
| 10/06/2019 | | 2.WT1s | | | | 125 | | Critérium du Dauphiné, Stage 2 : Mauriac - Craponne-sur-Arzon | | 0 | |
| 9/06/2019 | | 2.WT1s | | | | 101 | | Critérium du Dauphiné, Stage 1 : Aurillac - Jussac | | 0 | |
| 1/05/2019 | | 2.WT1s | | | | DNS | | Tour de Romandie, Stage 1 : Neuchâtel - La-Chaux-de-Fonds | | 0 | |
| 30/04/2019 | | 2.WT1s | | | | 127 | | Tour de Romandie, Prologue : Neuchâtel I.T.T. | | 0 | |
| 28/04/2019 | | 1.WT1 | | | | 100 | | Liège - Bastogne - Liège | | 5 | |
| 24/04/2019 | | 1.WT2 | | | | DNF | | Flèche Wallonne | | 0 | |
| 13/04/2019 | | 2.WT2s | | | | OOT | | Itzulia Basque Country, Stage 6 : Eibar - Eibar | | 0 | |
| 12/04/2019 | | 2.WT2s | | | | 128 | | Itzulia Basque Country, Stage 5 : Arrigorriaga - Arrate | | 0 | |
| 11/04/2019 | | 2.WT2s | | | | 110 | | Itzulia Basque Country, Stage 4 : Vitoria-Gasteiz - Arrigorriaga | | 0 | |
| 10/04/2019 | | 2.WT2s | | | | 75 | | Itzulia Basque Country, Stage 3 : Sarriguren - Estibaliz | | 0 | |
| 9/04/2019 | | 2.WT2s | | | | 80 | | Itzulia Basque Country, Stage 2 : Zumarraga - Gorraiz | | 0 | |
| 8/04/2019 | | 2.WT2s | | | | 154 | | Itzulia Basque Country, Stage 1 : Zumarraga - Zumarraga I.T.T. | | 0 | |
| 31/03/2019 | | 2.WT2s | | | | DNF | | Volta a Catalunya, Stage 7 : Barcelona - Barcelona | | 0 | |
| 30/03/2019 | | 2.WT2s | | | | 130 | | Volta a Catalunya, Stage 6 : Valls - Vilaseca | | 0 | |
| 29/03/2019 | | 2.WT2s | | | | 147 | | Volta a Catalunya, Stage 5 : Puigcerda - Sant Cugat | | 0 | |
| 28/03/2019 | | 2.WT2s | | | | 150 | | Volta a Catalunya, Stage 4 : Llanars - La Molina | | 0 | |
| 27/03/2019 | | 2.WT2s | | | | 158 | | Volta a Catalunya, Stage 3 : Sant Feliu de Guixols - Setcases/Vallter 2000 | | 0 | |
| 26/03/2019 | | 2.WT2s | | | | 116 | | Volta a Catalunya, Stage 2 : Mataro - Sant Feliu de Guixols | | 0 | |
| 25/03/2019 | | 2.WT2s | | | | 114 | | Volta a Catalunya, Stage 1 : Calella - Calella | | 0 | |
| 19/03/2019 | | CC2 | | | | 31 | | African Cycling Championships (Sebat Amit) R.R. | | 0 | |
| 21/02/2019 | | 2.HC | | | | 12 | | Tour of Oman | | 34 | |
| 20/02/2019 | | 2.HCs | | | | 16 | | Tour of Oman, Stage 5 : Samail - Jabal Al Akhdhar (Green Mountain) | | 0 | |
| 18/02/2019 | | 2.HCs | | | | 11 | | Tour of Oman, Stage 3 : Shati al Qurum - Quriyat | | 0 | |
| 10/02/2019 | | NC3 | | | | 6 | | National Championships South Africa (Tshwane) R.R. | | 16 | |