| 01.09 | DNF |  |  | GP Ouest France - Plouay (WT) | 248.3 |  |  | more | 
| 27.08 › 30.0827-30/8 |  |  |  | Tour du Poitou Charentes (2.1) |  |  |  | more | 
| 30.08 | DNF |  |  | S5Stage 5 - Ruelle sur Touvre › Poitiers | 192.2 |  |  |  | 
| 29.08 | 84 | 110 |  | S4 (ITT)Stage 4 (ITT) - Charroux › Civray | 22.8 |  |  |  | 
| 29.08 | 127 | 121 |  | S3Stage 3 - Charroux › Civray | 109.4 |  |  |  | 
| 28.08 | 110 | 116 |  | S2Stage 2 - Saintes › Angoulême | 182 |  |  |  | 
| 27.08 | 122 | 122 |  | S1Stage 1 - Saint Maixent l'Ecole › Saintes | 197.9 |  |  |  | 
| 23.08 | DNF |  |  | Tre Valli Varesine (1.HC) | 198 |  |  | more | 
| 22.08 | 70 |  |  | GP Banca di Legnano - Coppa Bernocchi (1.1) | 200 |  |  | more | 
| 21.08 | 93 |  |  | Coppa Agostoni - Giro delle Brianze (1.1) | 169.7 |  |  | more | 
| 09.08 › 13.089-13/8 |  |  |  | Tour de l'Ain (2.1) |  |  |  | more | 
|  | 41 |  |  | Points classificationPoints classification |  |  |  |  | 
|  | 15 |  |  | General classificationGeneral classification |  | 6 |  |  | 
| 13.08 | 15 |  |  | S4Stage 4 - Nantua › Belley | 126.2 |  |  |  | 
| 12.08 | 20 | 20 |  | S3Stage 3 - Izernore › Lélex Monts-Jura | 136.4 |  |  |  | 
| 11.08 | 33 | 34 |  | S2Stage 2 - Ferme-Musée de la Forêt › Oyonnax | 149.3 |  |  |  | 
| 10.08 | 93 | 81 |  | S1Stage 1 - Lagnieu › Bourg-en-Bresse | 156.3 |  |  |  | 
| 09.08 | 81 | 81 |  | ProloguePrologue - Trevoux › Trevoux | 4.5 |  |  |  | 
| 29.06 › 21.0729-21/6 |  |  |  | Tour de France (WT) |  |  |  | more | 
|  | 3 |  |  | Mountains classificationMountains classification |  | 10 |  |  | 
|  | 50 |  |  | Points classificationPoints classification |  |  |  |  | 
|  | 24 |  |  | General classificationGeneral classification |  | 80 |  |  | 
| 21.07 | 138 |  |  | S21Stage 21 - Château de Versailles › Paris | 118 |  |  |  | 
| 20.07 | 38 | 24 |  | S20Stage 20 - Annecy › Le Semnoz | 125 |  |  |  | 
| 19.07 | 16 | 25 |  | S19Stage 19 - Le Bourg d'Oisans › Le Grand Bornand | 204.5 |  |  |  | 
| 18.07 | 27 | 28 |  | S18Stage 18 - Gap › Alpe d'Huez | 172.5 |  |  |  | 
| 17.07 | 139 | 32 |  | S17 (ITT)Stage 17 (ITT) - Embrun › Chorges | 32 |  |  |  | 
| 16.07 | 58 | 32 |  | S16Stage 16 - Vaison-la-Romaine › Gap | 168 |  |  |  | 
| 14.07 | 28 | 30 |  | S15Stage 15 - Givors › Mont Ventoux | 242.5 |  |  |  | 
| 13.07 | 131 | 29 |  | S14Stage 14 - Saint-Pourçain-sur-Sioule › Lyon | 191 |  |  |  | 
| 12.07 | 116 | 28 |  | S13Stage 13 - Tours › Saint-Amand-Montrond | 173 |  |  |  | 
| 11.07 | 93 | 27 |  | S12Stage 12 - Fougères › Tours | 218 |  |  |  | 
| 10.07 | 91 | 27 |  | S11 (ITT)Stage 11 (ITT) - Avranches › Mont-Saint-Michel | 33 |  |  |  | 
| 09.07 | 88 | 26 |  | S10Stage 10 - Saint-Gildas-des-Bois › Saint-Malo | 197 |  |  |  | 
| 07.07 | 38 | 26 |  | S9Stage 9 - Saint Girons › Bagnéres de Bigorre | 168.5 |  |  |  | 
| 06.07 | 22 | 25 |  | S8Stage 8 - Castres › Ax-3 Domaines | 195 |  |  |  | 
| 05.07 | 59 | 49 |  | S7Stage 7 - Montpellier › Albi | 205.5 |  |  |  | 
| 04.07 | 100 | 52 |  | S6Stage 6 - Aix-en-Provence › Montpellier | 176.5 |  |  |  | 
| 03.07 | 64 | 58 |  | S5Stage 5 - Cagnes-sur-Mer › Marseille | 228.5 |  |  |  | 
| 02.07 | 19 | 63 |  | S4 (TTT)Stage 4 (TTT) - Nice › Nice | 25 |  |  |  | 
| 01.07 | 81 | 55 |  | S3Stage 3 - Ajaccio › Calvi | 145.5 |  |  |  | 
| 30.06 | 76 | 59 |  | S2Stage 2 - Bastia › Ajaccio | 156 |  |  |  | 
| 29.06 | 82 | 82 |  | S1Stage 1 - Porto-Vecchio › Bastia | 213 |  |  |  | 
| 23.06 | DNF |  |  | National Championships France - Road Race (NC) | 246.6 |  |  | more | 
| 02.06 › 09.062-9/6 |  |  |  | Critérium du Dauphiné (WT) |  |  |  | more | 
| 09.06 | DNF |  |  | S8Stage 8 - Sisteron › Risoul | 152 |  |  |  | 
| 08.06 | 26 | 25 |  | S7Stage 7 - Pont-de-Claix › Superdévoluy | 184 |  |  |  | 
| 07.06 | 52 | 29 |  | S6Stage 6 - La Léchère › Grenoble | 143 |  |  |  | 
| 06.06 | 48 | 36 |  | S5Stage 5 - Grésy-sur-Aix › Valmorel | 139 |  |  |  | 
| 05.06 | 46 | 27 |  | S4 (ITT)Stage 4 (ITT) - Villars-les-Dombes › Parc des Oiseaux | 32.5 |  |  |  | 
| 04.06 | 99 | 52 |  | S3Stage 3 - Ambérieu-en-Bugey › Tarare | 167 |  |  |  | 
| 03.06 | 72 | 50 |  | S2Stage 2 - Châtel › Oyonnax | 183 |  |  |  | 
| 02.06 | 32 | 32 |  | S1Stage 1 - Champéry › Champéry | 121 |  |  |  | 
| 22.05 › 26.0522-26/5 |  |  |  | Bayern-Rundfahrt (2.HC) |  |  |  | more | 
|  | 17 |  |  | General classificationGeneral classification |  | 14 |  |  | 
| 26.05 | 39 |  |  | S5Stage 5 - Kelheim › Nürnberg | 169.8 |  |  |  | 
| 25.05 | 27 | 18 |  | S4 (ITT)Stage 4 (ITT) - Schierling › Schierling | 31.2 |  |  |  | 
| 24.05 | 88 | 27 |  | S3Stage 3 - Viechtach › Kelheim | 196.8 |  |  |  | 
| 23.05 | 25 | 25 |  | S2Stage 2 - Mühldorf a. Inn › Viechtach | 192.6 |  |  |  | 
| 22.05 | 78 | 80 |  | S1Stage 1 - Pfaffenhofen a.d.Ilm › Mühldorf a. Inn | 193.1 |  |  |  | 
| 23.04 › 28.0423-28/4 |  |  |  | Tour de Romandie (WT) |  |  |  | more | 
|  | 4 |  |  | Mountains classificationMountains classification |  |  |  |  | 
|  | 19 |  |  | General classificationGeneral classification |  | 24 |  |  | 
| 28.04 | 43 |  |  | S5 (ITT)Stage 5 (ITT) - Genève › Genève | 18.6 |  |  |  | 
| 27.04 | 15 | 18 |  | S4Stage 4 - Marly › Les Diablerets | 182 |  |  |  | 
| 26.04 | 66 | 50 |  | S3Stage 3 - Payerne › Payerne | 181 |  |  |  | 
| 25.04 | 74 | 55 |  | S2Stage 2 - Prilly/Ouest lausannois › Granges | 190.3 |  |  |  | 
| 24.04 | 106 | 63 |  | S1Stage 1 - Saint-Maurice › Renens/Ouest lausannois | 176.4 |  |  |  | 
| 23.04 | 63 | 63 |  | ProloguePrologue - Le Châble › Bruson | 7.45 |  |  |  | 
| 21.04 | 24 |  |  | Liège - Bastogne - Liège (WT) | 261.5 | 16 |  | more | 
| 16.04 › 19.0416-19/4 |  |  |  | Giro del Trentino (2.HC) |  |  |  | more | 
|  | 10 |  |  | General classificationGeneral classification |  | 40 | 8 |  | 
| 19.04 | 10 |  |  | S4Stage 4 - Arco › Sega di Ala | 166.8 |  |  |  | 
| 18.04 | 19 | 9 |  | S3Stage 3 - Pergine Valsugana › Condino (Valle del Chiese) | 176.1 |  |  |  | 
| 17.04 | 9 | 11 |  | S2Stage 2 - Sillian › Vetriolo Terme | 224.8 |  |  |  | 
| 16.04 | 5 | 37 |  | S1b (TTT)Stage 1b (TTT) - Lienz › Lienz | 14.1 | 3 | 1.2 |  | 
| 16.04 | 93 | 93 |  | S1aStage 1a - Lienz › Lienz | 128.5 |  |  |  | 
| 09.04 | 3 |  |  | Paris-Camembert (1.1) | 206.5 | 40 | 32 | more | 
| 02.04 › 05.042-5/4 |  |  |  | Circuit Cycliste Sarthe - Pays de la Loire (2.1) |  |  |  | more | 
|  | 5 |  |  | Points classificationPoints classification |  |  |  |  | 
|  | 1 |  |  | General classificationGeneral classification |  | 100 | 80 |  | 
| 05.04 | 19 |  |  | S5Stage 5 - Abbaye de l’Epau › Saint-Vincent-de-Lorouër | 165.7 |  |  |  | 
| 04.04 | 1 | 1 |  | S4Stage 4 - Angers › Pré-en-Pail | 188.7 | 20 | 16 |  | 
| 03.04 | 47 | 48 |  | S3 (ITT)Stage 3 (ITT) - Angers › Angers | 6.8 |  |  |  | 
| 03.04 | 79 | 73 |  | S2Stage 2 - Ligné › Angers | 93.6 |  |  |  | 
| 02.04 | 62 | 63 |  | S1Stage 1 - Fontenay-le-Comte › Ligné | 179.4 |  |  |  | 
| 29.03 | 19 |  |  | Route Adélie de Vitré (1.1) | 197.8 | 2 |  | more | 
| 23.03 › 24.0323-24/3 |  |  |  | Critérium International (2.HC) |  |  |  | more | 
| 24.03 | DNF |  |  | S3Stage 3 - Porto-Vecchio › Col de l’Ospedale | 176 |  |  |  | 
| 23.03 | 62 | 56 |  | S2 (ITT)Stage 2 (ITT) - Porto-Vecchio › Porto-Vecchio | 7 |  |  |  | 
| 23.03 | 64 | 66 |  | S1Stage 1 - Porto-Vecchio › Porto-Vecchio | 89 |  |  |  | 
| 16.03 | DNF |  |  | Classic Loire Atlantique (1.1) | 184.8 |  |  | more | 
| 21.02 › 02.0321-2/2 |  |  |  | Tour de Langkawi (2.HC) |  |  |  | more | 
|  | 58 |  |  | Points classificationPoints classification |  |  |  |  | 
|  | 20 |  |  | General classificationGeneral classification |  | 8 |  |  | 
| 02.03 | 89 |  |  | S10Stage 10 - Tasik Kenyir › Kuala Terengganu | 114.8 |  |  |  | 
| 01.03 | 85 | 16 |  | S9Stage 9 - Pasir Puteh › Kuala Berang | 123.6 |  |  |  | 
| 28.02 | 88 | 16 |  | S8Stage 8 - Kuala Terengganu › Tanah Merah | 164.5 |  |  |  | 
| 27.02 | 83 | 15 |  | S7Stage 7 - Kuantan › Dungun | 149.8 |  |  |  | 
| 26.02 | 90 | 15 |  | S6Stage 6 - Mentakab › Kuantan | 212.8 |  |  |  | 
| 25.02 | 14 | 15 |  | S5Stage 5 - Proton, Shah Alam › Genting Highlands | 108 |  |  |  | 
| 24.02 | 102 | 26 |  | S4Stage 4 - Tapah › Kapar | 168 |  |  |  | 
| 23.02 | 24 | 26 |  | S3Stage 3 - Sungai Siput › Cameron Highlands | 145.5 |  |  |  | 
| 22.02 | 95 | 102 |  | S2Stage 2 - Serdang › Kuala Kangsar | 116 |  |  |  | 
| 21.02 | 102 | 103 |  | S1Stage 1 - Kangar › Kulim | 163.7 |  |  |  | 
| 06.02 › 10.026-10/2 |  |  |  | Tour Méditerranéen Cycliste Professionnel (2.1) |  |  |  | more | 
|  | 43 |  |  | General classificationGeneral classification |  |  |  |  | 
| 10.02 | 21 |  |  | S5Stage 5 - Bandol › Grasse | 192 |  |  |  | 
| 09.02 | 83 | 81 |  | S4Stage 4 - Rousset › Toulon (Mont Faron) | 145 |  |  |  | 
| 07.02 | 127 | 124 |  | S2 (ITT)Stage 2 (ITT) - Cap d'Agde › Sete (Mont Saint Clair) | 24 |  |  |  | 
| 06.02 | 111 | 111 |  | S1Stage 1 - Limoux › Gruissan | 146.5 |  |  |  | 
| 30.01 › 03.0230-3/1 |  |  |  | Etoile de Bessèges (2.1) |  |  |  | more | 
|  | 5 |  |  | Mountains classificationMountains classification |  |  |  |  | 
|  | 83 |  |  | General classificationGeneral classification |  |  |  |  | 
| 03.02 | 72 |  |  | S6 (ITT)Stage 6 (ITT) - Alés › Alés | 9.7 |  |  |  | 
| 03.02 | 111 | 91 |  | S5Stage 5 - Alés › Alés | 69 |  |  |  | 
| 02.02 | 104 | 82 |  | S4Stage 4 - Sabran › Pont Saint Esprit | 154 |  |  |  | 
| 01.02 | 97 | 91 |  | S3Stage 3 - Bessèges › Bessèges | 152.6 |  |  |  | 
| 31.01 | 131 | 126 |  | S2Stage 2 - Nîmes › Les Fumades | 157 |  |  |  | 
| 30.01 | 118 | 119 |  | S1Stage 1 - Bellegarde › Beaucaire | 154 |  |  |  | 
| 14.01 › 20.0114-20/1 |  |  |  | La Tropicale Amissa Bongo (2.1) |  |  |  | more | 
|  | 32 |  |  | General classificationGeneral classification |  |  |  |  | 
| 20.01 | 62 |  |  | S7Stage 7 - Owendo › Libreville | 128 |  |  |  | 
| 19.01 | 54 | 35 |  | S6Stage 6 - Lambarene › Kango | 147 |  |  |  | 
| 18.01 | 55 | 32 |  | S5Stage 5 - Lambarene › Mouila | 189 |  |  |  | 
| 17.01 | 32 | 26 |  | S4Stage 4 - Oyem › Mitzic | 109 |  |  |  | 
| 16.01 | 23 | 24 |  | S3Stage 3 - Oyem › Bitam | 110 |  |  |  | 
| 15.01 | 29 | 30 |  | S2Stage 2 - Yaounde › Yaounde | 112 |  |  |  | 
| 14.01 | 37 | 39 |  | S1Stage 1 - Bitam › Ebolowa | 149 |  |  |  |