|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 15/10/2023 | | 1.PS | | | | 38 | | Japan Cup | | 0 | |
| 7/10/2023 | | 1.WT1 | | | | 36 | | Il Lombardia | | 5 | |
| 3/10/2023 | | 1.PS | | | | 82 | | Tre Valli Varesine | | 0 | |
| 2/10/2023 | | 1.PS | | | | 8 | | Coppa Bernocchi | | 34 | |
| 30/09/2023 | | 1.PS | | | | 34 | | Giro dell'Emilia | | 0 | |
| 24/09/2023 | | 2.PS | | | | 39 | | Tour de Luxembourg | | 5 | |
| 23/09/2023 | | 2.PSs | | | | 14 | | Tour de Luxembourg, Stage 4 : Pétange - Pétange I.T.T. | | 0 | |
| 20/09/2023 | | 2.PSs | | | | 20 | | Tour de Luxembourg, Stage 1 : Luxembourg - Luxembourg | | 0 | |
| 10/09/2023 | | 1.WT2 | | | | 12 | | GP de Montréal | | 35 | |
| 8/09/2023 | | 1.WT2 | | | | 9 | | GP de Québec | | 52 | |
| 3/09/2023 | | 1.WT2 | | | | 30 | | Bretagne Classic - Ouest-France | | 6 | |
| 6/08/2023 | | WCRR | | | | DNF | | World Championships (Glasgow) R.R. | | 0 | |
| 29/07/2023 | | 1.WT2 | | | | DNF | | Clasica San Sebastian | | 0 | |
| 23/07/2023 | | GT1 | | | | 33 | | Tour de France | | 43 | |
| 23/07/2023 | | GT1s | | | | 147 | | Tour de France, Stage 21 : Saint-Quentin-en-Yvelines - Paris | | 0 | |
| 22/07/2023 | | GT1s | | | | 99 | | Tour de France, Stage 20 : Belfort - Le Markstein | | 0 | |
| 21/07/2023 | | GT1s | | | | 26 | | Tour de France, Stage 19 : Moirans-en-Montagne - Poligny | | 0 | |
| 20/07/2023 | | GT1s | | | | 81 | | Tour de France, Stage 18 : Moûtiers - Bourg-en-Bresse | | 0 | |
| 19/07/2023 | | GT1s | | | | 38 | | Tour de France, Stage 17 : Saint-Gervais Mont Blanc - Courchevel | | 0 | |
| 18/07/2023 | | GT1s | | | | 26 | | Tour de France, Stage 16 : Passy - Combloux I.T.T. | | 0 | |
| 16/07/2023 | | GT1s | | | | 48 | | Tour de France, Stage 15 : Les Gets - Saint-Gervais Mont Blanc | | 0 | |
| 15/07/2023 | | GT1s | | | | 51 | | Tour de France, Stage 14 : Annemasse - Morzine les Portes du Soleil | | 0 | |
| 14/07/2023 | | GT1s | | | | 120 | | Tour de France, Stage 13 : Châtillon-sur-Chalaronne - Grand Colombier | | 0 | |
| 13/07/2023 | | GT1s | | | | 83 | | Tour de France, Stage 12 : Roanne - Belleville-en-Beaujolais | | 0 | |
| 12/07/2023 | | GT1s | | | | 42 | | Tour de France, Stage 11 : Clermont-Ferrand - Moulins | | 0 | |
| 11/07/2023 | | GT1s | | | | 10 | | Tour de France, Stage 10 : Vulcania - Issoire | | 1 | |
| 9/07/2023 | | GT1s | | | | 53 | | Tour de France, Stage 9 : Saint Léonard de Noblat - Puy de Dôme | | 0 | |
| 8/07/2023 | | GT1s | | | | 25 | | Tour de France, Stage 8 : Libourne - Limoges | | 0 | |
| 7/07/2023 | | GT1s | | | | 129 | | Tour de France, Stage 7 : Mont de Marsan - Bordeaux | | 0 | |
| 6/07/2023 | | GT1s | | | | 38 | | Tour de France, Stage 6 : Tarbes - Cautarets-Cambasque | | 0 | |
| 5/07/2023 | | GT1s | | | | 21 | | Tour de France, Stage 5 : Pau - Laruns | | 0 | |
| 4/07/2023 | | GT1s | | | | 17 | | Tour de France, Stage 4 : Dax - Nogaro | | 0 | |
| 3/07/2023 | | GT1s | | | | 166 | | Tour de France, Stage 3 : Amorebieta-Etxano - Bayonne | | 0 | |
| 2/07/2023 | | GT1s | | | | 33 | | Tour de France, Stage 2 : Vitoria Gasteiz - San Sebastian | | 0 | |
| 1/07/2023 | | GT1s | | | | 25 | | Tour de France, Stage 1 : Bilbao - Bilbao | | 0 | |
| 11/06/2023 | | 2.WT1r | | | | 5 | | Critérium du Dauphiné, Mountains classification | | 5 | |
| 11/06/2023 | | 2.WT1r | | | | 4 | | Critérium du Dauphiné, Points classification | | 10 | |
| 11/06/2023 | | 2.WT1 | | | | 10 | | Critérium du Dauphiné | | 70 | |
| 11/06/2023 | | 2.WT1s | | | | 14 | | Critérium du Dauphiné, Stage 8 : Le-Pont-de-Claix - La Bastille | | 0 | |
| 10/06/2023 | | 2.WT1s | | | | 19 | | Critérium du Dauphiné, Stage 7 : Porte-de-Savoie - Croix-de-Fer | | 0 | |
| 9/06/2023 | | 2.WT1s | | | | 9 | | Critérium du Dauphiné, Stage 6 : Nantua - Crest-Voland | | 0 | |
| 8/06/2023 | | 2.WT1s | | | | 2 | | Critérium du Dauphiné, Stage 5 : Cormorance-sur-Saône - Salins-les-Bains | | 28 | |
| 7/06/2023 | | 2.WT1s | | | | 14 | | Critérium du Dauphiné, Stage 4 : Cours - Belmont-de-la-Loire I.T.T. | | 0 | |
| 6/06/2023 | | 2.WT1s | | | | 73 | | Critérium du Dauphiné, Stage 3 : Monistrol-sur-Loire - Le Coteau | | 0 | |
| 5/06/2023 | | 2.WT1s | | | | 1 | | Critérium du Dauphiné, Stage 2 : Brassac-les-Mines - La Chaise-Dieu | | 45 | |
| 4/06/2023 | | 2.WT1s | | | | 38 | | Critérium du Dauphiné, Stage 1 : Chambon-sur-Lac - Chambon-sur-Lac | | 0 | |
| 23/04/2023 | | 1.WT1 | | | | 86 | | Liège - Bastogne - Liège | | 5 | |
| 2/04/2023 | | 1.WT1 | | | | 51 | | Ronde van Vlaanderen | | 5 | |
| 29/03/2023 | | 1.WT3 | | | | 29 | | Dwars door Vlaanderen | | 5 | |
| 24/03/2023 | | 1.WT2 | | | | DNF | | E3 Saxo Bank Classic | | 0 | |
| 18/03/2023 | | 1.WT1 | | | | 11 | | Milano - Sanremo | | 54 | |
| 12/03/2023 | | 2.WT1r | | | | 4 | | Tirreno - Adriatico, Mountains classification | | 10 | |
| 12/03/2023 | | 2.WT1 | | | | 30 | | Tirreno - Adriatico | | 6 | |
| 12/03/2023 | | 2.WT1s | | | | 137 | | Tirreno - Adriatico, Stage 7 : San Benedetto del Tronto - San Benedetto del Tronto | | 0 | |
| 11/03/2023 | | 2.WT1s | | | | 14 | | Tirreno - Adriatico, Stage 6 : Osimo Stazione - Osimo | | 0 | |
| 10/03/2023 | | 2.WT1s | | | | 49 | | Tirreno - Adriatico, Stage 5 : Morro d'Oro - Sarnano-Sassotetto | | 0 | |
| 9/03/2023 | | 2.WT1s | | | | 2 | | Tirreno - Adriatico, Stage 4 : Greccio - Tortoreto | | 28 | |
| 8/03/2023 | | 2.WT1s | | | | 101 | | Tirreno - Adriatico, Stage 3 : Follonica - Foligno | | 0 | |
| 7/03/2023 | | 2.WT1s | | | | 145 | | Tirreno - Adriatico, Stage 2 : Camaiore - Follonica | | 0 | |
| 6/03/2023 | | 2.WT1s | | | | 43 | | Tirreno - Adriatico, Stage 1 : Lido di Camaiore I.T.T. | | 0 | |
| 4/03/2023 | | 1.WT2 | | | | 43 | | Strade Bianche | | 5 | |
| 26/02/2023 | | 1.PS | | | | 16 | | Faun Drôme Classic | | 10 | |
| 25/02/2023 | | 1.PS | | | | 1 | | Faun Ardèche Classic | | 130 | |
| 28/01/2023 | | 1.1 | | | | 43 | | Trofeo Serra de Tramuntana | | 0 | |
| 27/01/2023 | | 1.1 | | | | 18 | | Trofeo Andratx - Mirador des Colomer, Pollença | | 5 | |
| 25/01/2023 | | 1.1 | | | | 9 | | Trofeo Calvia | | 16 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 8/10/2022 | | 1.WT1 | | | | 51 | | Il Lombardia | | 5 | |
| 3/10/2022 | | 1.PS | | | | 69 | | Coppa Bernocchi | | 0 | |
| 1/10/2022 | | 1.PS | | | | 81 | | Giro dell'Emilia | | 0 | |
| 25/09/2022 | | WCRR | | | | 51 | | World Championships (Wollongong) R.R. | | 10 | |
| 31/08/2022 | | GT2s | | | | DNF | | Vuelta a España, Stage 11 : ElPozo Alimentacion - Cabo de Gata | | 0 | |
| 30/08/2022 | | GT2s | | | | 55 | | Vuelta a España, Stage 10 : Elche - Alicante I.T.T. | | 0 | |
| 28/08/2022 | | GT2s | | | | 69 | | Vuelta a España, Stage 9 : Villaviciosa - Les Praeres | | 0 | |
| 27/08/2022 | | GT2s | | | | 69 | | Vuelta a España, Stage 8 : La Pola Llaviana - Collau Fancuaya | | 0 | |
| 26/08/2022 | | GT2s | | | | 67 | | Vuelta a España, Stage 7 : Camargo - Cistierna | | 0 | |
| 25/08/2022 | | GT2s | | | | 62 | | Vuelta a España, Stage 6 : Bilbao - Al Pico Jano | | 0 | |
| 24/08/2022 | | GT2s | | | | 101 | | Vuelta a España, Stage 5 : Irun - Bilbao | | 0 | |
| 23/08/2022 | | GT2s | | | | 51 | | Vuelta a España, Stage 4 : Vitoria-Gasteiz - Laguardia | | 0 | |
| 21/08/2022 | | GT2s | | | | 69 | | Vuelta a España, Stage 3 : Breda - Breda | | 0 | |
| 20/08/2022 | | GT2s | | | | 83 | | Vuelta a España, Stage 2 : 's-Hertogenbosch - Utrecht | | 0 | |
| 19/08/2022 | | GT2s | | | | 3 | | Vuelta a España, Stage 1 : Utrecht - Utrecht T.T.T. | | 6 | |
| 11/08/2022 | | 2.1 | | | | 16 | | Tour de l'Ain | | 9 | |
| 10/08/2022 | | 2.1s | | | | 9 | | Tour de l'Ain, Stage 2 : Sain-Vulbas - Lagnieu | | 0 | |
| 7/08/2022 | | 1.1 | | | | 54 | | Tour of Leuven - Memorial Jef Scherens | | 0 | |
| 25/07/2022 | | 2.PSs | | | | DNS | | Tour de Wallonie, Stage 3 : Visé - Rochefort | | 0 | |
| 23/07/2022 | | 2.PSs | | | | leader | | Tour de Wallonie, Stage 1 : Temploux - Huy | | 8 | |
| 23/07/2022 | | 2.PSs | | | | 1 | | Tour de Wallonie, Stage 1 : Temploux - Huy | | 25 | |
| 26/06/2022 | | NC1 | | | | 13 | | National Championships France (Cholet) R.R. | | 15 | |
| 24/04/2022 | | 1.WT1 | | | | DNF | | Liège - Bastogne - Liège | | 0 | |
| 20/04/2022 | | 1.WT2 | | | | 4 | | Flèche Wallonne | | 96 | |
| 9/04/2022 | | 2.WT2r | | | | 2 | | Itzulia Basque Country, Points classification | | 22 | |
| 9/04/2022 | | 2.WT2 | | | | 24 | | Itzulia Basque Country | | 12 | |
| 9/04/2022 | | 2.WT2s | | | | 48 | | Itzulia Basque Country, Stage 6 : Eibar - Arrate | | 0 | |
| 8/04/2022 | | 2.WT2s | | | | 31 | | Itzulia Basque Country, Stage 5 : Zamudio - Mallabia | | 0 | |
| 7/04/2022 | | 2.WT2s | | | | 2 | | Itzulia Basque Country, Stage 4 : Vitoria-Gasteiz - Zamudio | | 22 | |
| 6/04/2022 | | 2.WT2s | | | | 2 | | Itzulia Basque Country, Stage 3 : Laudio - Amurrio | | 22 | |
| 5/04/2022 | | 2.WT2s | | | | 1 | | Itzulia Basque Country, Stage 2 : Leitza - Viana | | 35 | |
| 4/04/2022 | | 2.WT2s | | | | 52 | | Itzulia Basque Country, Stage 1 : Hondarribia - Hondarribia I.T.T. | | 0 | |
| 13/03/2022 | | 2.WT1 | | | | 33 | | Tirreno - Adriatico | | 5 | |
| 13/03/2022 | | 2.WT1s | | | | 104 | | Tirreno - Adriatico, Stage 7 : San Benedetto del Tronto - San Benedetto del Tronto | | 0 | |
| 12/03/2022 | | 2.WT1s | | | | 40 | | Tirreno - Adriatico, Stage 6 : Apecchio - Carpegna | | 0 | |
| 11/03/2022 | | 2.WT1s | | | | 53 | | Tirreno - Adriatico, Stage 5 : Sefro - Fermo | | 0 | |
| 10/03/2022 | | 2.WT1s | | | | 37 | | Tirreno - Adriatico, Stage 4 : Cascata della Marmore - Bellante | | 0 | |
| 9/03/2022 | | 2.WT1s | | | | 79 | | Tirreno - Adriatico, Stage 3 : Murlo - Terni | | 0 | |
| 8/03/2022 | | 2.WT1s | | | | 36 | | Tirreno - Adriatico, Stage 2 : Camaiore - Sovicille | | 0 | |
| 7/03/2022 | | 2.WT1s | | | | 32 | | Tirreno - Adriatico, Stage 1 : Lido di Camaiore - Lido di Camaiore I.T.T. | | 0 | |
| 5/03/2022 | | 1.WT3 | | | | 58 | | Strade Bianche | | 5 | |
| 27/02/2022 | | 1.PS | | | | 5 | | Faun Drôme Classic | | 52 | |
| 26/02/2022 | | 1.PS | | | | 25 | | Faun Ardèche Classic | | 5 | |
| 13/02/2022 | | 2.PS | | | | 2 | | Tour de La Provence | | 110 | |
| 13/02/2022 | | 2.PSs | | | | 7 | | Tour de La Provence, Stage 3 : Manosque - Montagne de Lure | | 0 | |
| 12/02/2022 | | 2.PSs | | | | 2 | | Tour de La Provence, Stage 2 : Arles - Manosque | | 15 | |
| 11/02/2022 | | 2.PSs | | | | 3 | | Tour de La Provence, Stage 1 : Istres - Les Saintes Maries de la Mer | | 10 | |
| 10/02/2022 | | 2.PSs | | | | 6 | | Tour de La Provence, Prologue : Berre l'Etang I.T.T. | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 9/10/2021 | | 1.WT1 | | | | 6 | | Il Lombardia | | 100 | |
| 6/10/2021 | | 1.PS | | | | 25 | | Milano - Torino | | 5 | |
| 26/09/2021 | | WCRR | | | | 1 | | World Championships (Leuven) R.R. | | 400 | |
| 18/09/2021 | | 1.PS | | | | 47 | | Primus Classic Impanis - Van Petegem | | 0 | |
| 12/09/2021 | | 2.PS | | | | 3 | | Tour of Britain | | 92 | |
| 11/09/2021 | | 2.PSs | | | | 12 | | Tour of Britain, Stage 7 : Hawick - Edinburgh | | 0 | |
| 10/09/2021 | | 2.PSs | | | | 3 | | Tour of Britain, Stage 6 : Carlisle - Gateshead | | 10 | |
| 9/09/2021 | | 2.PSs | | | | 8 | | Tour of Britain, Stage 5 : South Cheshire - Warrington | | 0 | |
| 8/09/2021 | | 2.PSs | | | | 2 | | Tour of Britain, Stage 4 : Aberaeron - Great Orme, Llandudno | | 15 | |
| 7/09/2021 | | 2.PSs | | | | 2 | | Tour of Britain, Stage 3 : Carmarthenshire - Carmarthenshire T.T.T. | | 3 | |
| 6/09/2021 | | 2.PSs | | | | 5 | | Tour of Britain, Stage 2 : Sherford - Exeter | | 3 | |
| 5/09/2021 | | 2.PSs | | | | 8 | | Tour of Britain, Stage 1 : Penzance - Bodmin | | 0 | |
| 29/08/2021 | | 1.WT2 | | | | 2 | | Bretagne Classic - Ouest-France | | 132 | |
| 26/08/2021 | | 1.1 | | | | 13 | | Druivenkoers - Overijse | | 8 | |
| 31/07/2021 | | 1.WT2 | | | | 6 | | Clasica San Sebastian | | 76 | |
| 18/07/2021 | | GT1r | | | | 7 | | Tour de France, Points classification | | 5 | |
| 18/07/2021 | | GT1 | | | | 30 | | Tour de France | | 49 | |
| 18/07/2021 | | GT1s | | | | 135 | | Tour de France, Stage 21 : Chatou - Paris | | 0 | |
| 17/07/2021 | | GT1s | | | | 19 | | Tour de France, Stage 20 : Libourne - Saint-Emilion I.T.T. | | 0 | |
| 16/07/2021 | | GT1s | | | | 104 | | Tour de France, Stage 19 : Mourenx - Libourne | | 0 | |
| 15/07/2021 | | GT1s | | | | 78 | | Tour de France, Stage 18 : Pau - Luz Ardiden | | 0 | |
| 14/07/2021 | | GT1s | | | | 39 | | Tour de France, Stage 17 : Muret - Saint-Lary-Soulan Col de Portet | | 0 | |
| 13/07/2021 | | GT1s | | | | 115 | | Tour de France, Stage 16 : Pas de la Case - Saint-Gaudens | | 0 | |
| 11/07/2021 | | GT1s | | | | 12 | | Tour de France, Stage 15 : Céret - Andorra-la-Vieille | | 0 | |
| 10/07/2021 | | GT1s | | | | 71 | | Tour de France, Stage 14 : Carcassonne - Quillan | | 0 | |
| 9/07/2021 | | GT1s | | | | 149 | | Tour de France, Stage 13 : Nîmes - Carcassonne | | 0 | |
| 8/07/2021 | | GT1s | | | | 9 | | Tour de France, Stage 12 : Saint-Paul-Trois-Châteaux - Nîmes | | 2 | |
| 7/07/2021 | | GT1s | | | | 23 | | Tour de France, Stage 11 : Sorgues - Malaucène | | 0 | |
| 6/07/2021 | | GT1s | | | | 95 | | Tour de France, Stage 10 : Albertville - Valence | | 0 | |
| 4/07/2021 | | GT1s | | | | 146 | | Tour de France, Stage 9 : Cluses - Tignes | | 0 | |
| 3/07/2021 | | GT1s | | | | 37 | | Tour de France, Stage 8 : Oyonnax - Le Grand-Bornand | | 0 | |
| 2/07/2021 | | GT1s | | | | 19 | | Tour de France, Stage 7 : Vierzon - Le Creusot | | 0 | |
| 1/07/2021 | | GT1s | | | | 66 | | Tour de France, Stage 6 : Tours - Châteauroux | | 0 | |
| 30/06/2021 | | GT1s | | | | 14 | | Tour de France, Stage 5 : Changé - Laval I.T.T. | | 0 | |
| 29/06/2021 | | GT1s | | | | 39 | | Tour de France, Stage 4 : Redon - Fougères | | 0 | |
| 28/06/2021 | | GT1s | | | | 6 | | Tour de France, Stage 3 : Lorient - Pontivy | | 10 | |
| 27/06/2021 | | GT1s | | | | 5 | | Tour de France, Stage 2 : Perros-Guirec - Mûr-de-Bretagne | | 15 | |
| 26/06/2021 | | GT1s | | | | leader | | Tour de France, Stage 1 : Brest - Landerneau | | 20 | |
| 26/06/2021 | | GT1s | | | | 1 | | Tour de France, Stage 1 : Brest - Landerneau | | 80 | |
| 20/06/2021 | | NC1 | | | | 37 | | National Championships France (Epinal) R.R. | | 0 | |
| 13/06/2021 | | 2.WT1s | | | | DNS | | Tour de Suisse, Stage 8 : Andermatt - Andermatt | | 0 | |
| 12/06/2021 | | 2.WT1s | | | | 2 | | Tour de Suisse, Stage 7 : Disentis-Sedrun - Andermatt I.T.T. | | 28 | |
| 11/06/2021 | | 2.WT1s | | | | 54 | | Tour de Suisse, Stage 6 : Fiesch - Disentis-Sedrun | | 0 | |
| 10/06/2021 | | 2.WT1s | | | | 7 | | Tour de Suisse, Stage 5 : Gstaad - Leukerbad | | 2 | |
| 9/06/2021 | | 2.WT1s | | | | 31 | | Tour de Suisse, Stage 4 : St. Urban - Gstaad | | 0 | |
| 8/06/2021 | | 2.WT1s | | | | 3 | | Tour de Suisse, Stage 3 : Lachen - Pfaffnau | | 18 | |
| 7/06/2021 | | 2.WT1s | | | | 8 | | Tour de Suisse, Stage 2 : Neuhausen am Rheinfall - Lachen | | 1 | |
| 6/06/2021 | | 2.WT1s | | | | 5 | | Tour de Suisse, Stage 1 : Frauenfeld - Frauenfeld I.T.T. | | 5 | |
| 25/04/2021 | | 1.WT1 | | | | 2 | | Liège - Bastogne - Liège | | 170 | |
| 21/04/2021 | | 1.WT2 | | | | 1 | | Flèche Wallonne | | 220 | |
| 18/04/2021 | | 1.WT2 | | | | 6 | | Amstel Gold Race | | 76 | |
| 4/04/2021 | | 1.WT1 | | | | 42 | | Ronde van Vlaanderen | | 5 | |
| 31/03/2021 | | 1.WT3 | | | | 22 | | Dwars door Vlaanderen | | 9 | |
| 20/03/2021 | | 1.WT1 | | | | 16 | | Milano - Sanremo | | 32 | |
| 16/03/2021 | | 2.WT1r | | | | 10 | | Tirreno - Adriatico, Points classification | | 0 | |
| 16/03/2021 | | 2.WT1 | | | | 41 | | Tirreno - Adriatico | | 5 | |
| 16/03/2021 | | 2.WT1s | | | | 71 | | Tirreno - Adriatico, Stage 7 : San Benedetto del Tronto I.T.T. | | 0 | |
| 15/03/2021 | | 2.WT1s | | | | 118 | | Tirreno - Adriatico, Stage 6 : Castelraimondo - Lido di Ferno | | 0 | |
| 14/03/2021 | | 2.WT1s | | | | 96 | | Tirreno - Adriatico, Stage 5 : Castellalto - Castelfidardo | | 0 | |
| 13/03/2021 | | 2.WT1s | | | | 17 | | Tirreno - Adriatico, Stage 4 : Terni - Prati di Tivo | | 0 | |
| 12/03/2021 | | 2.WT1s | | | | 34 | | Tirreno - Adriatico, Stage 3 : Monticiano - Gualdo Tadino | | 0 | |
| 11/03/2021 | | 2.WT1s | | | | 1 | | Tirreno - Adriatico, Stage 2 : Camaiore - Chiusdino | | 45 | |
| 10/03/2021 | | 2.WT1s | | | | 137 | | Tirreno - Adriatico, Stage 1 : Lido di Camaiore - Lido di Camaiore | | 0 | |
| 6/03/2021 | | 1.WT3 | | | | 2 | | Strade Bianche | | 108 | |
| 27/02/2021 | | 1.WT3 | | | | 57 | | Omloop Het Nieuwsblad | | 5 | |
| 14/02/2021 | | 2.PS | | | | 2 | | Tour de La Provence | | 110 | |
| 14/02/2021 | | 2.PSs | | | | 17 | | Tour de La Provence, Stage 4 : Avignon - Salon-de-Provence | | 0 | |
| 13/02/2021 | | 2.PSs | | | | 3 | | Tour de La Provence, Stage 3 : Istres- Mont Ventoux/Chalet Reynard | | 10 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 18/10/2020 | | 1.WT1 | | | | DNF | | Ronde van Vlaanderen | | 0 | |
| 7/10/2020 | | 1.PS | | | | 1 | | Brabantse Pijl | | 130 | |
| 4/10/2020 | | 1.WT1 | | | | 5 | | Liège - Bastogne - Liège | | 112 | |
| 27/09/2020 | | WCRR | | | | 1 | | World Championships (Imola) R.R. | | 400 | |
| 20/09/2020 | | GT1r | | | | 7 | | Tour de France, Points classification | | 5 | |
| 20/09/2020 | | GT1 | | | | 36 | | Tour de France | | 37 | |
| 20/09/2020 | | GT1s | | | | 119 | | Tour de France, Stage 21 : Mantes-la-Jolie - Paris | | 0 | |
| 19/09/2020 | | GT1s | | | | 60 | | Tour de France, Stage 20 : Lure - La Planche des Belles Filles I.T.T. | | 0 | |
| 18/09/2020 | | GT1s | | | | 142 | | Tour de France, Stage 19 : Bourg-en-Bresse - Champagnole | | 0 | |
| 17/09/2020 | | GT1s | | | | 129 | | Tour de France, Stage 18 : Méribel - La Roche-sur-Foron | | 0 | |
| 16/09/2020 | | GT1s | | | | 26 | | Tour de France, Stage 17 : Grenoble - Méribel/Col de la Loze | | 0 | |
| 15/09/2020 | | GT1s | | | | 10 | | Tour de France, Stage 16 : La Tour-du-Pin - Villard-de-Lans | | 1 | |
| 13/09/2020 | | GT1s | | | | 127 | | Tour de France, Stage 15 : Lyon - Grand-Colombier | | 0 | |
| 12/09/2020 | | GT1s | | | | 52 | | Tour de France, Stage 14 : Clermont-Ferrand - Lyon | | 0 | |
| 11/09/2020 | | GT1s | | | | 34 | | Tour de France, Stage 13 : Châtel-Guyon - Puy Mary | | 0 | |
| 10/09/2020 | | GT1s | | | | 11 | | Tour de France, Stage 12 : Chauvigny - Sarran | | 0 | |
| 9/09/2020 | | GT1s | | | | 147 | | Tour de France, Stage 11 : Châtelaillon-Plage - Poitiers | | 0 | |
| 8/09/2020 | | GT1s | | | | 160 | | Tour de France, Stage 10 : Ile d'Oloron - Ile-de-Ré | | 0 | |
| 6/09/2020 | | GT1s | | | | 160 | | Tour de France, Stage 9 : Pau - Laruns | | 0 | |
| 5/09/2020 | | GT1s | | | | 38 | | Tour de France, Stage 8 : Cazères - Loudenvielle | | 0 | |
| 4/09/2020 | | GT1s | | | | 12 | | Tour de France, Stage 7 : Millau - Lavaur | | 0 | |
| 3/09/2020 | | GT1s | | | | 5 | | Tour de France, Stage 6 : Le Teil - Mont-Aigoual | | 15 | |
| 2/09/2020 | | GT1s | | | | 16 | | Tour de France, Stage 5 : Gap - Privas | | 0 | |
| 1/09/2020 | | GT1s | | | | leader | | Tour de France, Stage 4 : Sisteron - Orcières-Merlette | | 20 | |
| 1/09/2020 | | GT1s | | | | 5 | | Tour de France, Stage 4 : Sisteron - Orcières-Merlette | | 15 | |
| 31/08/2020 | | GT1s | | | | leader | | Tour de France, Stage 3 : Nice - Sisteron | | 20 | |
| 31/08/2020 | | GT1s | | | | 58 | | Tour de France, Stage 3 : Nice - Sisteron | | 0 | |
| 30/08/2020 | | GT1s | | | | leader | | Tour de France, Stage 2 : Nice - Nice | | 20 | |
| 30/08/2020 | | GT1s | | | | 1 | | Tour de France, Stage 2 : Nice - Nice | | 80 | |
| 29/08/2020 | | GT1s | | | | 107 | | Tour de France, Stage 1 : Nice - Nice | | 0 | |
| 23/08/2020 | | NC1 | | | | 3 | | National Championships France (Grand-Champ) R.R. | | 72 | |
| 16/08/2020 | | 2.WT1r | | | | 2 | | Critérium du Dauphiné, Mountains classification | | 28 | |
| 16/08/2020 | | 2.WT1 | | | | 24 | | Critérium du Dauphiné | | 12 | |
| 16/08/2020 | | 2.WT2 | | | | 20 | | Critérium du Dauphiné, Stage 5 : Megève - Megève | | 0 | |
| 15/08/2020 | | 2.WT1s | | | | 3 | | Critérium du Dauphiné, Stage 4 : Ugine - Megève | | 18 | |
| 14/08/2020 | | 2.WT1s | | | | 71 | | Critérium du Dauphiné, Stage 3 : Corenc - Saint-Martin-de-Belleville | | 0 | |
| 13/08/2020 | | 2.WT1s | | | | 36 | | Critérium du Dauphiné, Stage 2 : Vienne - Col de Porte | | 0 | |
| 12/08/2020 | | 2.WT1s | | | | 13 | | Critérium du Dauphiné, Stage 1 : Clermont-Ferrand - Saint-Christo-en-Jarez | | 0 | |
| 8/08/2020 | | 1.WT1 | | | | 2 | | Milano - Sanremo | | 170 | |
| 1/08/2020 | | 1.WT3 | | | | 24 | | Strade Bianche | | 7 | |
| 15/03/2020 | | 2.WT1 | | | | 16 | | Paris - Nice | | 34 | |
| 14/03/2020 | | 2.WT1r | | | | 4 | | Paris - Nice, Points Classification | | 10 | |
| 14/03/2020 | | 2.WT1s | | | | 32 | | Paris - Nice, Stage 7 : Nice - Valdeblore La Colmiane | | 0 | |
| 14/03/2020 | | 2.WT1r | | | | 4 | | Paris - Nice, Mountains classification | | 10 | |
| 13/03/2020 | | 2.WT1s | | | | 5 | | Paris - Nice, Stage 6 : Sorgues - Apt | | 5 | |
| 12/03/2020 | | 2.WT1s | | | | 48 | | Paris - Nice, Stage 5 : Gannat - La Côte-Saint-André | | 0 | |
| 11/03/2020 | | 2.WT1s | | | | 18 | | Paris - Nice, Stage 4 : Saint-Amand-Montrond - Saint-Amand-Montrond I.T.T. | | 0 | |
| 10/03/2020 | | 2.WT1s | | | | 34 | | Paris - Nice, Stage 3 : Chalette-sur-Loing - La Châtre | | 0 | |
| 9/03/2020 | | 2.WT1s | | | | 53 | | Paris - Nice, Stage 2 : Chevreuse - Chalette-sur-Loing | | 0 | |
| 8/03/2020 | | 2.WT1s | | | | 4 | | Paris - Nice, Stage 1 : Plaisir - Plaisir | | 10 | |
| 1/03/2020 | | 1.PS | | | | 17 | | Drôme Classic | | 9 | |
| 16/02/2020 | | 2.1 | | | | 72 | | Tour Colombia | | 0 | |
| 14/02/2020 | | 2.1s | | | | 3 | | Tour Colombia, Stage 4 : Paipa - Santa Rosa de Viterbo | | 5 | |
| 11/02/2020 | | 2.1s | | | | 2 | | Tour Colombia, Stage 1 : Tunja T.T.T. | | 2 | |
| 28/01/2020 | | 2.PSs | | | | DNS | | Vuelta a San Juan, Stage 3 : Ullum - Punta Negra I.T.T. | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 29/09/2019 | | WCRR | | | | 28 | | World Championships (Harrogate) R.R. | | 12 | |
| 15/09/2019 | | 1.WT2 | | | | 13 | | GP de Montréal | | 30 | |
| 13/09/2019 | | 1.WT2 | | | | 7 | | GP de Québec | | 66 | |
| 1/09/2019 | | 2.HC | | | | 94 | | Deutschland Tour | | 0 | |
| 3/08/2019 | | 1.WT2 | | | | DNF | | Clasica San Sebastian | | 0 | |
| 28/07/2019 | | GT1r | | | | 10 | | Tour de France, Points classification | | 1 | |
| 28/07/2019 | | GT1 | | | | 5 | | Tour de France | | 290 | |
| 28/07/2019 | | GT1s | | | | 67 | | Tour de France, Stage 21 : Rambouillet - Paris | | 0 | |
| 27/07/2019 | | GT1s | | | | 26 | | Tour de France, Stage 20 : Albertville - Val Thorens | | 0 | |
| 26/07/2019 | | GT1s | | | | 16 | | Tour de France, Stage 19 : Saint-Jean-de-Maurienne - Col de l'Iséran | | 0 | |
| 25/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 18 : Embrun - Valloire | | 20 | |
| 25/07/2019 | | GT1s | | | | 14 | | Tour de France, Stage 18 : Embrun - Valloire | | 0 | |
| 24/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 17 : Pont-du-Gard - Gap | | 20 | |
| 24/07/2019 | | GT1s | | | | 34 | | Tour de France, Stage 17 : Pont-du-Gard - Gap | | 0 | |
| 23/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 16 : Nîmes - Nîmes | | 20 | |
| 23/07/2019 | | GT1s | | | | 20 | | Tour de France, Stage 16 : Nîmes - Nîmes | | 0 | |
| 21/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 15 : Limoux - Foix/Prat d'Albis | | 20 | |
| 21/07/2019 | | GT1s | | | | 11 | | Tour de France, Stage 15 : Limoux - Foix/Prat d'Albis | | 0 | |
| 20/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 14 : Tarbes - Col du Tourmalet | | 20 | |
| 20/07/2019 | | GT1s | | | | 2 | | Tour de France, Stage 14 : Tarbes - Col du Tourmalet | | 50 | |
| 19/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 13 : Pau - Pau I.T.T. | | 20 | |
| 19/07/2019 | | GT1s | | | | 1 | | Tour de France, Stage 13 : Pau - Pau I.T.T. | | 80 | |
| 18/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 12 : Toulouse - Bagnères-de-Bigorre | | 20 | |
| 18/07/2019 | | GT1s | | | | 31 | | Tour de France, Stage 12 : Toulouse - Bagnères-de-Bigorre | | 0 | |
| 17/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 11 : Albi - Toulouse | | 20 | |
| 17/07/2019 | | GT1s | | | | 17 | | Tour de France, Stage 11 : Albi - Toulouse | | 0 | |
| 15/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 10 : Saint-Flour - Albi | | 20 | |
| 15/07/2019 | | GT1s | | | | 11 | | Tour de France, Stage 10 : Saint-Flour - Albi | | 0 | |
| 14/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 9 : Saint-Étienne - Brioude | | 20 | |
| 14/07/2019 | | GT1s | | | | 35 | | Tour de France, Stage 9 : Saint-Étienne - Brioude | | 0 | |
| 13/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 8 : Mâcon - Saint-Étienne | | 20 | |
| 13/07/2019 | | GT1s | | | | 3 | | Tour de France, Stage 8 : Mâcon - Saint-Étienne | | 35 | |
| 12/07/2019 | | GT1s | | | | 22 | | Tour de France, Stage 7 : Belfort - Chalon-sur-Saône | | 0 | |
| 11/07/2019 | | GT1s | | | | 6 | | Tour de France, Stage 6 : Mulhouse - La Planche des Belles Filles | | 10 | |
| 10/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 5 : Saint-Dié-des-Vosges - Colmar | | 20 | |
| 10/07/2019 | | GT1s | | | | 10 | | Tour de France, Stage 5 : Saint-Dié-des-Vosges - Colmar | | 1 | |
| 9/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 4 : Reims - Nancy | | 20 | |
| 9/07/2019 | | GT1s | | | | 56 | | Tour de France, Stage 4 : Reims - Nancy | | 0 | |
| 8/07/2019 | | GT1s | | | | leader | | Tour de France, Stage 3 : Binche (BEL) - Epernay | | 20 | |
| 8/07/2019 | | GT1s | | | | 1 | | Tour de France, Stage 3 : Binche (BEL) - Epernay | | 80 | |
| 7/07/2019 | | GT1s | | | | 3 | | Tour de France, Stage 2 : Brussel (BEL) T.T.T. | | 8 | |
| 6/07/2019 | | GT1s | | | | 22 | | Tour de France, Stage 1 : Brussel (BEL) - Brussel (BEL) | | 0 | |
| 16/06/2019 | | 2.WT1r | | | | 1 | | Critérium du Dauphiné, Mountains classification | | 45 | |
| 16/06/2019 | | 2.WT1r | | | | 3 | | Critérium du Dauphiné, Points classification | | 18 | |
| 16/06/2019 | | 2.WT1 | | | | 35 | | Critérium du Dauphiné | | 5 | |
| 16/06/2019 | | 2.WT1s | | | | 7 | | Critérium du Dauphiné, Stage 8 : Cluses - Champéry (SUI) | | 2 | |
| 15/06/2019 | | 2.WT1s | | | | 57 | | Critérium du Dauphiné, Stage 7 : Saint-Genix-les-Villages - Pipay | | 0 | |
| 14/06/2019 | | 2.WT1s | | | | 1 | | Critérium du Dauphiné, Stage 6 : Saint-Vulbas - Saint-Michel-de-Maurienne | | 45 | |
| 13/06/2019 | | 2.WT1s | | | | 3 | | Critérium du Dauphiné, Stage 5 : Boën-sur-Lignon - Voiron | | 18 | |
| 12/06/2019 | | 2.WT1s | | | | 7 | | Critérium du Dauphiné, Stage 4 : Roanne - Roanne I.T.T. | | 2 | |
| 11/06/2019 | | 2.WT1s | | | | 120 | | Critérium du Dauphiné, Stage 3 : Le Puy-en-Velay - Riom | | 0 | |
| 10/06/2019 | | 2.WT1s | | | | 116 | | Critérium du Dauphiné, Stage 2 : Mauriac - Craponne-sur-Arzon | | 0 | |
| 9/06/2019 | | 2.WT1s | | | | 22 | | Critérium du Dauphiné, Stage 1 : Aurillac - Jussac | | 0 | |
| 28/04/2019 | | 1.WT1 | | | | 16 | | Liège - Bastogne - Liège | | 32 | |
| 24/04/2019 | | 1.WT2 | | | | 1 | | Flèche Wallonne | | 220 | |
| 21/04/2019 | | 1.WT2 | | | | 4 | | Amstel Gold Race | | 96 | |
| 17/04/2019 | | 1.HC | | | | 2 | | Brabantse Pijl | | 84 | |
| 11/04/2019 | | 2.WT2s | | | | DNS | | Itzulia Basque Country, Stage 4 : Vitoria-Gasteiz - Arrigorriaga | | 0 | |
| 10/04/2019 | | 2.WT2s | | | | 151 | | Itzulia Basque Country, Stage 3 : Sarriguren - Estibaliz | | 0 | |
| 9/04/2019 | | 2.WT2s | | | | 1 | | Itzulia Basque Country, Stage 2 : Zumarraga - Gorraiz | | 35 | |
| 8/04/2019 | | 2.WT2s | | | | 4 | | Itzulia Basque Country, Stage 1 : Zumarraga - Zumarraga I.T.T. | | 8 | |
| 23/03/2019 | | 1.WT1 | | | | 1 | | Milano - Sanremo | | 280 | |
| 19/03/2019 | | 2.WT1r | | | | 4 | | Tirreno - Adriatico, Mountains classification | | 10 | |
| 19/03/2019 | | 2.WT1r | | | | 3 | | Tirreno - Adriatico, Points classification | | 18 | |
| 19/03/2019 | | 2.WT1 | | | | 6 | | Tirreno - Adriatico | | 110 | |
| 19/03/2019 | | 2.WT1s | | | | 61 | | Tirreno - Adriatico, Stage 7 : San Benedetto del Tronto I.T.T. | | 0 | |
| 18/03/2019 | | 2.WT1s | | | | 1 | | Tirreno - Adriatico, Stage 6 : Matelica - Jesi | | 45 | |
| 17/03/2019 | | 2.WT1s | | | | 12 | | Tirreno - Adriatico, Stage 5 : Colli al Metauro - Recanti | | 0 | |
| 16/03/2019 | | 2.WT1s | | | | 9 | | Tirreno - Adriatico, Stage 4 : Foligno - Fossombrone | | 0 | |
| 15/03/2019 | | 2.WT1s | | | | 39 | | Tirreno - Adriatico, Stage 3 : Pomarance - Foligno | | 0 | |
| 14/03/2019 | | 2.WT1s | | | | 1 | | Tirreno - Adriatico, Stage 2 : Camaiore - Pomarance | | 45 | |
| 13/03/2019 | | 2.WT1s | | | | 4 | | Tirreno - Adriatico, Stage 1 : Lido di Camaiore T.T.T. | | 2 | |
| 9/03/2019 | | 1.WT3 | | | | 1 | | Strade Bianche | | 180 | |
| 17/02/2019 | | 2.1 | | | | 7 | | Tour Colombia | | 40 | |
| 17/02/2019 | | 2.1s | | | | 16 | | Tour Colombia, Stage 6 : El Retiro - Alto de Las Palmas | | 0 | |
| 16/02/2019 | | 2.1s | | | | leader | | Tour Colombia, Stage 5 : La Union - La Union | | 6 | |
| 16/02/2019 | | 2.1s | | | | 1 | | Tour Colombia, Stage 5 : La Union - La Union | | 20 | |
| 15/02/2019 | | 2.1s | | | | 3 | | Tour Colombia, Stage 4 : Medellin - Medellin | | 5 | |
| 14/02/2019 | | 2.1s | | | | 2 | | Tour Colombia, Stage 3 : Llanogrande - Llanogrande | | 10 | |
| 12/02/2019 | | 2.1s | | | | 2 | | Tour Colombia, Stage 1 : Medellin T.T.T. | | 2 | |
| 3/02/2019 | | 2.1 | | | | 2 | | Vuelta a San Juan | | 80 | |
| 2/02/2019 | | 2.1s | | | | 8 | | Vuelta a San Juan, Stage 6 : Autodromo El Villicum, circuit race | | 0 | |
| 1/02/2019 | | 2.1s | | | | 14 | | Vuelta a San Juan, Stage 5 : San Martin - Alto Colorado | | 0 | |
| 30/01/2019 | | 2.1s | | | | leader | | Vuelta a San Juan, Stage 4 : San Jose de Jachal - Villa San Agustin | | 6 | |
| 29/01/2019 | | 2.1s | | | | leader | | Vuelta a San Juan, Stage 3 : Pocito - Pocito I.T.T. | | 6 | |
| 29/01/2019 | | 2.1s | | | | 1 | | Vuelta a San Juan, Stage 3 : Pocito - Pocito I.T.T. | | 20 | |
| 28/01/2019 | | 2.1s | | | | 1 | | Vuelta a San Juan, Stage 2 : Chimbas - Peri Lago Punta Negra | | 20 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 30/09/2018 | | WCRR | | | | 8 | | World Championships (Innsbruck) R.R. | | 112 | |
| 16/09/2018 | | 2.1 | | | | 1 | | Tour de Slovaquie | | 110 | |
| 15/09/2018 | | 2.1s | | | | leader | | Tour de Slovaquie, Stage 3 : Dubnica nad Vahom - Nitra | | 6 | |
| 14/09/2018 | | 2.1s | | | | leader | | Tour de Slovaquie, Stage 2 : Ruzomberok - Dubnica nad Vahom | | 6 | |
| 14/09/2018 | | 2.1s | | | | 5 | | Tour de Slovaquie, Stage 2 : Ruzomberok - Dubnica nad Vahom | | 0 | |
| 13/09/2018 | | 2.1s | | | | leader | | Tour de Slovaquie, Stage 1 : Poprad - Strbske Pleso | | 6 | |
| 13/09/2018 | | 2.1s | | | | 1 | | Tour de Slovaquie, Stage 1 : Poprad - Strbske Pleso | | 20 | |
| 12/09/2018 | | 2.1s | | | | 4 | | Tour de Slovaquie, Prologue : Poprad I.T.T. | | 3 | |
| 9/09/2018 | | 2.HC | | | | 1 | | Tour of Britain | | 160 | |
| 9/09/2018 | | 2.HCs | | | | 13 | | Tour of Britain, Stage 8 : London - London | | 0 | |
| 8/09/2018 | | 2.HCs | | | | leader | | Tour of Britain, Stage 7 : West Bridgford - Mansfield | | 8 | |
| 8/09/2018 | | 2.HCs | | | | 19 | | Tour of Britain, Stage 7 : West Bridgford - Mansfield | | 0 | |
| 7/09/2018 | | 2.HCs | | | | leader | | Tour of Britain, Stage 6 : Barrow-in-Furness - Whinlatter Pass | | 8 | |
| 7/09/2018 | | 2.HCs | | | | 2 | | Tour of Britain, Stage 6 : Barrow-in-Furness - Whinlatter Pass | | 15 | |
| 6/09/2018 | | 2.HCs | | | | 2 | | Tour of Britain, Stage 5 : Cockermouth - Whinlatter Pass T.T.T. | | 3 | |
| 4/09/2018 | | 2.HCs | | | | 1 | | Tour of Britain, Stage 3 : Bristol - Bristol | | 25 | |
| 3/09/2018 | | 2.HCs | | | | 4 | | Tour of Britain, Stage 2 : Cranbrook - Barnstaple | | 5 | |
| 4/08/2018 | | 1.WT2 | | | | 1 | | Clasica San Sebastian | | 220 | |
| 29/07/2018 | | GT1r | | | | 1 | | Tour de France, Mountains classification | | 80 | |
| 29/07/2018 | | GT1r | | | | 5 | | Tour de France, Points classification | | 15 | |
| 29/07/2018 | | GT1 | | | | 33 | | Tour de France | | 43 | |
| 29/07/2018 | | GT1s | | | | 105 | | Tour de France, Stage 21 : Houilles - Paris/Champs-Élysées | | 0 | |
| 28/07/2018 | | GT1s | | | | 58 | | Tour de France, Stage 20 : Saint-Pée-sur-Nivelle - Espelette I.T.T. | | 0 | |
| 27/07/2018 | | GT1s | | | | 36 | | Tour de France, Stage 19 : Lourdes - Laruns | | 0 | |
| 26/07/2018 | | GT1s | | | | 135 | | Tour de France, Stage 18 : Trie-sur-Baïse - Pau | | 0 | |
| 25/07/2018 | | GT1s | | | | 47 | | Tour de France, Stage 17 : Bagnères-de-Luchon - Saint-Lary-Soulan/Col du Portet | | 0 | |
| 24/07/2018 | | GT1s | | | | 1 | | Tour de France, Stage 16 : Carcassonne - Bagnères-de-Luchon | | 80 | |
| 22/07/2018 | | GT1s | | | | 142 | | Tour de France, Stage 15 : Millau - Carcassonne | | 0 | |
| 21/07/2018 | | GT1s | | | | 2 | | Tour de France, Stage 14 : Saint-Paul-Trois-Châteaux - Mende (Croix Neuve) | | 50 | |
| 20/07/2018 | | GT1s | | | | 148 | | Tour de France, Stage 13 : Bourg d'Oisans - Valence | | 0 | |
| 19/07/2018 | | GT1s | | | | 100 | | Tour de France, Stage 12 : Bourg-Saint-Maurice - Alpe d'Huez | | 0 | |
| 18/07/2018 | | GT1s | | | | 84 | | Tour de France, Stage 11 : Albertville - La Rosière | | 0 | |
| 17/07/2018 | | GT1s | | | | 1 | | Tour de France, Stage 10 : Annecy - Le Grand-Bornand | | 80 | |
| 15/07/2018 | | GT1s | | | | 108 | | Tour de France, Stage 9 : Arras - Roubaix | | 0 | |
| 14/07/2018 | | GT1s | | | | 124 | | Tour de France, Stage 8 : Dreux - Amiens | | 0 | |
| 13/07/2018 | | GT1s | | | | 81 | | Tour de France, Stage 7 : Fougères - Chartres | | 0 | |
| 12/07/2018 | | GT1s | | | | 4 | | Tour de France, Stage 6 : Brest - Guerlédan/Mûr-de-Bretagne | | 25 | |
| 11/07/2018 | | GT1s | | | | 5 | | Tour de France, Stage 5 : Lorient - Quimper | | 15 | |
| 10/07/2018 | | GT1s | | | | 15 | | Tour de France, Stage 4 : La Baule - Sarzeau | | 0 | |
| 9/07/2018 | | GT1s | | | | 3 | | Tour de France, Stage 3 : Cholet - Cholet T.T.T. | | 8 | |
| 8/07/2018 | | GT1s | | | | 11 | | Tour de France, Stage 2 : Mouilleron-Saint-Germain - La Roche-sur-Yon | | 0 | |
| 7/07/2018 | | GT1s | | | | 23 | | Tour de France, Stage 1 : Noirmoutier-en-l'Ile - Fontenay-le-Comte | | 0 | |
| 1/07/2018 | | NC1 | | | | 3 | | National Championships France (Mantes-la-Jolie) R.R. | | 72 | |
| 10/06/2018 | | 2.WT1r | | | | 10 | | Critérium du Dauphiné, Mountains classification | | 0 | |
| 10/06/2018 | | 2.WT1r | | | | 4 | | Critérium du Dauphiné, Points classification | | 10 | |
| 10/06/2018 | | 2.WT1 | | | | 21 | | Critérium du Dauphiné | | 18 | |
| 10/06/2018 | | 2.WT1s | | | | 35 | | Critérium du Dauphiné, Stage 7 : Moûtiers - Saint-Gervais-Mont-Blanc | | 0 | |
| 9/06/2018 | | 2.WT1s | | | | 29 | | Critérium du Dauphiné, Stage 6 : Frontenex - La Rosière | | 0 | |
| 8/06/2018 | | 2.WT1s | | | | 12 | | Critérium du Dauphiné, Stage 5 : Grenoble - Valmorel | | 0 | |
| 7/06/2018 | | 2.WT1s | | | | 1 | | Critérium du Dauphiné, Stage 4 : Chazey-sur-Ain - Lans-en-Vercors | | 45 | |
| 6/06/2018 | | 2.WT1s | | | | 5 | | Critérium du Dauphiné, Stage 3 : Pont-de-Vaux - Louhans-Châteaurenaud T.T.T. | | 1 | |
| 5/06/2018 | | 2.WT1s | | | | 16 | | Critérium du Dauphiné, Stage 2 : Montbrison - Belleville en Beaujolais | | 0 | |
| 4/06/2018 | | 2.WT1s | | | | 2 | | Critérium du Dauphiné, Stage 1 : Valence - Saint-Just-Saint-Rambert | | 28 | |
| 3/06/2018 | | 2.WT1s | | | | 17 | | Critérium du Dauphiné, Prologue : Valence I.T.T. | | 0 | |
| 22/04/2018 | | 1.WT1 | | | | 4 | | Liège - Bastogne - Liège | | 125 | |
| 18/04/2018 | | 1.WT2 | | | | 1 | | Flèche Wallonne | | 220 | |
| 15/04/2018 | | 1.WT2 | | | | 7 | | Amstel Gold Race | | 66 | |
| 7/04/2018 | | 2.WT2r | | | | 10 | | Itzulia Basque Country, Mountains classification | | 0 | |
| 7/04/2018 | | 2.WT2r | | | | 2 | | Itzulia Basque Country, Points classification | | 22 | |
| 7/04/2018 | | 2.WT2 | | | | 35 | | Itzulia Basque Country | | 5 | |
| 7/04/2018 | | 2.WT2s | | | | 90 | | Itzulia Basque Country, Stage 6 : Eibar - Arrate | | 0 | |
| 6/04/2018 | | 2.WT2s | | | | 20 | | Itzulia Basque Country, Stage 5 : Vitoria - Gasteiz | | 0 | |
| 5/04/2018 | | 2.WT2s | | | | 8 | | Itzulia Basque Country, Stage 4 : Lodosa - Lodosa I.T.T. | | 1 | |
| 4/04/2018 | | 2.WT2s | | | | leader | | Itzulia Basque Country, Stage 3 : Bermeo - Valdegovia | | 10 | |
| 4/04/2018 | | 2.WT2s | | | | 6 | | Itzulia Basque Country, Stage 3 : Bermeo - Valdegovia | | 3 | |
| 3/04/2018 | | 2.WT2s | | | | leader | | Itzulia Basque Country, Stage 2 : Zarautz - Bermeo | | 10 | |
| 3/04/2018 | | 2.WT2s | | | | 1 | | Itzulia Basque Country, Stage 2 : Zarautz - Bermeo | | 35 | |
| 2/04/2018 | | 2.WT2s | | | | leader | | Itzulia Basque Country, Stage 1 : Zarautz - Zarautz | | 10 | |
| 2/04/2018 | | 2.WT2s | | | | 1 | | Itzulia Basque Country, Stage 1 : Zarautz - Zarautz | | 35 | |
| 17/03/2018 | | 1.WT1 | | | | 35 | | Milano - Sanremo | | 5 | |
| 11/03/2018 | | 2.WT1r | | | | 10 | | Paris - Nice, Mountains classification | | 0 | |
| 11/03/2018 | | 2.WT1r | | | | 3 | | Paris - Nice, Points classification | | 18 | |
| 11/03/2018 | | 2.WT1 | | | | 18 | | Paris - Nice | | 26 | |
| 11/03/2018 | | 2.WT1s | | | | 34 | | Paris - Nice, Stage 8 : Nice - Nice | | 0 | |
| 10/03/2018 | | 2.WT1s | | | | 17 | | Paris - Nice, Stage 7 : Nice - La Colmiane | | 0 | |
| 9/03/2018 | | 2.WT1s | | | | 3 | | Paris - Nice, Stage 6 : Sisteron - Vence | | 18 | |
| 8/03/2018 | | 2.WT1s | | | | 37 | | Paris - Nice, Stage 5 : Salon-de-Provence - Sisteron | | 0 | |
| 7/03/2018 | | 2.WT1s | | | | 3 | | Paris - Nice, Stage 4 : La Fouillouse - Saint-Étienne I.T.T. | | 18 | |
| 6/03/2018 | | 2.WT1s | | | | 8 | | Paris - Nice, Stage 3 : Bourges - Châtel-Guyon | | 1 | |
| 5/03/2018 | | 2.WT1s | | | | 13 | | Paris - Nice, Stage 2 : Orsonville - Vierzon | | 0 | |
| 4/03/2018 | | 2.WT1s | | | | 6 | | Paris - Nice, Stage 1 : Chatou - Meudon | | 3 | |
| 25/02/2018 | | 2.WT3 | | | | 4 | | Abu Dhabi Tour | | 100 | |
| 25/02/2018 | | 2.WT3s | | | | 3 | | Abu Dhabi Tour, Stage 5 : Al Ain - Jebel Hafeet | | 12 | |
| 24/02/2018 | | 2.WT3s | | | | 13 | | Abu Dhabi Tour, Stage 4 : Abu Dhabi I.T.T. | | 0 | |
| 23/02/2018 | | 2.WT3s | | | | 68 | | Abu Dhabi Tour, Stage 3 : Abu Dhabi - Abu Dhabi | | 0 | |
| 22/02/2018 | | 2.WT3s | | | | 28 | | Abu Dhabi Tour, Stage 2 : Abu Dhabi - Abu Dhabi | | 0 | |
| 21/02/2018 | | 2.WT3s | | | | 90 | | Abu Dhabi Tour, Stage 1 : Madinat Zayed - Madinat Zayed | | 0 | |
| 11/02/2018 | | 2.1 | | | | 7 | | Colombia Oro y Paz | | 40 | |
| 11/02/2018 | | 2.1s | | | | 10 | | Colombia Oro y Paz, Stage 6 : Armenia - Manizales | | 0 | |
| 10/02/2018 | | 2.1s | | | | 13 | | Colombia Oro y Paz, Stage 5 : Pereira - Salento | | 0 | |
| 9/02/2018 | | 2.1s | | | | leader | | Colombia Oro y Paz, Stage 4 : Buga - El Tambo | | 6 | |
| 9/02/2018 | | 2.1s | | | | 1 | | Colombia Oro y Paz, Stage 4 : Buga - El Tambo | | 20 | |
| 7/02/2018 | | 2.1s | | | | 19 | | Colombia Oro y Paz, Stage 2 : Palmira - Palmira | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 24/10/2017 | | 2.WT3 | | | | 4 | | Tour of Guangxi | | 100 | |
| 24/10/2017 | | 2.WT3s | | | | 22 | | Tour of Guangxi, Stage 6 : Guilin - Guilin | | 0 | |
| 23/10/2017 | | 2.WT3s | | | | 40 | | Tour of Guangxi, Stage 5 : Liuzhou - Guilin | | 0 | |
| 22/10/2017 | | 2.WT3s | | | | 4 | | Tour of Guangxi, Stage 4 : Nanning - Mashan Nongla | | 7 | |
| 21/10/2017 | | 2.WT3s | | | | 31 | | Tour of Guangxi, Stage 3 : Nanning - Nanning | | 0 | |
| 20/10/2017 | | 2.WT3s | | | | 47 | | Tour of Guangxi, Stage 2 : Qinzhou - Nanning | | 0 | |
| 19/10/2017 | | 2.WT3s | | | | 46 | | Tour of Guangxi, Stage 1 : Beihai - Beihai | | 0 | |
| 7/10/2017 | | 1.WT1 | | | | 2 | | Il Lombardia | | 170 | |
| 5/10/2017 | | 1.HC | | | | 51 | | Milano - Torino | | 0 | |
| 24/09/2017 | | WCRR | | | | 10 | | World Championships (Bergen) R.R. | | 80 | |
| 10/09/2017 | | GT2 | | | | 68 | | Vuelta a España | | 15 | |
| 10/09/2017 | | GT2s | | | | 25 | | Vuelta a España, Stage 21 : Arroyomolinos - Madrid | | 0 | |
| 9/09/2017 | | GT2s | | | | 112 | | Vuelta a España, Stage 20 : Corvera de Asturias - Alto de l'Angliru | | 0 | |
| 8/09/2017 | | GT2s | | | | 94 | | Vuelta a España, Stage 19 : Caso - Gijon | | 0 | |
| 7/09/2017 | | GT2s | | | | 13 | | Vuelta a España, Stage 18 : Suances - Santo Toribio de Liebana | | 0 | |
| 6/09/2017 | | GT2s | | | | 16 | | Vuelta a España, Stage 17 : Villadiego - Alto de los Machucos | | 0 | |
| 5/09/2017 | | GT2s | | | | 32 | | Vuelta a España, Stage 16 : Los Arcos - Logroño I.T.T. | | 0 | |
| 3/09/2017 | | GT2s | | | | 134 | | Vuelta a España, Stage 15 : Alcala la Real - Sierra Nevada/Alto Hoya de la Mora | | 0 | |
| 2/09/2017 | | GT2s | | | | 105 | | Vuelta a España, Stage 14 : Ecija - Sierra de la Pandera | | 0 | |
| 1/09/2017 | | GT2s | | | | 33 | | Vuelta a España, Stage 13 : Coin - Tomares | | 0 | |
| 31/08/2017 | | GT2s | | | | 156 | | Vuelta a España, Stage 12 : Motril - Antequera | | 0 | |
| 30/08/2017 | | GT2s | | | | 52 | | Vuelta a España, Stage 11 : Lorca - Calar Alto | | 0 | |
| 29/08/2017 | | GT2s | | | | 150 | | Vuelta a España, Stage 10 : Caravaca de la Cruz - Alhama de Murcia | | 0 | |
| 27/08/2017 | | GT2s | | | | 145 | | Vuelta a España, Stage 9 : Orihuela-Costa - Cumbre del Sol | | 0 | |
| 26/08/2017 | | GT2s | | | | 1 | | Vuelta a España, Stage 8 : Hellin - Xorret de Cati | | 70 | |
| 25/08/2017 | | GT2s | | | | 117 | | Vuelta a España, Stage 7 : Lliria - Cuenca | | 0 | |
| 24/08/2017 | | GT2s | | | | 153 | | Vuelta a España, Stage 6 : Vilarreal - Port de Sagunt | | 0 | |
| 23/08/2017 | | GT2s | | | | 7 | | Vuelta a España, Stage 5 : Benicassim - Alcossebremat | | 5 | |
| 22/08/2017 | | GT2s | | | | 100 | | Vuelta a España, Stage 4 : Escaldes-Engordany (AND) - Tarragona | | 0 | |
| 21/08/2017 | | GT2s | | | | 128 | | Vuelta a España, Stage 3 : Prades - Andorra la Vella (AND) | | 0 | |
| 20/08/2017 | | GT2s | | | | 18 | | Vuelta a España, Stage 2 : Nîmes (FRA) - Gruissan (FRA) | | 0 | |
| 19/08/2017 | | GT2s | | | | 2 | | Vuelta a España, Stage 1 : Nîmes (FRA) T.T.T. | | 10 | |
| 5/08/2017 | | 2.HC | | | | 22 | | Vuelta a Burgos | | 9 | |
| 4/08/2017 | | 2.HCs | | | | 3 | | Vuelta a Burgos, Stage 4 : Gumiel de Izan - Ciudad Romana de Clunia | | 10 | |
| 2/08/2017 | | 2.HCs | | | | 17 | | Vuelta a Burgos, Stage 2 : Oña - Belorado | | 0 | |
| 1/08/2017 | | 2.HCs | | | | 3 | | Vuelta a Burgos, Stage 1 : Burgos - Burgos (Alto del Castillo) | | 10 | |
| 19/07/2017 | | 1.1 | | | | 63 | | GP Pino Cerami | | 0 | |
| 7/04/2017 | | 2.WT2s | | | | DNF | | Vuelta al Pais Vasco, Stage 5 : Bilbao - Eibar (Arrate) | | 0 | |
| 6/04/2017 | | 2.WT2s | | | | 138 | | Vuelta al Pais Vasco, Stage 4 : Donostia - Bilbao | | 0 | |
| 5/04/2017 | | 2.WT2s | | | | 89 | | Vuelta al Pais Vasco, Stage 3 : Gasteiz - Donostia | | 0 | |
| 4/04/2017 | | 2.WT2s | | | | 135 | | Vuelta al Pais Vasco, Stage 2 : Iruñea - Eltziego | | 0 | |
| 3/04/2017 | | 2.WT2s | | | | 155 | | Vuelta al Pais Vasco, Stage 1 : Iruñea - Eguesibar-Sarriguren | | 0 | |
| 18/03/2017 | | 1.WT1 | | | | 3 | | Milano - Sanremo | | 145 | |
| 12/03/2017 | | 2.WT1r | | | | 1 | | Paris - Nice, Points classification | | 45 | |
| 12/03/2017 | | 2.WT1 | | | | 5 | | Paris - Nice | | 120 | |
| 12/03/2017 | | 2.WT1s | | | | 5 | | Paris - Nice, Stage 8 : Nice - Nice | | 5 | |
| 11/03/2017 | | 2.WT1s | | | | 14 | | Paris - Nice, Stage 7 : Nice - Col de la Couillole | | 0 | |
| 10/03/2017 | | 2.WT1s | | | | leader | | Paris - Nice, Stage 6 : Aubagne - Fayence | | 11 | |
| 10/03/2017 | | 2.WT1s | | | | 4 | | Paris - Nice, Stage 6 : Aubagne - Fayence | | 10 | |
| 9/03/2017 | | 2.WT1s | | | | leader | | Paris - Nice, Stage 5 : Quincié-en-Beaujolais - Bourg-de-Péage | | 11 | |
| 9/03/2017 | | 2.WT1s | | | | 19 | | Paris - Nice, Stage 5 : Quincié-en-Beaujolais - Bourg-de-Péage | | 0 | |
| 8/03/2017 | | 2.WT1s | | | | leader | | Paris - Nice, Stage 4 : Beaujeu - Mont-Brouilly I.T.T. | | 11 | |
| 8/03/2017 | | 2.WT1s | | | | 1 | | Paris - Nice, Stage 4 : Beaujeu - Mont-Brouilly I.T.T. | | 45 | |
| 7/03/2017 | | 2.WT1s | | | | 22 | | Paris - Nice, Stage 3 : Chablis - Chalon-sur-Saône | | 0 | |
| 6/03/2017 | | 2.WT1s | | | | 31 | | Paris - Nice, Stage 2 : Rochefort-en-Yvelines - Amilly | | 0 | |
| 5/03/2017 | | 2.WT1s | | | | 2 | | Paris - Nice, Stage 1 : Bois-d’Arcy - Bois-d’Arcy | | 28 | |
| 26/02/2017 | | 2.WT3r | | | | 8 | | Abu Dhabi Tour, Points classification | | 0 | |
| 26/02/2017 | | 2.WT3 | | | | 5 | | Abu Dhabi Tour | | 90 | |
| 26/02/2017 | | 2.WT3s | | | | 7 | | Abu Dhabi Tour, Stage 4 : Yas Marina, circuit race | | 1 | |
| 25/02/2017 | | 2.WT3s | | | | 5 | | Abu Dhabi Tour, Stage 3 : Al Ain - Jebel Hafeet | | 4 | |
| 24/02/2017 | | 2.WT3s | | | | 127 | | Abu Dhabi Tour, Stage 2 : Abu Dhabi - Abu Dhabi | | 0 | |
| 23/02/2017 | | 2.WT3s | | | | 121 | | Abu Dhabi Tour, Stage 1 : Madinat Zayed - Madinat Zayed | | 0 | |
| 4/02/2017 | | 2.HC | | | | 78 | | Dubai Tour | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1/10/2016 | | 1.WT1 | | | | 60 | | Il Lombardia | | 5 | |
| 18/09/2016 | | CC1 | | | | 2 | | European Championships (Plumelec) R.R. | | 60 | |
| 11/09/2016 | | 1.WT2 | | | | 10 | | GP de Montréal | | 46 | |
| 9/09/2016 | | 1.WT2 | | | | 65 | | GP de Québec | | 5 | |
| 4/09/2016 | | 1.HC | | | | 40 | | GP de Fourmies | | 0 | |
| 10/08/2016 | | WCTT | | | | 32 | | Olympic Games (Rio de Janeiro) - I.T.T. | | 5 | |
| 6/08/2016 | | WCRR | | | | 4 | | Olympic Games (Rio de Janeiro) - R.R. | | 180 | |
| 24/07/2016 | | GT1 | | | | 41 | | Tour de France | | 30 | |
| 24/07/2016 | | GT1s | | | | 68 | | Tour de France, Stage 21 : Chantilly - Paris | | 0 | |
| 23/07/2016 | | GT1s | | | | 4 | | Tour de France, Stage 20 : Megève - Morzine | | 25 | |
| 22/07/2016 | | GT1s | | | | 83 | | Tour de France, Stage 19 : Albertville - Saint-Gervais-Mont-Blanc | | 0 | |
| 21/07/2016 | | GT1s | | | | 28 | | Tour de France, Stage 18 : Sallanches - Megève I.T.T. | | 0 | |
| 20/07/2016 | | GT1s | | | | 53 | | Tour de France, Stage 17 : Bern (Sui) - Finhaut-Emosson (Sui) | | 0 | |
| 18/07/2016 | | GT1s | | | | 183 | | Tour de France, Stage 16 : Moirans-en-Montagne - Bern (Sui) | | 0 | |
| 17/07/2016 | | GT1s | | | | 5 | | Tour de France, Stage 15 : Bourg-en-Bresse - Culoz | | 15 | |
| 16/07/2016 | | GT1s | | | | 161 | | Tour de France, Stage 14 : Montélimar - Villars-les-Dombes | | 0 | |
| 15/07/2016 | | GT1s | | | | 106 | | Tour de France, Stage 13 : Bourg-Saint-Andéol - La Caverne du Pont-d'Arc I.T.T. | | 0 | |
| 14/07/2016 | | GT1s | | | | 95 | | Tour de France, Stage 12 : Montpellier - Mont Ventoux/Chalet Reynard | | 0 | |
| 13/07/2016 | | GT1s | | | | 102 | | Tour de France, Stage 11 : Carcassonne - Montpellier | | 0 | |
| 12/07/2016 | | GT1s | | | | 115 | | Tour de France, Stage 10 : Escaldes-Engordany (And) - Revel | | 0 | |
| 10/07/2016 | | GT1s | | | | 67 | | Tour de France, Stage 9 : Vielha (Esp) - Andorra/Arcalis (And) | | 0 | |
| 9/07/2016 | | GT1s | | | | 69 | | Tour de France, Stage 8 : Pau - Bagnères-de-Luchon | | 0 | |
| 8/07/2016 | | GT1s | | | | 14 | | Tour de France, Stage 7 : L'Isle-Jourdain - Lac de Payolle | | 0 | |
| 7/07/2016 | | GT1s | | | | 36 | | Tour de France, Stage 6 : Arpajon-sur-Cère - Montauban | | 0 | |
| 6/07/2016 | | GT1s | | | | 7 | | Tour de France, Stage 5 : Limoges - Le Lioran | | 5 | |
| 5/07/2016 | | GT1s | | | | 15 | | Tour de France, Stage 4 : Saumur - Limoges | | 0 | |
| 4/07/2016 | | GT1s | | | | 15 | | Tour de France, Stage 3 : Granville - Angers | | 0 | |
| 3/07/2016 | | GT1s | | | | 2 | | Tour de France, Stage 2 : Saint-Lô - Cherbourg-en-Cotentin | | 50 | |
| 2/07/2016 | | GT1s | | | | 14 | | Tour de France, Stage 1 : Mont-Saint-Michel - Sainte-Marie-du-Mont | | 0 | |
| 26/06/2016 | | NC1 | | | | 5 | | National Championships France (Vesoul) R.R. | | 54 | |
| 12/06/2016 | | 2.WT1r | | | | 2 | | Critérium du Dauphiné, Points classification | | 28 | |
| 12/06/2016 | | 2.WT1 | | | | 6 | | Critérium du Dauphiné | | 110 | |
| 12/06/2016 | | 2.WT1s | | | | 6 | | Critérium du Dauphiné, Stage 7 : Le Pont-de-Claix - Superdévoluy | | 3 | |
| 11/06/2016 | | 2.WT1s | | | | 9 | | Critérium du Dauphiné, Stage 6 : La Rochette - Méribel-les-Allues | | 0 | |
| 10/06/2016 | | 2.WT1s | | | | 10 | | Critérium du Dauphiné, Stage 5 : La Ravoire - Vaujany | | 0 | |
| 9/06/2016 | | 2.WT1s | | | | 2 | | Critérium du Dauphiné, Stage 4 : Tain-l'Hermitage - Belley | | 28 | |
| 8/06/2016 | | 2.WT1s | | | | 4 | | Critérium du Dauphiné, Stage 3 : Boën-sur-Lignon - Tournon-sur-Rhône | | 10 | |
| 7/06/2016 | | 2.WT1s | | | | 28 | | Critérium du Dauphiné, Stage 2 : Crêches-sur-Saône - Jeansagnière/Chalmazel | | 0 | |
| 6/06/2016 | | 2.WT1s | | | | 29 | | Critérium du Dauphiné, Stage 1 : Cluses - Saint-Vulbas | | 0 | |
| 5/06/2016 | | 2.WT1s | | | | 5 | | Critérium du Dauphiné, Prologue : Les Gets - Le Mont Chéry I.T.T. | | 5 | |
| 22/05/2016 | | 2.HC | | | | 1 | | Tour of California | | 160 | |
| 22/05/2016 | | 2.HCs | | | | 11 | | Tour of California, Stage 8 : Sacramento - Sacramento | | 0 | |
| 21/05/2016 | | 2.HCs | | | | leader | | Tour of California, Stage 7 : Santa Rosa - Santa Rosa | | 8 | |
| 21/05/2016 | | 2.HCs | | | | 14 | | Tour of California, Stage 7 : Santa Rosa - Santa Rosa | | 0 | |
| 20/05/2016 | | 2.HCs | | | | leader | | Tour of California, Stage 6 : Folsom I.T.T. | | 8 | |
| 20/05/2016 | | 2.HCs | | | | 8 | | Tour of California, Stage 6 : Folsom I.T.T. | | 0 | |
| 19/05/2016 | | 2.HCs | | | | leader | | Tour of California, Stage 5 : Lodi - South Lake Tahoe | | 8 | |
| 19/05/2016 | | 2.HCs | | | | 7 | | Tour of California, Stage 5 : Lodi - South Lake Tahoe | | 0 | |
| 18/05/2016 | | 2.HCs | | | | leader | | Tour of California, Stage 4 : Morro Bay - Laguna Seca | | 8 | |
| 18/05/2016 | | 2.HCs | | | | 10 | | Tour of California, Stage 4 : Morro Bay - Laguna Seca | | 0 | |
| 17/05/2016 | | 2.HCs | | | | leader | | Tour of California, Stage 3 : Thousand Oaks - Santa Barbara (Gibraltar Road) | | 8 | |
| 17/05/2016 | | 2.HCs | | | | 1 | | Tour of California, Stage 3 : Thousand Oaks - Santa Barbara (Gibraltar Road) | | 25 | |
| 24/04/2016 | | 1.WT1 | | | | 23 | | Liège - Bastogne - Liège | | 18 | |
| 20/04/2016 | | 1.WT2 | | | | 2 | | Flèche Wallonne | | 132 | |
| 17/04/2016 | | 1.WT2 | | | | 6 | | Amstel Gold Race | | 76 | |
| 13/04/2016 | | 1.HC | | | | 8 | | Brabantse Pijl | | 36 | |
| 27/03/2016 | | 2.WT2s | | | | DNF | | Volta a Catalunya, Stage 7 : Barcelona - Barcelona | | 0 | |
| 26/03/2016 | | 2.WT2s | | | | 59 | | Volta a Catalunya, Stage 6 : Sant Joan Despi - Vilanova i la Geltru | | 0 | |
| 25/03/2016 | | 2.WT2s | | | | 90 | | Volta a Catalunya, Stage 5 : Rialp - Valls | | 0 | |
| 24/03/2016 | | 2.WT2s | | | | 158 | | Volta a Catalunya, Stage 4 : Baga - Port Aine | | 0 | |
| 23/03/2016 | | 2.WT2s | | | | 172 | | Volta a Catalunya, Stage 3 : Girona - Alp/La Molina | | 0 | |
| 22/03/2016 | | 2.WT2s | | | | 88 | | Volta a Catalunya, Stage 2 : Mataro - Olot | | 0 | |
| 21/03/2016 | | 2.WT2s | | | | 45 | | Volta a Catalunya, Stage 1 : Calella - Calella | | 0 | |
| 6/03/2016 | | 2.1s | | | | DNF | | Driedaagse van West-Vlaanderen, Stage 2 : Nieuwpoort - Ichtegem | | 0 | |
| 25/02/2016 | | 2.1s | | | | DNS | | Tour La Provence, Stage 3 : La Ciotat - Marseille | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 27/09/2015 | | WCRR | | | | DNF | | World Championships (Richmond) R.R. | | 0 | |
| 13/09/2015 | | 1.WT2 | | | | 60 | | GP de Montréal | | 5 | |
| 11/09/2015 | | 1.WT2 | | | | 46 | | GP de Québec | | 5 | |
| 6/09/2015 | | 1.HC | | | | 130 | | GP de Fourmies | | 0 | |
| 5/09/2015 | | 1.HC | | | | 56 | | Brussels Cycling Classic | | 0 | |
| 30/08/2015 | | 1.WT2 | | | | 42 | | GP Ouest France - Plouay | | 5 | |
| 28/08/2015 | | 2.1 | | | | 52 | | Tour du Poitou Charentes | | 0 | |
| 27/08/2015 | | 2.1s | | | | 5 | | Tour du Poitou Charentes, Stage 3 : Mont-sur-Guesnes - Loudun | | 0 | |
| 26/08/2015 | | 2.1s | | | | 20 | | Tour du Poitou Charentes, Stage 2 : Blanzac-Porcheresse - La Creche | | 0 | |
| 23/08/2015 | | 1.WT2 | | | | 22 | | Vattenfall Cyclassics - Hamburg | | 14 | |
| 16/08/2015 | | 2.WT2 | | | | 10 | | Eneco Tour | | 59 | |
| 16/08/2015 | | 2.WT2s | | | | 5 | | Eneco Tour, Stage 7 : Sint-Pieters-Leeuw - Geraardsbergen | | 4 | |
| 15/08/2015 | | 2.WT2s | | | | 14 | | Eneco Tour, Stage 6 : Heerlen (NED) - Houffalize | | 0 | |
| 14/08/2015 | | 2.WT2s | | | | 13 | | Eneco Tour, Stage 5 : Riemst (BEL) - Sittard | | 0 | |
| 13/08/2015 | | 2.WT2s | | | | 27 | | Eneco Tour, Stage 4 : Hoogerheide (NED) I.T.T. | | 0 | |
| 12/08/2015 | | 2.WT2s | | | | 70 | | Eneco Tour, Stage 3 : Beveren - Ardooie | | 0 | |
| 11/08/2015 | | 2.WT2s | | | | 24 | | Eneco Tour, Stage 2 : Breda - Breda | | 0 | |
| 10/08/2015 | | 2.WT2s | | | | 54 | | Eneco Tour, Stage 1 : Bolsward - Bolsward | | 0 | |
| 1/08/2015 | | 1.WT2 | | | | 8 | | Clasica San Sebastian | | 58 | |
| 28/06/2015 | | NC1 | | | | 5 | | National Championships France (Chantonnay) R.R. | | 54 | |
| 12/06/2015 | | 2.WT1s | | | | DNF | | Critérium du Dauphiné, Stage 6 : Saint-Bonnet-en-Champsaur - Villard-de-Lans (Côte 2000) | | 0 | |
| 11/06/2015 | | 2.WT1s | | | | 133 | | Critérium du Dauphiné, Stage 5 : Digne-les-Bains - Pra-Loup | | 0 | |
| 10/06/2015 | | 2.WT1s | | | | 6 | | Critérium du Dauphiné, Stage 4 : Anneyron - Sisteron | | 3 | |
| 9/06/2015 | | 2.WT1s | | | | 4 | | Critérium du Dauphiné, Stage 3 : Roanne - Montagny T.T.T. | | 2 | |
| 8/06/2015 | | 2.WT1s | | | | 15 | | Critérium du Dauphiné, Stage 2 : Le Bourget-du-Lac - Villars-les-Dombe | | 0 | |
| 7/06/2015 | | 2.WT1s | | | | 15 | | Critérium du Dauphiné, Stage 1 : Ugine - Albertville | | 0 | |
| 17/05/2015 | | 2.HC | | | | 2 | | Tour of California | | 120 | |
| 17/05/2015 | | 2.HCs | | | | 12 | | Tour of California, Stage 8 : Los Angeles - Los Angeles | | 0 | |
| 16/05/2015 | | 2.HCs | | | | leader | | Tour of California, Stage 7 : Ontario - Mount Baldy | | 8 | |
| 16/05/2015 | | 2.HCs | | | | 1 | | Tour of California, Stage 7 : Ontario - Mount Baldy | | 25 | |
| 15/05/2015 | | 2.HCs | | | | 3 | | Tour of California, Stage 6 : Santa Clarita I.T.T. | | 10 | |
| 14/05/2015 | | 2.HCs | | | | 16 | | Tour of California, Stage 5 : Santa Barbara - Santa Clarita | | 0 | |
| 12/05/2015 | | 2.HCs | | | | 3 | | Tour of California, Stage 3 : San Jose - San Jose | | 10 | |
| 2/05/2015 | | 2.WT2s | | | | DNS | | Tour de Romandie, Stage 5 : Fribourg - Champex-Lac | | 0 | |
| 1/05/2015 | | 2.WT2s | | | | 59 | | Tour de Romandie, Stage 4 : La Neuveville - Fribourg | | 0 | |
| 30/04/2015 | | 2.WT2s | | | | 2 | | Tour de Romandie, Stage 3 : Moutier - Porrentruy | | 22 | |
| 29/04/2015 | | 2.WT2s | | | | 3 | | Tour de Romandie, Stage 2 : Apples - Saint-Imier | | 14 | |
| 28/04/2015 | | 2.WT2s | | | | 4 | | Tour de Romandie, Stage 1 : Vallée de Joux - Juraparc T.T.T. | | 2 | |
| 26/04/2015 | | 1.WT1 | | | | 2 | | Liège - Bastogne - Liège | | 170 | |
| 22/04/2015 | | 1.WT2 | | | | 2 | | Flèche Wallonne | | 132 | |
| 19/04/2015 | | 1.WT2 | | | | 7 | | Amstel Gold Race | | 66 | |
| 15/04/2015 | | 1.HC | | | | 19 | | Brabantse Pijl | | 7 | |
| 29/03/2015 | | 2.WT2s | | | | DNF | | Volta a Catalunya, Stage 7 : L'Hospitalet de Llobregat - Barcelona | | 0 | |
| 28/03/2015 | | 2.WT2s | | | | 2 | | Volta a Catalunya, Stage 6 : Cervera - Port Aventura | | 22 | |
| 27/03/2015 | | 2.WT2s | | | | 99 | | Volta a Catalunya, Stage 5 : Alp - Valls | | 0 | |
| 26/03/2015 | | 2.WT2s | | | | 105 | | Volta a Catalunya, Stage 4 : Tona - Alp/La Molina | | 0 | |
| 25/03/2015 | | 2.WT2s | | | | 35 | | Volta a Catalunya, Stage 3 : Girona - Girona | | 0 | |
| 24/03/2015 | | 2.WT2s | | | | 37 | | Volta a Catalunya, Stage 2 : Mataro - Olot | | 0 | |
| 23/03/2015 | | 2.WT2s | | | | 5 | | Volta a Catalunya, Stage 1 : Calella - Calella | | 4 | |
| 15/03/2015 | | 2.WT1 | | | | 43 | | Paris - Nice | | 5 | |
| 15/03/2015 | | 2.WT1s | | | | 44 | | Paris - Nice, Stage 7 : Nice - Col d'Eze I.T.T. | | 0 | |
| 14/03/2015 | | 2.WT1s | | | | 33 | | Paris - Nice, Stage 6 : Vence - Nice | | 0 | |
| 13/03/2015 | | 2.WT1s | | | | 106 | | Paris - Nice, Stage 5 : Saint-Etienne - Rasteau | | 0 | |
| 12/03/2015 | | 2.WT1s | | | | 82 | | Paris - Nice, Stage 4 : Varennes-sur-Allier - Croix-de-Chaubouret | | 0 | |
| 11/03/2015 | | 2.WT1s | | | | 26 | | Paris - Nice, Stage 3 : Saint-Amand-Montrond - Saint-Pourçain-sur-Sioule | | 0 | |
| 10/03/2015 | | 2.WT1s | | | | 134 | | Paris - Nice, Stage 2 : Saint-Aignan - Saint-Amand-Montrond | | 0 | |
| 9/03/2015 | | 2.WT1s | | | | 24 | | Paris - Nice, Stage 1 : Saint-Rémy-lès-Chevreuse - Contres | | 0 | |
| 8/03/2015 | | 2.WT1s | | | | 54 | | Paris - Nice, Prologue : Maurepas I.T.T. | | 0 | |
| 28/02/2015 | | 1.1 | | | | 73 | | Classic Sud Ardèche - Souvenir Francis Delpech | | 0 | |
| 14/02/2015 | | 1.1 | | | | 77 | | Vuelta a Murcia | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 14/10/2014 | | 2.WT2r | | | | 8 | | Tour of Beijing, Mountains classification | | 1 | |
| 14/10/2014 | | 2.WT2 | | | | 98 | | Tour of Beijing | | 5 | |
| 14/10/2014 | | 2.WT2s | | | | 28 | | Tour of Beijing, Stage 5 : Tiananmen Square - Bird’s Nest | | 0 | |
| 13/10/2014 | | 2.WT2s | | | | 111 | | Tour of Beijing, Stage 4 : Yanqing - Mentougou Miaofeng | | 0 | |
| 12/10/2014 | | 2.WT2s | | | | 125 | | Tour of Beijing, Stage 3 : Yanqing - Qianjiadian | | 0 | |
| 11/10/2014 | | 2.WT2s | | | | 13 | | Tour of Beijing, Stage 2 : Chong Li - Yan Jia Ping | | 0 | |
| 10/10/2014 | | 2.WT2s | | | | 52 | | Tour of Beijing, Stage 1 : Chong Li - Zhangjiakou | | 0 | |
| 5/10/2014 | | 1.WT1 | | | | DNF | | Il Lombardia | | 0 | |
| 14/09/2014 | | 1.WT2 | | | | 57 | | GP de Montréal | | 5 | |
| 12/09/2014 | | 1.WT2 | | | | 28 | | GP de Québec | | 8 | |
| 31/08/2014 | | 1.WT2 | | | | 5 | | GP Ouest France - Plouay | | 86 | |
| 24/08/2014 | | 1.WT2 | | | | 16 | | Vattenfall Cyclassics - Hamburg | | 21 | |
| 16/08/2014 | | 2.1 | | | | 4 | | Tour de l'Ain | | 56 | |
| 16/08/2014 | | 2.1s | | | | 1 | | Tour de l'Ain, Stage 4 : Nantua - Arbent | | 20 | |
| 15/08/2014 | | 2.1s | | | | 10 | | Tour de l'Ain, Stage 3 : Lagnieu - Lelex-Mont Jura | | 0 | |
| 14/08/2014 | | 2.1s | | | | 4 | | Tour de l'Ain, Stage 2 : Bourg-en-Bresse - Saint-Vulbas | | 3 | |
| 12/08/2014 | | 2.1s | | | | 2 | | Tour de l'Ain, Prologue : Saint-Amour I.T.T. | | 10 | |
| 10/08/2014 | | 1.HC | | | | 3 | | RideLondon Classic | | 72 | |
| 2/08/2014 | | 1.WT2 | | | | DNF | | Clasica San Sebastian | | 0 | |
| 30/07/2014 | | 2.HC | | | | 60 | | Tour de Wallonie | | 0 | |
| 29/06/2014 | | NC1 | | | | 89 | | National Championships France (Futuroscope) R.R. | | 0 | |
| 15/06/2014 | | 2.WT1 | | | | 57 | | Critérium du Dauphiné | | 5 | |
| 15/06/2014 | | 2.WT1s | | | | 124 | | Critérium du Dauphiné, Stage 8 : Megève - Courchevel | | 0 | |
| 14/06/2014 | | 2.WT1s | | | | 33 | | Critérium du Dauphiné, Stage 7 : Ville-la-Grand - Finaut/Émosson (Sui) | | 0 | |
| 13/06/2014 | | 2.WT1s | | | | 87 | | Critérium du Dauphiné, Stage 6 : Grenoble - Poisy | | 0 | |
| 12/06/2014 | | 2.WT1s | | | | 87 | | Critérium du Dauphiné, Stage 5 : Sisteron - La Mure | | 0 | |
| 11/06/2014 | | 2.WT1s | | | | 136 | | Critérium du Dauphiné, Stage 4 : Montélimar - Gap | | 0 | |
| 10/06/2014 | | 2.WT1s | | | | 130 | | Critérium du Dauphiné, Stage 3 : Ambert - Le Teil | | 0 | |
| 9/06/2014 | | 2.WT1s | | | | 43 | | Critérium du Dauphiné, Stage 2 : Tarare - Col du Béal | | 0 | |
| 8/06/2014 | | 2.WT1s | | | | 14 | | Critérium du Dauphiné, Stage 1 : Lyon - Lyon I.T.T. | | 0 | |
| 25/05/2014 | | 2.1 | | | | 86 | | World Ports Classic | | 0 | |
| 18/05/2014 | | 2.1 | | | | 42 | | Tour de Picardie | | 0 | |
| 20/04/2014 | | 1.WT2 | | | | DNF | | Amstel Gold Race | | 0 | |
| 16/04/2014 | | 1.HC | | | | 14 | | Brabantse Pijl | | 12 | |
| 12/04/2014 | | 1.1 | | | | 158 | | GP Pino Cerami | | 0 | |
| 30/03/2014 | | 2.WT2 | | | | 83 | | Volta a Catalunya | | 5 | |
| 30/03/2014 | | 2.WT2s | | | | 78 | | Volta a Catalunya, Stage 7 : Barcelona - Barcelona | | 0 | |
| 29/03/2014 | | 2.WT2s | | | | 12 | | Volta a Catalunya, Stage 6 : El Vendrell - Vilanova i la Geltru | | 0 | |
| 28/03/2014 | | 2.WT2s | | | | 2 | | Volta a Catalunya, Stage 5 : Llanars-Vall de Camprodon - Valls | | 22 | |
| 27/03/2014 | | 2.WT2s | | | | 151 | | Volta a Catalunya, Stage 4 : Alp - Setcases/Vallter 2000 | | 0 | |
| 26/03/2014 | | 2.WT2s | | | | 146 | | Volta a Catalunya, Stage 3 : Banyoles - Alp/La Molina | | 0 | |
| 25/03/2014 | | 2.WT2s | | | | 4 | | Volta a Catalunya, Stage 2 : Mataro - Girona | | 8 | |
| 24/03/2014 | | 2.WT2s | | | | 3 | | Volta a Catalunya, Stage 1 : Calella - Calella | | 14 | |
| 21/03/2014 | | 1.1 | | | | 30 | | Handzame Classic | | 0 | |
| 19/03/2014 | | 1.1 | | | | 133 | | Nokere Koerse | | 0 | |
| 9/03/2014 | | 2.1 | | | | 69 | | Driedaagse van West-Vlaanderen | | 0 | |
| 5/03/2014 | | 1.1 | | | | 91 | | Le Samyn | | 0 | |
| 2/03/2014 | | 1.1 | | | | 62 | | Valence Drôme Classic | | 0 | |
| 12/02/2014 | | 1.1 | | | | 26 | | Trofeo Platja de Muro | | 0 | |
| 10/02/2014 | | 1.1 | | | | 23 | | Trofeo Ses Salines | | 0 | |
| 9/02/2014 | | 1.1 | | | | 119 | | Trofeo Palma | | 0 | |
| 26/01/2014 | | 2.WT2 | | | | 68 | | Tour Down Under | | 5 | |
| 26/01/2014 | | 2.WT2s | | | | 45 | | Tour Down Under, Stage 6 : Adelaide, circuit race | | 0 | |
| 25/01/2014 | | 2.WT2s | | | | 50 | | Tour Down Under, Stage 5 : McLaren Vale - Old Willunga Hill | | 0 | |
| 24/01/2014 | | 2.WT2s | | | | 81 | | Tour Down Under, Stage 4 : Unley - Victor Harbor | | 0 | |
| 23/01/2014 | | 2.WT2s | | | | 88 | | Tour Down Under, Stage 3 : Norwood - Campbelltown | | 0 | |
| 22/01/2014 | | 2.WT2s | | | | 56 | | Tour Down Under, Stage 2 : Prospect - Stirling | | 0 | |
| 21/01/2014 | | 2.WT2s | | | | 20 | | Tour Down Under, Stage 1 : Nuriootpa - Angaston | | 0 | |
| 19/01/2014 | | NE | | | | 6 | | Tour Down Under, Tour Down Under Classic | | 0 | |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 13/10/2013 | | 1.2U | | | | 11 | | Paris - Tours Espoirs | | 0 | |
| 27/09/2013 | | WCU | | | | 9 | | World Championships U23 (Montecatini Terme - Firenze) R.R. | | 8 | |
| 31/08/2013 | | 2.NC | | | | 18 | | Tour de l'Avenir | | 0 | |
| 31/08/2013 | | 2.NCs | | | | 1 | | Tour de l'Avenir, Stage 7 : Chatel - Plateau des Glières | | 8 | |
| 26/08/2013 | | 2.NCs | | | | 3 | | Tour de l'Avenir, Stage 2 : Champagnoles - St. Vulbas | | 2 | |
| 25/08/2013 | | 2.NCs | | | | 3 | | Tour de l'Avenir, Stage 1 : Louhans - Arbois | | 2 | |
| 24/08/2013 | | 2.NCs | | | | 3 | | Tour de l'Avenir, Prologue : Louhans I.T.T. | | 2 | |
| 17/08/2013 | | 1.2 | | | | 10 | | GP Kralovehradeckeho Kraje | | 1 | |
| 13/08/2013 | | 2.1 | | | | 80 | | Tour de l'Ain | | 0 | |
| 10/08/2013 | | 2.1s | | | | 8 | | Tour de l'Ain, Stage 1 : Lagnieu - Bourg-en-Bresse | | 0 | |
| 21/07/2013 | | XX | | | | 4 | | European Championships U23 (Olomouc) R.R. | | 0 | |
| 14/07/2013 | | 2.2s | | | | 2 | | Czech Cycling Tour, Stage 4 : Olomouc - Dolany | | 2 | |
| 13/07/2013 | | 2.2s | | | | 3 | | Czech Cycling Tour, Stage 3 : Zabreh - Sternberk | | 1 | |
| 11/07/2013 | | 2.2s | | | | 2 | | Czech Cycling Tour, Stage 1 : Unicov - Unicov T.T.T. | | 0 | |
| 23/06/2013 | | NC1 | | | | 68 | | National Championships France (Lannilis) R.R. | | 0 | |
| 15/06/2013 | | 2.2U | | | | 11 | | Thüringen-Rundfahrt U23 | | 2 | |
| 12/06/2013 | | 2.2Us | | | | 3 | | Thüringen-Rundfahrt U23, Stage 4 : Langewiesen - Langewiesen | | 1 | |
| 11/06/2013 | | 2.2Us | | | | 1 | | Thüringen-Rundfahrt U23, Stage 3 : Neuhaus am Rennweg - Neuhaus am Rennweg | | 4 | |
| 10/06/2013 | | 2.2Us | | | | 5 | | Thüringen-Rundfahrt U23, Stage 2 : Behringen - Behringen | | 0 | |
| 2/06/2013 | | 1.2 | | | | 1 | | GP Südkärnten | | 15 | |
| 26/05/2013 | | 2.2U | | | | 8 | | Course de la Paix U23 | | 5 | |
| 26/05/2013 | | 2.2Us | | | | 6 | | Course de la Paix U23, Stage 3 : Jesenik - Jesenik | | 0 | |
| 25/05/2013 | | 2.2Us | | | | 5 | | Course de la Paix U23, Stage 1 : Jesenik I.T.T. | | 0 | |
| 19/05/2013 | | 2.2 | | | | 14 | | Paris - Arras Tour | | 1 | |
| 19/05/2013 | | 2.2s | | | | 5 | | Paris - Arras Tour, Stage 2 : Arras - Arras | | 0 | |
| 1/05/2013 | | 2.2 | | | | 5 | | Tour de Bretagne - Trophée des Granitiers | | 9 | |
| 1/05/2013 | | 2.2s | | | | 2 | | Tour de Bretagne - Trophée des Granitiers, Stage 7 : Huelgoat - Quimperlé | | 2 | |
| 29/04/2013 | | 2.2s | | | | 2 | | Tour de Bretagne - Trophée des Granitiers, Stage 5 : Saint Thélo - Le Quillio | | 2 | |
| 28/04/2013 | | 2.2s | | | | 1 | | Tour de Bretagne - Trophée des Granitiers, Stage 4 : Le Rheu - Fougères | | 4 | |
| 6/04/2013 | | 2.2s | | | | 3 | | Circuit des Ardennes, Stage 2 : Givet - Haybes | | 1 | |
| 5/04/2013 | | 2.2s | | | | 7 | | Circuit des Ardennes, Stage 1 : Juniville - Tagnon | | 0 | |
| 17/03/2013 | | 2.2 | | | | 14 | | Istarsko proljece - Istrian Spring Trophy | | 1 | |
| 15/03/2013 | | 2.2s | | | | 3 | | Istarsko proljece - Istrian Spring Trophy, Stage 1 : Umag - Labin | | 1 | |