| | | Tour of Hainan (2.HC) |
| 29-10 | DNF | | Stage 8Sanya - Qiongzhong (165.0km) | 165.0km |
| 28-10 | 108 | 97 | Stage 7Wuzhishan - Sanya (127.0km) | 127.0km |
| 27-10 | 100 | 94 | Stage 6Changjiang - Wuzhishan (197.0km) | 197.0km |
| 26-10 | 112 | 83 | Stage 5Danzhou - Changjiang (184.0km) | 184.0km |
| 25-10 | 82 | 85 | Stage 4Chengmai - Danzhou (159.0km) | 159.0km |
| 24-10 | 89 | 89 | Stage 3Haikou - Chengmai (208.0km) | 208.0km |
| 23-10 | 93 | 92 | Stage 2Xinglong - Haikou (230.0km) | 230.0km |
| 22-10 | 95 | 95 | Stage 1Xinglong - Xinglong (88.0km) | 88.0km |
| | | Tour des Fjords (2.1) |
| 02-09 | DNF | | Stage 3Ulvik - Suldalsosen (221.0km) | 221.0km |
| 01-09 | 86 | 86 | Stage 2Stord - Odda (212.0km) | 212.0km |
| 31-08 | 92 | 93 | Stage 1Os - Bergen (146.0km) | 146.0km |
| 15-08 | 3 | | GP Tim Wellens - Sint-Truiden (Nat) | 139.0km |
| 20-07 | 72 | | Grand Prix Cerami (1.1) | 210.0km |
| 17-07 | 1 | | Grote Prijs Beeckman - De Caluwe (Nat) | |
| | | Int. Österreich-Rundfahrt (2.HC) |
| 106 | | Klassement |
| 09-07 | 87 | 106 | Stage 7Bad Tatzsmannsdorf - Wien (179.0km) | 179.0km |
| 08-07 | 89 | 108 | Stage 6Graz - Stegersbach (203.0km) | 203.0km |
| 07-07 | 105 | 112 | Stage 5Millstatt
- Dobratsch (147.0km) | 147.0km |
| 06-07 | 109 | 114 | Stage 4Rottenmann - Edelweißspitze
(183.0km) | 183.0km |
| 05-07 | 95 | 116 | Stage 3Ardagger - Sonntagberg (181.0km) | 181.0km |
| 04-07 | 118 | 118 | Stage 2Mondsee - Steyr (205.0km) | 205.0km |
| 03-07 | 112 | 112 | Stage 1Innsbruck - Salzburg (186.0km) | 186.0km |
| 02-07 | 113 | 113 | PrologueKitzbühel - Kitzbühel0 | 0 |
| 25-06 | 88 | | National Road Championships - Netherlands (CN) | 212.0km |
| 22-06 | 11 | | National Road Championships - Netherlands TT (CN) | 50.0km |
| | | Ster ZLM Toer GP Jan van Heeswijk (2.1) |
| 106 | | Klassement |
| 19-06 | 121 | 106 | Stage 5Someren - Boxtel (186.0km) | 186.0km |
| 18-06 | 90 | 102 | Stage 4Verviers - Jalhay (186.0km) | 186.0km |
| 17-06 | 110 | 114 | Stage 3Buchten - Buchten (210.0km) | 210.0km |
| 16-06 | 148 | 112 | Stage 2Oss - Oss (186.0km) | 186.0km |
| 15-06 | 67 | 67 | Stage 1Goes - Goes (6.0km) | 6.0km |
| | | Boucles de la Mayenne (2.1) |
| 05-06 | DNF | | Stage 3Juvigné - Laval | |
| 04-06 | 86 | 85 | Stage 2Saint-Berthevin - Craon (180.0km) | 180.0km |
| 03-06 | 117 | 115 | Stage 1Laval - Villaines-la-Juhel (190.0km) | 190.0km |
| 02-06 | 24 | 24 | PrologueLaval - Laval (4.0km) | 4.0km |
| | | Tour of Iran (Azarbaijan) (2.1) |
| 5 | | Klassement |
| 6 | | Punten |
| 18-05 | 43 | 5 | Stage 6Tabriz - Tabriz (114.0km) | 114.0km |
| 17-05 | 6 | 5 | Stage 5Sarein - Sahand (180.0km) | 180.0km |
| 16-05 | 15 | 4 | Stage 4Tabriz - Sarein (198.0km) | 198.0km |
| 15-05 | 39 | 1 | Stage 3Aras - Tabriz (139.0km) | 139.0km |
| 14-05 | 1 | 1 | Stage 2Urmia - Aras (209.0km) | 209.0km |
| 13-05 | 36 | 36 | Stage 1Tabriz - Urmia (162.0km) | 162.0km |
| | | Flèche du Sud (2.2) |
| 36 | | Klassement |
| 08-05 | 90 | 36 | Stage 5Schifflange - Esch-sur-Alzette (136.0km) | 136.0km |
| 07-05 | 11 | 31 | Stage 4Rosport - Echternach (157.0km) | 157.0km |
| 05-05 | 104 | 105 | Stage 2Roeser - Rumelange (154.0km) | 154.0km |
| 04-05 | 110 | 110 | Stage 1Kayl - Kayl (76.0km) | 76.0km |
| | | Giro del Trentino (2.HC) |
| 84 | | Klassement |
| 22-04 | 73 | 84 | Stage 4Malè - Clès (160.0km) | 160.0km |
| 21-04 | 123 | 121 | Stage 3Sillian - Mezzolombardo (204.0km) | 204.0km |
| 19-04 | 14 | 86 | Stage 1Riva del Garda - Torbole sul Garda (12.0km) | 12.0km |
| 13-04 | DNF | | De Brabantse Pijl (1.HC) | 205.0km |
| | | Circuit Cycliste Sarthe - Pays de la Loire (2.1) |
| 79 | | Klassement |
| 08-04 | 71 | 79 | Stage 4Abbaye de l'Epau - Arnage (176.0km) | 176.0km |
| 07-04 | 71 | 87 | Stage 3Angers - Pré-en-Pail (190.0km) | 190.0km |
| 06-04 | 24 | 91 | Stage 2bAngers - Angers (6.0km) | 6.0km |
| 06-04 | 93 | 93 | Stage 2aSaint-Mars-la-Jaille - Angers (85.0km) | 85.0km |
| 05-04 | 84 | 84 | Stage 1Château-du-Loir - Château-du-Loir (183.0km) | 183.0km |
| 03-04 | 64 | | Paris-Camembert (1.1) | |
| 01-04 | DNF | | Route Adélie de Vitré (1.1) | |
| | | Tour of Oman (2.HC) |
| 130 | | Klassement |
| 21-02 | 117 | 130 | Stage 6Al Seeb - Muscat (130.0km) | 130.0km |
| 20-02 | 128 | 133 | Stage 5As Sifah - Muscat (119.0km) | 119.0km |
| 19-02 | 100 | 133 | Stage 4Rusayl - Jabal al Akhdhar (Green Mountain) (177.0km) | 177.0km |
| 18-02 | 117 | 136 | Stage 3Al Sawadi Beach - Manumah/Naseem Park (176.0km) | 176.0km |
| 17-02 | 95 | 137 | Stage 2Al Seeb - Quriyat (162.0km) | 162.0km |
| 16-02 | 140 | 140 | Stage 1Muscat Airport - Al Bustan (145.0km) | 145.0km |
| | | Tour of Qatar (2.HC) |
| 125 | | Klassement |
| 12-02 | 115 | 125 | Stage 5Sealine Beach Resort - Doha Corniche (114.0km) | 114.0km |
| 11-02 | 115 | 126 | Stage 4Al Zubarah - Madinat Al Shamal (189.0km) | 189.0km |
| 10-02 | 36 | 121 | Stage 3Lusail - Lusail (11.0km) | 11.0km |
| 09-02 | 130 | 129 | Stage 2Katara Cultural Village - Qatar University (135.0km) | 135.0km |
| 08-02 | 125 | 125 | Stage 1Dukhan - Al Khor Corniche (176.0km) | 176.0km |
| | | Tour de San Luis (2.1) |
| 80 | | Klassement |
| 10 | | Berg |
| 24-01 | 119 | 80 | Stage 7San Luis - San Luis (119.0km) | 119.0km |
| 23-01 | 97 | 80 | Stage 6La Toma - Filo Sierras Comechingones (159.0km) | 159.0km |
| 22-01 | 89 | 77 | Stage 5Renca - Juana Koslay (168.0km) | 168.0km |
| 21-01 | 129 | 82 | Stage 4San Luis - Cerro del Amago (140.0km) | 140.0km |
| 20-01 | 1 | 1 | Stage 3Potrero De Los Funes - La Punta (131.0km) | 131.0km |
| 19-01 | 106 | 74 | Stage 2San Luis - Villa Mercedes (181.0km) | 181.0km |
| 18-01 | 10 | 48 | Stage 1El Durazno - El Durazno (21.0km) | 21.0km |