| 09-10 | 14 | | UCI Gravel World Championship (CM) | 194.0km |
| 25-09 | 7 | | UCI World Championship Wollongong (CM) | 266.0km |
| 11-09 | DNF | | Grand Prix Cycliste de Montréal (1.UWT) | 221.0km |
| 09-09 | DNF | | Grand Prix Cycliste de Québec (1.UWT) | 201.0km |
| 28-08 | 106 | | Bretagne Classic - Ouest-France (1.UWT) | 254.0km |
| 26-08 | 16 | | UCI World Championship E-Mountainbike Les Gets (CM) | |
| 21-08 | 31 | | BEMER Cyclassics (1.UWT) | 204.0km |
| | | Tour de France (2.UWT) |
| 116 | | Klassement |
| 9 | | Punten |
| 24-07 | 5 | 116 | Stage 21Paris - Paris (112.0km) | 112.0km |
| 23-07 | 83 | 118 | Stage 20Lacapelle-Marival - Rocamadour (40.0km) | 40.0km |
| 22-07 | 34 | 119 | Stage 19Castelnaudary - Cahors (188.0km) | 188.0km |
| 21-07 | 109 | 123 | Stage 18Lourdes - Hautacam (143.0km) | 143.0km |
| 20-07 | 137 | 126 | Stage 17Saint-Gaudens - Peyragudes (129.0km) | 129.0km |
| 19-07 | 133 | 128 | Stage 16Carcassonne - Foix (178.0km) | 178.0km |
| 17-07 | 4 | 130 | Stage 15Rodez - Carcassonne (202.0km) | 202.0km |
| 16-07 | 132 | 143 | Stage 14Saint-Étienne - Mende (192.0km) | 192.0km |
| 15-07 | 147 | 142 | Stage 13Bourg-d'Oisans - Saint-Étienne (192.0km) | 192.0km |
| 14-07 | 142 | 139 | Stage 12Briançon - L'Alpe-d'Huez (165.0km) | 165.0km |
| 13-07 | 128 | 136 | Stage 11Albertville - Col du Granon (151.0km) | 151.0km |
| 12-07 | 129 | 133 | Stage 10Morzine - Megève (148.0km) | 148.0km |
| 10-07 | 121 | 131 | Stage 9Aigle - Les Portes du Soleil (192.0km) | 192.0km |
| 09-07 | 130 | 135 | Stage 8Dôle - Lausanne (186.0km) | 186.0km |
| 08-07 | 138 | 131 | Stage 7Tomblaine - La Planche des Belles Filles (176.0km) | 176.0km |
| 07-07 | 74 | 111 | Stage 6Binche - Longwy (219.0km) | 219.0km |
| 06-07 | 147 | 118 | Stage 5Lille - Arenberg (157.0km) | 157.0km |
| 05-07 | 5 | 68 | Stage 4Dunkerque - Calais (171.0km) | 171.0km |
| 03-07 | 4 | 91 | Stage 3Vejle - Sønderborg (182.0km) | 182.0km |
| 02-07 | 6 | 140 | Stage 2Roskilde - Nyborg (202.0km) | 202.0km |
| 01-07 | 140 | 140 | Stage 1København (Copenhagen) - København (Copenhagen) (13.0km) | 13.0km |
| 26-06 | 1 | | National Road Championships - Slovakia (CN) | |
| | | Tour de Suisse (2.UWT) |
| 19-06 | DNS | | Stage 8Vaduz - Vaduz (25.0km) | 25.0km |
| 18-06 | 79 | 77 | Stage 7Ambri - Malbun (Triesenberg) (196.0km) | 196.0km |
| 17-06 | 87 | 82 | Stage 6Locarno - Moosalp (179.0km) | 179.0km |
| 16-06 | 82 | 105 | Stage 5Ambri - Novazzano (193.0km) | 193.0km |
| 15-06 | 134 | 112 | Stage 4Grenchen - Brunnen (190.0km) | 190.0km |
| 14-06 | 1 | 112 | Stage 3Aesch - Grenchen (176.0km) | 176.0km |
| 13-06 | 126 | 132 | Stage 2Küsnacht - Aesch (199.0km) | 199.0km |
| 12-06 | 127 | 127 | Stage 1Küsnacht - Küsnacht (177.0km) | 177.0km |
| 10-06 | 69 | | Grosser Preis des Kantons Aargau (1.1) | 173.0km |
| | | Circuit Cycliste Sarthe - Pays de la Loire (2.1) |
| 06-04 | DNF | | Stage 2Le Lude - Le Lude (173.0km) | 173.0km |
| 05-04 | 61 | 61 | Stage 1Mamers - Mamers (192.0km) | 192.0km |
| 27-03 | DNF | | Gent-Wevelgem in Flanders Fields (1.UWT) | 248.0km |
| 25-03 | 68 | | E3 Saxo Bank Classic (1.UWT) | 203.0km |
| 19-03 | 92 | | Milano-Sanremo (1.UWT) | 293.0km |
| 16-03 | 5 | | Milano - Torino (1.Pro) | 199.0km |
| | | Tirreno-Adriatico (2.UWT) |
| 09-03 | DNS | | Stage 3Murlo - Terni (170.0km) | 170.0km |
| 08-03 | 4 | 84 | Stage 2Camaiore - Sovicille (219.0km) | 219.0km |
| 07-03 | 87 | 87 | Stage 1Lido di Camaiore - Lido di Camaiore (13.0km) | 13.0km |
| 27-02 | 117 | | Kuurne-Brussel-Kuurne (1.Pro) | 195.0km |
| 26-02 | 98 | | Omloop Het Nieuwsblad Elite (1.UWT) | 204.0km |
| | | Tour des Alpes Maritimes et du Var (2.1) |
| 80 | | Klassement |
| 20-02 | 65 | 80 | Stage 3Villefranche-sur-Mer - Blausasc (113.0km) | 113.0km |
| 19-02 | 99 | 103 | Stage 2Puget-Théniers - La Turbie (149.0km) | 149.0km |
| 18-02 | 102 | 102 | Stage 1Saint-Raphaël - La Seyne-sur-Mer (176.0km) | 176.0km |