| 02-11 | 40 | | Tour de France Saitama Criterium (CRTP) | |
| 12-10 | DNS | | Il Lombardia (1.UWT) | 252.0km |
| 10-10 | 104 | | Gran Piemonte (1.Pro) | 182.0km |
| 29-09 | 10 | | UCI World Championship Zurich (CM) | 273.0km |
| 15-09 | 11 | | Grand Prix Cycliste de Montréal (1.UWT) | 209.0km |
| 13-09 | 90 | | Grand Prix Cycliste de Québec (1.UWT) | 201.0km |
| | | Tour de Pologne (2.UWT) |
| 38 | | Klassement |
| 58 | | Punten |
| 18-08 | 108 | 38 | Stage 7Wieliczka - Kraków (142.0km) | 142.0km |
| 17-08 | 30 | 38 | Stage 6Wadowice - Bukovina Resort (183.0km) | 183.0km |
| 16-08 | 108 | 46 | Stage 5Katowice - Katowice (187.0km) | 187.0km |
| 15-08 | 138 | 48 | Stage 4 Kudowa Zdrój - Prudnik (195.0km) | 195.0km |
| 14-08 | 48 | 49 | Stage 3Walbrzych - Duszniki Zdrój (156.0km) | 156.0km |
| 13-08 | 20 | 60 | Stage 2Mysłakowice - Karpacz (15.0km) | 15.0km |
| 12-08 | 71 | 71 | Stage 1Wroclaw - Karpacz (156.0km) | 156.0km |
| 10-08 | DNF | | Donostia San Sebastian Klasikoa (1.UWT) | 236.0km |
| 07-08 | 2 | | Criterium International Marcoles en Chataigneraie Souvenir Lucien Cantournet (CRTP) | |
| 22-07 | 1 | | Ronde d'Aix (CRTP) | |
| | | Tour de France (2.UWT) |
| 30 | | Klassement |
| 34 | | Punten |
| 33 | | Berg |
| 21-07 | 37 | 30 | Stage 21Monaco - Nice (33.0km) | 33.0km |
| 20-07 | 10 | 30 | Stage 20Nice - Col de la Couillole (132.0km) | 132.0km |
| 19-07 | 20 | 31 | Stage 19Embrun - Isola 2000 (144.0km) | 144.0km |
| 18-07 | 101 | 36 | Stage 18Gap - Barcelonnette (179.0km) | 179.0km |
| 17-07 | 32 | 34 | Stage 17Saint-Paul-Trois-Châteaux - Superdévoluy (177.0km) | 177.0km |
| 16-07 | 134 | 33 | Stage 16Gruissan - Nîmes (188.0km) | 188.0km |
| 14-07 | 33 | 34 | Stage 15Loudenvielle-Le Louron - Plateau de Beille (197.0km) | 197.0km |
| 13-07 | 53 | 35 | Stage 14Pau - Saint-Lary-Soulan (Pla d'Adet) (151.0km) | 151.0km |
| 12-07 | 57 | 35 | Stage 13Agen - Pau (165.0km) | 165.0km |
| 11-07 | 115 | 40 | Stage 12Aurillac - Villeneuve-sur-Lot (203.0km) | 203.0km |
| 10-07 | 52 | 42 | Stage 11Évaux-les-Bains - Le Lioran (211.0km) | 211.0km |
| 09-07 | 134 | 40 | Stage 10Orléans - Saint-Amand-Montrond (187.0km) | 187.0km |
| 07-07 | 104 | 41 | Stage 9Troyes - Troyes (199.0km) | 199.0km |
| 06-07 | 131 | 36 | Stage 8Semur-en-Auxois - Colombey-les-Deux-Églises (183.0km) | 183.0km |
| 05-07 | 53 | 34 | Stage 7Nuits-Saint-Georges - Gevrey-Chambertin (25.0km) | 25.0km |
| 04-07 | 157 | 35 | Stage 6Mâcon - Dijon (163.0km) | 163.0km |
| 03-07 | 170 | 33 | Stage 5Saint-Jean-de-Maurienne - Saint-Vulbas (177.0km) | 177.0km |
| 02-07 | 43 | 33 | Stage 4Pinerolo - Valloire (139.0km) | 139.0km |
| 01-07 | 57 | 5 | Stage 3Piacenza - Torino (230.0km) | 230.0km |
| 30-06 | 22 | 5 | Stage 2Cesenatico - Bologna (199.0km) | 199.0km |
| 29-06 | 1 | 1 | Stage 1Florence - Rimini (206.0km) | 206.0km |
| | | Giro d'Italia (2.UWT) |
| 9 | | Klassement |
| 23 | | Punten |
| 9 | | Berg |
| 26-05 | 42 | 9 | Stage 21Roma - Roma (122.0km) | 122.0km |
| 25-05 | 15 | 9 | Stage 20Alpago - Bassano del Grappa (181.0km) | 181.0km |
| 24-05 | 38 | 7 | Stage 19Mortegliano - Sappada (157.0km) | 157.0km |
| 23-05 | 42 | 7 | Stage 18Fiera di Primeiro - Padua (171.0km) | 171.0km |
| 22-05 | 7 | 7 | Stage 17Selva di Valgardena - Passo del Brocon (159.0km) | 159.0km |
| 21-05 | 19 | 7 | Stage 16Livigno - Santa Cristina Valgardena (202.0km) | 202.0km |
| 19-05 | 4 | 7 | Stage 15Manerba del Garda - Livigno (220.0km) | 220.0km |
| 18-05 | 40 | 8 | Stage 14Castiglione delle Stiviere - Desenzano del Garda (31.0km) | 31.0km |
| 17-05 | 44 | 6 | Stage 13Riccione - Cento (179.0km) | 179.0km |
| 16-05 | 25 | 6 | Stage 12Martinsciuro - Fano (190.0km) | 190.0km |
| 15-05 | 57 | 6 | Stage 11Foiano di Val Fortore - Francavilla al Mare (207.0km) | 207.0km |
| 14-05 | 2 | 7 | Stage 10Pompeii - Cusano Mutri (142.0km) | 142.0km |
| 12-05 | 31 | 14 | Stage 9Avvezano - Napoli (214.0km) | 214.0km |
| 11-05 | 20 | 16 | Stage 8Spoleto - Prati di Tivo (153.0km) | 153.0km |
| 10-05 | 18 | 14 | Stage 7Foligno - Perugia (38.0km) | 38.0km |
| 09-05 | 22 | 18 | Stage 6Viareggio - Rapolano Terme (180.0km) | 180.0km |
| 08-05 | 59 | 20 | Stage 5Genua - Lucca (178.0km) | 178.0km |
| 07-05 | 56 | 20 | Stage 4Acqui Terme - Andora (190.0km) | 190.0km |
| 06-05 | 67 | 21 | Stage 3Novara - Fossano (166.0km) | 166.0km |
| 05-05 | 20 | 22 | Stage 2San Francesco al Campo - Santuario di Oropa (161.0km) | 161.0km |
| 04-05 | 39 | 39 | Stage 1Venaria Reale - Torino (143.0km) | 143.0km |
| 21-04 | 2 | | Liège-Bastogne-Liège (1.UWT) | 259.0km |
| | | Tour of the Alps (2.Pro) |
| 5 | | Klassement |
| 11 | | Punten |
| 19-04 | 4 | 5 | Stage 5Levico Terme - Levico Terme (118.0km) | 118.0km |
| 18-04 | 7 | 5 | Stage 4Laives - Borgo Valsugana (141.0km) | 141.0km |
| 17-04 | 4 | 5 | Stage 3Schwaz - Schwaz (127.0km) | 127.0km |
| 16-04 | 10 | 7 | Stage 2Salorno - Stans (189.0km) | 189.0km |
| 15-04 | 9 | 9 | Stage 1Neumarkt - Kurtinig an der Weinstraße (133.0km) | 133.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 09-03 | DNS | | Stage 6Sassoferrato - Cagli (180.0km) | 180.0km |
| 08-03 | 93 | 73 | Stage 5Torricella Sicura - Valle Castellana (146.0km) | 146.0km |
| 07-03 | 36 | 26 | Stage 4Arrone - Giulianova (207.0km) | 207.0km |
| 06-03 | 48 | 25 | Stage 3Volterra - Gualdo Tadino (220.0km) | 220.0km |
| 05-03 | 96 | 34 | Stage 2Camaiore - Follonica (198.0km) | 198.0km |
| 04-03 | 36 | 36 | Stage 1Lido di Camaiore - Lido di Camaiore (10.0km) | 10.0km |
| 02-03 | 17 | | Strade Bianche (1.UWT) | 215.0km |
| 25-02 | 13 | | Faun Drome Classic (1.1) | 189.0km |
| 24-02 | 18 | | Faun-Ardèche Classic (1.Pro) | 169.0km |
| | | Tour des Alpes-Maritimes (2.1) |
| 11 | | Klassement |
| 10 | | Berg |
| 18-02 | 23 | 11 | Stage 2Villefranche-sur-Mer - Vence (131.0km) | 131.0km |
| 17-02 | 7 | 9 | Stage 1Levens - Antibes (165.0km) | 165.0km |
| 16-02 | 3 | | Classic Var (1.1) | 184.0km |