| 31-08 | DNF | | GP Ouest France - Plouay (WT) | 229.0km |
| | | Tour du Poitou Charentes (2.1) |
| 16 | | Klassement |
| 29-08 | 38 | 16 | Stage 5Lezay - Poitiers (191.0km) | 191.0km |
| 28-08 | 20 | 16 | Stage 4Availles-Limouzine - L'Isle-Jourdain (24.0km) | 24.0km |
| 28-08 | 54 | 65 | Stage 3Montmorillon - L'Isle-Jourdain (111.0km) | 111.0km |
| 27-08 | 59 | 73 | Stage 2Marans - Niort (183.0km) | 183.0km |
| 26-08 | 95 | 95 | Stage 1Jarnac - La Ronde (192.0km) | 192.0km |
| | | Eneco Tour (WT) |
| 89 | | Klassement |
| 17-08 | 42 | 89 | Stage 7Riemst - Sittard-Geleen (183.0km) | 183.0km |
| 16-08 | 125 | 126 | Stage 6Heerlen - Aywaille (173.0km) | 173.0km |
| 15-08 | 131 | 123 | Stage 5Geraardsbergen - Geraardsbergen (160.0km) | 160.0km |
| 14-08 | 112 | 126 | Stage 4Koksijde - Ardooie (183.0km) | 183.0km |
| 13-08 | 16 | 130 | Stage 3Breda - Breda (9.0km) | 9.0km |
| 12-08 | 96 | 131 | Stage 2Waalwijk - Vlijmen (177.0km) | 177.0km |
| 11-08 | 146 | 146 | Stage 1Terneuzen - Terneuzen (181.0km) | 181.0km |
| 03-08 | DNF | | Commonwealth Games (CC) | |
| 31-07 | 6 | | Commonwealth Games TT (CC) | |
| | | Giro d'Italia (WT) |
| 154 | | Klassement |
| 40 | | Jongeren |
| 01-06 | 117 | 154 | Stage 21Gemona del Friuli - Trieste (172.0km) | 172.0km |
| 31-05 | 156 | 154 | Stage 20Maniago - Monte Zoncolan (167.0km) | 167.0km |
| 30-05 | 117 | 154 | Stage 19Bassano del Grappa - Cima Grappa (26.0km) | 26.0km |
| 29-05 | 139 | 156 | Stage 18Belluno - Rifugio Panarotta (171.0km) | 171.0km |
| 28-05 | 139 | 159 | Stage 17Sarnonico - Vittorio Veneto (208.0km) | 208.0km |
| 27-05 | 139 | 159 | Stage 16Ponte di Legno Tonale - Val Martello (139.0km) | 139.0km |
| 25-05 | 137 | 165 | Stage 15Valdengo - Plan di Montecampione (225.0km) | 225.0km |
| 24-05 | 167 | 167 | Stage 14Aglie - Oropa (164.0km) | 164.0km |
| 23-05 | 128 | 171 | Stage 13Fossano - Rivarolo Canavese (157.0km) | 157.0km |
| 22-05 | 127 | 171 | Stage 12Barbaresco - Barolo (41.0km) | 41.0km |
| 21-05 | 166 | 173 | Stage 11Collecchio - Savona (249.0km) | 249.0km |
| 20-05 | 153 | 178 | Stage 10Modena - Salsomaggiore Terme (173.0km) | 173.0km |
| 18-05 | 182 | 179 | Stage 9Lugo - Sestola (172.0km) | 172.0km |
| 17-05 | 184 | 181 | Stage 8Foligno - Montecopiolo (179.0km) | 179.0km |
| 16-05 | 157 | 180 | Stage 7Frosinone - Foligno (211.0km) | 211.0km |
| 15-05 | 114 | 187 | Stage 6Sassano - Montecassino (247.0km) | 247.0km |
| 14-05 | 190 | 194 | Stage 5Tarente - Viggiano (203.0km) | 203.0km |
| 13-05 | 86 | 194 | Stage 4Giovinazzo - Bari (112.0km) | 112.0km |
| 11-05 | 195 | 195 | Stage 3Armagh - Dublin (187.0km) | 187.0km |
| 10-05 | 194 | 192 | Stage 2Belfast - Belfast (219.0km) | 219.0km |
| 09-05 | 1 | 159 | Stage 1Belfast - Belfast (21.0km) | 21.0km |
| | | Tour de Romandie (WT) |
| 114 | | Klassement |
| 04-05 | 40 | 114 | Stage 5Neuchâtel - Neuchâtel (18.0km) | 18.0km |
| 03-05 | 112 | 123 | Stage 4Freiburg - Freiburg (174.0km) | 174.0km |
| 02-05 | 113 | 136 | Stage 3Le Bouveret - Aigle (180.0km) | 180.0km |
| 01-05 | 141 | 141 | Stage 2Sion - Montreux (166.0km) | 166.0km |
| 30-04 | 131 | 131 | Stage 1Ascona - Sion (203.0km) | 203.0km |
| 29-04 | 34 | 34 | PrologueAscona - Ascona (5.0km) | 5.0km |
| 13-04 | 133 | | Paris-Roubaix (WT) | 257.0km |
| 06-04 | 98 | | Ronde van Vlaanderen (WT) | 259.0km |
| | | VDK-Driedaagse De Panne-Koksijde (2.HC) |
| 87 | | Klassement |
| 03-04 | 15 | 87 | Stage 3bDe Panne - De Panne (14.0km) | 14.0km |
| 03-04 | 36 | 102 | Stage 3aDe Panne - De Panne (109.0km) | 109.0km |
| 02-04 | 119 | 113 | Stage 2Zottegem - Koksijde (206.0km) | 206.0km |
| 01-04 | 56 | 58 | Stage 1De Panne - Zottegem (201.0km) | 201.0km |
| 30-03 | DNF | | Gent - Wevelgem (WT) | 233.0km |
| 28-03 | DNF | | E3 Harelbeke (WT) | 212.0km |
| 26-03 | DNF | | Dwars door Vlaanderen (1.HC) | 200.0km |
| 20-03 | DNF | | GP Nobili Rubinetterie (1.1) | 187.0km |
| | | Tirreno-Adriatico (WT) |
| 144 | | Klassement |
| 18-03 | 15 | 144 | Stage 7San Benedetto del Tronto - San Benedetto del Tronto (9.0km) | 9.0km |
| 17-03 | 155 | 150 | Stage 6Bucchianico - Porto Sant'Elpidio (187.0km) | 187.0km |
| 16-03 | 167 | 145 | Stage 5Amatrice - Guardiagrele (190.0km) | 190.0km |
| 15-03 | 153 | 136 | Stage 4Indicatore - Cittareale (237.0km) | 237.0km |
| 14-03 | 144 | 124 | Stage 3Cascina - Arezzo (206.0km) | 206.0km |
| 13-03 | 97 | 11 | Stage 2San Vincenzo - Cascina (173.0km) | 173.0km |
| 12-03 | 2 | 12 | Stage 1Donoratico - San Vincenzo (16.0km) | 16.0km |
| | | Tour of Oman (2.HC) |
| 121 | | Klassement |
| 23-02 | 95 | 121 | Stage 6As Sifah - Matrah (146.0km) | 146.0km |
| 22-02 | 128 | 127 | Stage 5Bidbid - Jabal al Akhdhar (Green Mountain) (147.0km) | 147.0km |
| 21-02 | 93 | 113 | Stage 4Wadi Al Abiyad - Boshar (173.0km) | 173.0km |
| 20-02 | 112 | 133 | Stage 3Muscat Corniche - Al Bustan (145.0km) | 145.0km |
| 19-02 | 135 | 133 | Stage 2Al Bustan - Quriyat (139.0km) | 139.0km |
| 18-02 | 128 | 128 | Stage 1As Suwayq Castle - Naseem Garden (164.0km) | 164.0km |
| | | Tour of Qatar (2.HC) |
| 134 | | Klassement |
| 8 | | Punten |
| 14-02 | 145 | 134 | Stage 6Sealine Beach Resort - Doha Corniche (113.0km) | 113.0km |
| 13-02 | 136 | 130 | Stage 5Al Zubara Fort - Madinat Al Shamal (159.0km) | 159.0km |
| 12-02 | 85 | 123 | Stage 4Dukhan - Mesaieed (135.0km) | 135.0km |
| 11-02 | 1 | 135 | Stage 3Lusail - Lusail (10.0km) | 10.0km |
| 10-02 | 97 | 140 | Stage 2Camel Race Track - Al Khor Corniche (160.0km) | 160.0km |
| 09-02 | 141 | 141 | Stage 1Al Wakra - Dukhan (135.0km) | 135.0km |
| 08-01 | 1 | | National Road Championships - Australia TT (CN) | 45.0km |