| | | Vuelta a Burgos (2.Pro) |
| 19-08 | DNS | | Stage 5Golmayo - Lagunas de Neila (160.0km) | 160.0km |
| 18-08 | 83 | 37 | Stage 4Santa Gadea del Cid - Pradoluengo (157.0km) | 157.0km |
| 17-08 | 32 | 32 | Stage 3Sargentes de La Lora - Villarcayo (183.0km) | 183.0km |
| 16-08 | 6 | 21 | Stage 2Oña - Poza de la Sal (13.0km) | 13.0km |
| 15-08 | 33 | 35 | Stage 1Villalba de Duero - Burgos (161.0km) | 161.0km |
| | | Vuelta a Castilla y Leon (2.1) |
| 7 | | Klassement |
| 19 | | Punten |
| 27-07 | 12 | 7 | Stage 2Coca - Segovia (186.0km) | 186.0km |
| 26-07 | 12 | 12 | Stage 1Soria - Soria (168.0km) | 168.0km |
| 25-07 | 71 | | Prueba Villafranca - Ordiziako Klasika (1.1) | |
| 25-06 | DNF | | National Road Championships - Germany (CN) | 215.0km |
| 23-06 | 4 | | National Road Championships - Germany TT (CN) | |
| | | La Route d'Occitanie - La Dépêche du Midi (2.1) |
| 3 | | Klassement |
| 30 | | Punten |
| 24 | | Berg |
| 18-06 | 20 | 3 | Stage 4Saint-Gaudens - Saint-Girons (164.0km) | 164.0km |
| 17-06 | 7 | 3 | Stage 3Gimont - Nistos Cap Nestès (189.0km) | 189.0km |
| 16-06 | 28 | 16 | Stage 2Cazouls-lès-Béziers - Graulhet (182.0km) | 182.0km |
| 15-06 | 19 | 19 | Stage 1Narbonne - Gruissan (184.0km) | 184.0km |
| 13-06 | 17 | | CIC - Mont Ventoux (1.Pro) | 154.0km |
| | | Tour of Norway (2.Pro) |
| 29-05 | DNS | | Stage 3Stavanger - Stavanger (151.0km) | 151.0km |
| 28-05 | 74 | 38 | Stage 2Valle - Stavanger (172.0km) | 172.0km |
| 27-05 | 28 | 15 | Stage 1Jondal - Hovden (206.0km) | 206.0km |
| 26-05 | 15 | 15 | PrologueBergen - Fløyen (7.0km) | 7.0km |
| 01-05 | 6 | | Eschborn-Frankfurt (1.UWT) | 202.0km |
| | | Tour of the Alps (2.Pro) |
| 28 | | Klassement |
| 6 | | Punten |
| 16 | | Berg |
| 21-04 | 2 | 28 | Stage 5Cavalese - Brunico (144.0km) | 144.0km |
| 20-04 | 19 | 38 | Stage 4Rovereto - Predazzo (152.0km) | 152.0km |
| 19-04 | 60 | 39 | Stage 3Ritten - Brentonico San Valentino (162.0km) | 162.0km |
| 18-04 | 40 | 34 | Stage 2Reith im Alpbachtal - Ritten (165.0km) | 165.0km |
| 17-04 | 32 | 32 | Stage 1Rattenberg - Alpbach (127.0km) | 127.0km |
| | | Région Pays de la Loire Tour (2.1) |
| 49 | | Klassement |
| 07-04 | 45 | 49 | Stage 4Sablé-sur-Sarthe - Le Mans (124.0km) | 124.0km |
| 06-04 | 45 | 60 | Stage 3Baugé-en-Anjou - Mayenne (152.0km) | 152.0km |
| 05-04 | 68 | 81 | Stage 2Clisson - Le Lion-d'Angers (122.0km) | 122.0km |
| 04-04 | 70 | 72 | Stage 1Saint-Nazaire - Saint-Gilles-Croix-de-Vie (141.0km) | 141.0km |
| 01-04 | 68 | | Gran Premio Miguel Indurain (1.Pro) | 203.0km |
| 26-03 | 10 | | GP Industria & Artigianato (1.Pro) | 199.0km |
| | | Settimana Internazionale Coppi e Bartali (2.1) |
| 70 | | Klassement |
| 25-03 | 42 | 70 | Stage 5Carpi - Carpi (18.0km) | 18.0km |
| 24-03 | 81 | 72 | Stage 4Fiorano Modenese - Fiorano Modenese (168.0km) | 168.0km |
| 23-03 | 74 | 65 | Stage 3Forlì - Forlì (139.0km) | 139.0km |
| 22-03 | 90 | 70 | Stage 2Riccione - Longiano (172.0km) | 172.0km |
| 21-03 | 68 | 68 | Stage 1Riccione - Riccione (161.0km) | 161.0km |
| 19-03 | 56 | | Per Sempre Alfredo (1.1) | 190.0km |
| | | UAE Tour (2.UWT) |
| 22 | | Klassement |
| 26-02 | 28 | 22 | Stage 7Abu Dhabi - Jebel Jais (153.0km) | 153.0km |
| 25-02 | 78 | 9 | Stage 6Abu Dhabi - Abu Dhabi (166.0km) | 166.0km |
| 24-02 | 60 | 9 | Stage 5Al Marjan Island - Umm Al Quwain (170.0km) | 170.0km |
| 23-02 | 51 | 9 | Stage 4Shindagha - Dubai (174.0km) | 174.0km |
| 22-02 | 29 | 9 | Stage 3Al Fujayiah - Jebel Jais (185.0km) | 185.0km |
| 21-02 | 2 | 15 | Stage 2Khalifa Port - Khalifa Port (17.0km) | 17.0km |
| 20-02 | 62 | 62 | Stage 1Al Dhafra - Al Mirfa (151.0km) | 151.0km |
| 29-01 | 71 | | Trofeo Playa de Palma - Palma (1.1) | 141.0km |
| 28-01 | 61 | | Trofeo Port d'Andratx - Port d'Pollença (Mirador D'es Colomer) (1.1) | 155.0km |
| 27-01 | 61 | | Trofeo Serra de Tramuntana (Lloseta - Lloseta) (1.1) | 160.0km |