| | | Tour of Hainan (2.HC) |
| 27-10 | DSQ | | Stage 8Dongfang - Danzhou (172.0km) | 172.0km |
| 26-10 | 25 | 7 | Stage 7Wuzhishan - Dongfang (217.0km) | 217.0km |
| 25-10 | 20 | 6 | Stage 6Sanya - Wuzhishan (115.0km) | 115.0km |
| 24-10 | 97 | 10 | Stage 5Wanning - Sanya (218.0km) | 218.0km |
| 23-10 | 9 | 10 | Stage 4Qionghai - Wanning (183.0km) | 183.0km |
| 22-10 | 6 | 6 | Stage 3Haikou - Qionghai (147.0km) | 147.0km |
| 21-10 | 34 | 11 | Stage 2Chengmai - Haikou (175.0km) | 175.0km |
| 20-10 | 10 | 10 | Stage 1Chengmai - Chengmai (110.0km) | 110.0km |
| 13-10 | 93 | | Paris - Tours (1.HC) | 235.0km |
| 10-10 | DNF | | Paris-Bourges (1.1) | |
| 06-10 | 79 | | Tour de Vendée (1.HC) | 202.0km |
| | | Tour of China II (2.1) |
| 62 | | Klassement |
| 30-09 | 61 | 62 | Stage 6Tianjin - Tianjin (100.0km) | 100.0km |
| 28-09 | 37 | 59 | Stage 5Wuhan Jiangxia - Wuhan Caidia (133.0km) | 133.0km |
| 27-09 | 57 | 65 | Stage 4Zaoyang - Wuhan Caidia (207.0km) | 207.0km |
| 26-09 | 56 | 69 | Stage 3Xiangyang Laohekou - Xiangyang Laohekou (132.0km) | 132.0km |
| 24-09 | 78 | 69 | Stage 2Yueyang - Yueyang (132.0km) | 132.0km |
| 23-09 | 53 | 63 | Stage 1Changsha - Changsha (124.0km) | 124.0km |
| | | Tour of China I (2.1) |
| 3 | | Klassement |
| 10 | | Berg |
| 20-09 | 2 | 3 | Stage 6Zunyi Songkan - Zunyi (137.0km) | 137.0km |
| 19-09 | 25 | 8 | Stage 5Chongqing Banan - Chongqing Banan (124.0km) | 124.0km |
| 18-09 | 29 | 7 | Stage 4Chengdu Dujiangyan - Chengdu Dujiangyan (101.0km) | 101.0km |
| 17-09 | 62 | 13 | Stage 3Chengdu Pengzhou - Chengdu Pengzhou (151.0km) | 151.0km |
| 16-09 | 25 | 12 | Stage 2Deyang - Deyang Shifang (201.0km) | 201.0km |
| 14-09 | 12 | 7 | Stage 1Xi'an - Xi'an (96.0km) | 96.0km |
| 08-09 | 57 | | GP de Fourmies (1.HC) | 205.0km |
| | | Tour du Poitou Charentes (2.1) |
| 71 | | Klassement |
| 30-08 | 94 | 71 | Stage 5Ruelle-sur-Touvre - Poitiers (193.0km) | 193.0km |
| 29-08 | 94 | 58 | Stage 4Charroux - Civray (22.0km) | 22.0km |
| 29-08 | 45 | 15 | Stage 3Charroux - Civray (109.0km) | 109.0km |
| 28-08 | 11 | 12 | Stage 2Saintes - Angoulême (182.0km) | 182.0km |
| 27-08 | 19 | 21 | Stage 1Saint-Maixent-l'École - Saintes (197.0km) | 197.0km |
| 25-08 | 78 | | Châteauroux Classic de l'Indre Trophée Fenioux (1.1) | |
| | | Tour de l'Ain (2.1) |
| 73 | | Klassement |
| 13-08 | 55 | 73 | Stage 4Nantua - Belley (126.0km) | 126.0km |
| 12-08 | 106 | 89 | Stage 3Izernore - Lélex (136.0km) | 136.0km |
| 11-08 | 78 | 66 | Stage 2Courtes - Oyonnax (149.0km) | 149.0km |
| 10-08 | 36 | 60 | Stage 1Lagnieu - Bourg-en-Bresse (156.0km) | 156.0km |
| 09-08 | 59 | 59 | PrologueTrévoux - Trévoux (4.0km) | 4.0km |
| 04-08 | 38 | | RideLondon Classic (1.1) | 200.0km |
| 28-07 | 1 | | La Poly Normande (1.1) | |
| 23-06 | 8 | | National Road Championships - Portugal (CN) | 158.0km |
| 21-06 | 6 | | National Road Championships - Portugal TT (CN) | 34.0km |
| 26-05 | 38 | | Boucles de l'Aulne (1.1) | |
| 25-05 | 21 | | Grand Prix de Plumelec-Morbihan (1.1) | |
| | | Paris-Arras Tour (2.2) |
| 86 | | Klassement |
| 19-05 | 86 | 86 | Stage 2Arras - Arras (182.0km) | 182.0km |
| 18-05 | 6 | 8 | Stage 1Margny-lès-Compiègne - Beaurains (179.0km) | 179.0km |
| | | Tour de Picardie (2.1) |
| 103 | | Klassement |
| 12-05 | 76 | 103 | Stage 3Nanteuil-le-Haudouin - Soissons (171.0km) | 171.0km |
| 11-05 | 110 | 109 | Stage 2Oisemont - Bailleul-sur-Thérain (171.0km) | 171.0km |
| 10-05 | 77 | 77 | Stage 1Guise - Flixecourt (190.0km) | 190.0km |
| | | Quatre Jours de Dunkerque (2.HC) |
| 13 | | Klassement |
| 05-05 | 36 | 13 | Stage 5Estaires - Dunkerque (164.0km) | 164.0km |
| 04-05 | 16 | 13 | Stage 4Lens - Parc d'Olhain (182.0km) | 182.0km |
| 03-05 | 42 | 21 | Stage 3Oignies - Liévin (179.0km) | 179.0km |
| 02-05 | 20 | 24 | Stage 2Lewarde - Douchy-les-Mines (178.0km) | 178.0km |
| 01-05 | 20 | 24 | Stage 1Dunkerque - Courrières (155.0km) | 155.0km |
| | | Mzansi Tour (2.2) |
| 14 | | Klassement |
| 21-04 | 23 | 14 | Stage 5Johannesburg - Johannesburg (117.0km) | 117.0km |
| 20-04 | 12 | 18 | Stage 4Hartebeespoort - Pretoria (163.0km) | 163.0km |
| 19-04 | 77 | 22 | Stage 3Witbank - Mamelodi (144.0km) | 144.0km |
| 18-04 | 33 | 14 | Stage 2Lydenburg - Middelburg (184.0km) | 184.0km |
| 17-04 | 11 | 9 | Stage 1Skukuza - Nelspruit (163.0km) | 163.0km |
| 31-03 | DNF | | Val d'Ille Classic (1.1) | |
| 29-03 | DNF | | Route Adélie de Vitré (1.1) | 198.0km |
| | | Critérium International (2.HC) |
| 24-03 | OTL | | Stage 3Porto-Vecchio - Col de l'Ospedale (176.0km) | 176.0km |
| 23-03 | 24 | 27 | Stage 1Porto-Vecchio - Porto-Vecchio (89.0km) | 89.0km |
| 23-03 | 83 | 73 | Stage 2Porto-Vecchio - Porto-Vecchio (7.0km) | 7.0km |
| 16-03 | 55 | | Classic Loire Atlantique (1.1) | |
| | | Tour Cycliste Int. du Haut Var (2.1) |
| 78 | | Klassement |
| 17-02 | 82 | 78 | Stage 2Draguignan - Draguignan (207.0km) | 207.0km |
| 16-02 | 64 | 64 | Stage 1Le Cannet des Maures - La Croix-Valmer (152.0km) | 152.0km |
| | | Tour Méditerranéen (2.1) |
| 09-02 | 122 | 98 | Stage 4Rousset - Toulon (Mont Faron) (151.0km) | 151.0km |
| 07-02 | 7 | 7 | Stage 2Le Cap d'Agde - Sète (24.0km) | 24.0km |
| 06-02 | 53 | 53 | Stage 1Limoux - Gruissan (141.0km) | 141.0km |
| 27-01 | 65 | | Grand Prix Cycliste la Marseillaise (1.1) | 148.0km |