|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 22/10/2019 | | 2.WT3 | | | | 22 | | Tour of Guangxi | | 13 | |
| 22/10/2019 | | 2.WT3s | | | | 68 | | Tour of Guangxi, Stage 6 : Guilin - Guilin | | 0 | |
| 21/10/2019 | | 2.WT3s | | | | 54 | | Tour of Guangxi, Stage 5 : Liuzhou - Guilin | | 0 | |
| 20/10/2019 | | 2.WT3s | | | | 19 | | Tour of Guangxi, Stage 4 : Nanning - Nongla | | 0 | |
| 19/10/2019 | | 2.WT3s | | | | 50 | | Tour of Guangxi, Stage 3 : Nanning - Nanning | | 0 | |
| 18/10/2019 | | 2.WT3s | | | | 53 | | Tour of Guangxi, Stage 2 : Beihai - Qinzhou | | 0 | |
| 17/10/2019 | | 2.WT3s | | | | 53 | | Tour of Guangxi, Stage 1 : Beihai - Beihai | | 0 | |
| 12/10/2019 | | 1.WT1 | | | | 99 | | Il Lombardia | | 5 | |
| 10/10/2019 | | 1.HC | | | | 11 | | Gran Piemonte | | 22 | |
| 8/10/2019 | | 1.HC | | | | 46 | | Tre Valli Varesine | | 0 | |
| 15/09/2019 | | GT2 | | | | 51 | | Vuelta a España | | 15 | |
| 15/09/2019 | | GT2s | | | | 147 | | Vuelta a España, Stage 21 : Fuenlabrada - Madrid | | 0 | |
| 14/09/2019 | | GT2s | | | | 99 | | Vuelta a España, Stage 20 : Arenas de San Pedro - Plataforma de Gredos | | 0 | |
| 13/09/2019 | | GT2s | | | | 125 | | Vuelta a España, Stage 19 : Avila - Toledo | | 0 | |
| 12/09/2019 | | GT2s | | | | 7 | | Vuelta a España, Stage 18 : Colmenar Viejo - Becerril de la Sierra | | 5 | |
| 11/09/2019 | | GT2s | | | | 135 | | Vuelta a España, Stage 17 : Aranda de Duero - Guadelajara | | 0 | |
| 9/09/2019 | | GT2s | | | | 38 | | Vuelta a España, Stage 16 : Pravia - Alto de la Cubilla | | 0 | |
| 8/09/2019 | | GT2s | | | | 54 | | Vuelta a España, Stage 15 : Tineo - Santuario del Acebo | | 0 | |
| 7/09/2019 | | GT2s | | | | 40 | | Vuelta a España, Stage 14 : San Vicente de la Barquer - Oviedo | | 0 | |
| 6/09/2019 | | GT2s | | | | 104 | | Vuelta a España, Stage 13 : Bilbao - Los Machucos | | 0 | |
| 5/09/2019 | | GT2s | | | | 152 | | Vuelta a España, Stage 12 : Bilbao - Bilbao | | 0 | |
| 4/09/2019 | | GT2s | | | | 128 | | Vuelta a España, Stage 11 : Saint-Palais (FRA) - Urdax-Dantxarinea | | 0 | |
| 3/09/2019 | | GT2s | | | | 65 | | Vuelta a España, Stage 10 : Jurançon (FRA) - Pau (FRA) I.T.T. | | 0 | |
| 1/09/2019 | | GT2s | | | | 43 | | Vuelta a España, Stage 9 : Andorra la Vella (AND) - Cortals d'Encamp (AND) | | 0 | |
| 31/08/2019 | | GT2s | | | | 62 | | Vuelta a España, Stage 8 : Valls - Igualada | | 0 | |
| 30/08/2019 | | GT2s | | | | 16 | | Vuelta a España, Stage 7 : Onda - Mas de la Costa | | 0 | |
| 29/08/2019 | | GT2s | | | | 37 | | Vuelta a España, Stage 6 : Mora de Rubielos - Ares del Maestrat | | 0 | |
| 28/08/2019 | | GT2s | | | | 34 | | Vuelta a España, Stage 5 : L'Eliana - Javalambre | | 0 | |
| 27/08/2019 | | GT2s | | | | 145 | | Vuelta a España, Stage 4 : Cullera - El Puig | | 0 | |
| 26/08/2019 | | GT2s | | | | 66 | | Vuelta a España, Stage 3 : Ibi - Alicante | | 0 | |
| 25/08/2019 | | GT2s | | | | 33 | | Vuelta a España, Stage 2 : Benidorm - Calpe | | 0 | |
| 24/08/2019 | | GT2s | | | | 14 | | Vuelta a España, Stage 1 : Salinas de Torrevieja - Torrevieja T.T.T. | | 0 | |
| 17/08/2019 | | 2.HC | | | | 22 | | Vuelta a Burgos | | 9 | |
| 17/08/2019 | | 2.HCs | | | | 12 | | Vuelta a Burgos, Stage 5 : Santo Domingo de Silos - Lagunas de Neila | | 0 | |
| 3/08/2019 | | 1.WT2 | | | | 58 | | Clasica San Sebastian | | 5 | |
| 28/07/2019 | | 2.1 | | | | 35 | | Adriatica Ionica Race | | 0 | |
| 16/05/2019 | | 2.WT3s | | | | DNS | | Tour of California, Stage 5 : Pismo Beach - Ventura | | 0 | |
| 15/05/2019 | | 2.WT3s | | | | 120 | | Tour of California, Stage 4 : Laguna Seca - Morro Bay | | 0 | |
| 14/05/2019 | | 2.WT3s | | | | 52 | | Tour of California, Stage 3 : Stockton - Morgan Hill | | 0 | |
| 13/05/2019 | | 2.WT3s | | | | 16 | | Tour of California, Stage 2 : Rancho Cordova - South Lake Tahoe | | 0 | |
| 12/05/2019 | | 2.WT3s | | | | 84 | | Tour of California, Stage 1 : Sacramento | | 0 | |
| 5/05/2019 | | 2.WT1 | | | | 34 | | Tour de Romandie | | 5 | |
| 5/05/2019 | | 2.WT1s | | | | 79 | | Tour de Romandie, Stage 5 : Genève I.T.T. | | 0 | |
| 4/05/2019 | | 2.WT1s | | | | 45 | | Tour de Romandie, Stage 4 : Lucens - Torgon | | 0 | |
| 3/05/2019 | | 2.WT1s | | | | 23 | | Tour de Romandie, Stage 3 : Romont - Romont | | 0 | |
| 2/05/2019 | | 2.WT1s | | | | 77 | | Tour de Romandie, Stage 2 : Le Locles - Morgins | | 0 | |
| 1/05/2019 | | 2.WT1s | | | | 40 | | Tour de Romandie, Stage 1 : Neuchâtel - La-Chaux-de-Fonds | | 0 | |
| 30/04/2019 | | 2.WT1s | | | | 124 | | Tour de Romandie, Prologue : Neuchâtel I.T.T. | | 0 | |
| 11/03/2019 | | 2.WT1s | | | | DNF | | Paris - Nice, Stage 2 : Les Bréviaires - Bellegarde | | 0 | |
| 10/03/2019 | | 2.WT1s | | | | 90 | | Paris - Nice, Stage 1 : Saint-Germain-en-Laye - Saint-Germain-en-Laye | | 0 | |
| 2/03/2019 | | 2.WT3 | | | | 31 | | UAE Tour | | 5 | |
| 2/03/2019 | | 2.WT3s | | | | 62 | | UAE Tour, Stage 7 : Dubai - Dubai | | 0 | |
| 1/03/2019 | | 2.WT3s | | | | 39 | | UAE Tour, Stage 6 : Ajman - Jabel Jais | | 0 | |
| 28/02/2019 | | 2.WT3s | | | | 53 | | UAE Tour, Stage 5 : Sharjah - Khor Fakkan | | 0 | |
| 27/02/2019 | | 2.WT3s | | | | 31 | | UAE Tour, Stage 4 : Dubai - Hatta Dam | | 0 | |
| 26/02/2019 | | 2.WT3s | | | | 47 | | UAE Tour, Stage 3 : Al Ain - Jebel Hafeet | | 0 | |
| 25/02/2019 | | 2.WT3s | | | | 85 | | UAE Tour, Stage 2 : Abu Dhabi - Abu Dhabi | | 0 | |
| 24/02/2019 | | 2.WT3s | | | | 10 | | UAE Tour, Stage 1 : Al Hudayriat T.T.T. | | 0 | |
| 10/02/2019 | | NC3 | | | | 9 | | National Championships South Africa (Tshwane) R.R. | | 8 | |
| 8/02/2019 | | NCT3 | | | | 3 | | National Championships South Africa (Tshwane) I.T.T. | | 15 | |