09.10 | 1 | | | Paris - Tours Elite (1.Pro) | 213.5 | 125 | 200 | more |
06.10 | 2 | | | Paris - Bourges (1.1) | 198 | 55 | 85 | more |
02.10 | 2 | | | Tour de Vendée (1.1) | 206.9 | 55 | 85 | more |
25.09 | 7 | | | Classique Paris-Chauny (1.1) | 203.5 | 20 | 35 | more |
18.09 | 1 | | | Grand Prix d'Isbergues - Pas de Calais (1.1) | 197.6 | 75 | 125 | more |
17.09 | 2 | | | Primus Classic (1.Pro) | 199.3 | 85 | 150 | more |
28.08 | 122 | | | Bretagne Classic - Ouest-France (1.UWT) | 254.8 | 5 | | more |
24.08 | 2 | | | Druivenkoers - Overijse (1.1) | 192 | 55 | 85 | more |
23.08 | 2 | | | Egmont Cycling Race (1.1) | 198 | 55 | 85 | more |
21.08 | DNF | | | Cyclassics Hamburg (1.UWT) | 204.7 | | | more |
14.08 | 2 | | | European Continental Championships ME - Road Race (CC) | 207.9 | 100 | 200 | more |
30.07 › 05.0830-5/7 | | | | Tour de Pologne (2.UWT) | | | | more |
| 1 | | | Points classificationPoints classification | | | | |
| 58 | | | General classificationGeneral classification | | 5 | 2 | |
05.08 | 1 | | | S7Stage 7 - Valsir › Kraków | 177.8 | 50 | 50 | |
04.08 | 126 | 61 | | S6 (ITT)Stage 6 (ITT) - Nowy Targ (Gronków) › Stacja Narciarska Rusiński | 11.8 | | | |
03.08 | 2 | 56 | | S5Stage 5 - Łańcut › Rzeszów | 178.1 | 30 | 20 | |
02.08 | 13 | 60 | | S4Stage 4 - Lesko › Sanok | 179.4 | | | |
01.08 | 71 | 69 | | S3Stage 3 - Kraśnik › Przemyśl | 237.9 | | | |
31.07 | 6 | 11 | | S2Stage 2 - Chełm › Zamość | 205.6 | 7 | | |
30.07 | 9 | 11 | | S1Stage 1 - Kielce › Lublin | 218.8 | 2 | | |
26.06 | 6 | | | National Championships France ME - Road Race (NC) | 240 | 1 | 30 | more |
16.06 › 19.0616-19/6 | | | | La Route d'Occitanie - La Dépêche du Midi (2.1) | | | | more |
| 7 | | | Points classificationPoints classification | | | | |
| 69 | | | General classificationGeneral classification | | | | |
19.06 | 28 | | | S4Stage 4 - Les Angles › Auterive | 188.3 | | | |
18.06 | 107 | 98 | | S3Stage 3 - Sigean › Les Angles | 188.7 | | | |
17.06 | 32 | 2 | | S2Stage 2 - Belmont-sur-Rance › Roquefort-sur-Soulzon | 33.6 | | | |
16.06 | 1 | 1 | | S1Stage 1 - Séméac › L'Isle Jourdain | 174.4 | 20 | 14 | |
06.05 › 29.056-29/5 | | | | Giro d'Italia (2.UWT) | | | | more |
| 1 | | | Points classificationPoints classification | | 80 | 100 | |
| 130 | | | General classificationGeneral classification | | 20 | | |
29.05 | 72 | | | S21 (ITT)Stage 21 (ITT) - Verona › Verona | 17.4 | | | |
28.05 | 123 | 130 | | S20Stage 20 - Belluno › Marmolada (Passo Fedaia) | 168 | | | |
27.05 | 149 | 127 | | S19Stage 19 - Marano Lagunare › Santuario di Castelmonte | 178 | | | |
26.05 | 6 | 128 | | S18Stage 18 - Borgo Valsugana › Treviso | 156 | 15 | | |
25.05 | 132 | 130 | | S17Stage 17 - Ponte di Legno › Lavarone | 168 | | | |
24.05 | 140 | 130 | | S16Stage 16 - Salò › Aprica | 202 | | | |
22.05 | 126 | 134 | | S15Stage 15 - Rivarolo Canavese › Cogne | 177 | | | |
21.05 | 146 | 134 | | S14Stage 14 - Santena › Torino | 147 | | | |
20.05 | 1 | 126 | | S13Stage 13 - Sanremo › Cuneo | 150 | 80 | 100 | |
19.05 | 134 | 134 | | S12Stage 12 - Parma › Genova | 204 | | | |
18.05 | 4 | 124 | | S11Stage 11 - Santarcangelo di Romagna › Reggio Emilia | 203 | 25 | 12 | |
17.05 | 50 | 126 | | S10Stage 10 - Pescara › Jesi | 196 | | | |
15.05 | 156 | 137 | | S9Stage 9 - Isernia › Blockhaus | 191 | | | |
14.05 | 130 | 135 | | S8Stage 8 - Napoli › Napoli | 153 | | | |
13.05 | 150 | 135 | | S7Stage 7 - Diamante › Potenza | 196 | | | |
12.05 | 1 | 133 | | S6Stage 6 - Palmi › Scalea | 192 | 80 | 100 | |
11.05 | 1 | 134 | | S5Stage 5 - Catania › Messina | 174 | 80 | 100 | |
10.05 | 152 | 138 | | S4Stage 4 - Avola › Etna | 172 | | | |
08.05 | 2 | 71 | | S3Stage 3 - Kaposvár › Balatonfüred | 201 | 50 | 40 | |
07.05 | 70 | 73 | | S2 (ITT)Stage 2 (ITT) - Budapest › Budapest | 9.2 | | | |
06.05 | 80 | 81 | | S1Stage 1 - Budapest › Visegrád | 195 | | | |
01.04 | 30 | | | La Route Adélie de Vitré (1.1) | 176.7 | | | more |
27.03 | 10 | | | Gent-Wevelgem in Flanders Fields ME (1.UWT) | 248.8 | 42 | 85 | more |
23.03 | 6 | | | Minerva Classic Brugge-De Panne ME (1.UWT) | 207.9 | 70 | 115 | more |
19.03 | 10 | | | Milano-Sanremo (1.UWT) | 293 | 50 | 85 | more |
07.03 › 13.037-13/3 | | | | Tirreno-Adriatico (2.UWT) | | | | more |
| 12 | | | Points classificationPoints classification | | | | |
| 77 | | | General classificationGeneral classification | | 5 | | |
13.03 | 9 | | | S7Stage 7 - San Benedetto del Tronto › San Benedetto del Tronto | 159 | 2 | | |
12.03 | 119 | 82 | | S6Stage 6 - Apecchio › Carpegna | 215 | | | |
11.03 | 92 | 74 | | S5Stage 5 - Sefro › Fermo | 155 | | | |
10.03 | 68 | 65 | | S4Stage 4 - Cascata delle Marmore › Bellante | 202 | | | |
09.03 | 2 | 23 | | S3Stage 3 - Murlo › Terni | 170 | 30 | 25 | |
08.03 | 17 | 30 | | S2Stage 2 - Camaiore › Sovicille | 219 | | | |
07.03 | 31 | 31 | | S1 (ITT)Stage 1 (ITT) - Lido di Camaiore › Lido di Camaiore | 13.9 | | | |
20.02 › 26.0220-26/2 | | | | UAE Tour (2.UWT) | | | | more |
| 17 | | | Points classificationPoints classification | | | | |
| 68 | | | General classificationGeneral classification | | 5 | | |
26.02 | 45 | | | S7Stage 7 - Al Ain › Jebel Hafeet | 148 | | | |
25.02 | 24 | 85 | | S6Stage 6 - Expo 2020 Dubai › Expo 2020 Dubai | 180 | | | |
24.02 | 7 | 85 | | S5Stage 5 - Ras al Khaimah Corniche › Al Marjan Island | 182 | 4 | | |
23.02 | 102 | 85 | | S4Stage 4 - Fujairah Fort › Jebel Jais | 181 | | | |
22.02 | 16 | 14 | | S3 (ITT)Stage 3 (ITT) - Ajman › Ajman | 9 | | | |
21.02 | 5 | 10 | | S2Stage 2 - Hudayriyat Island › Abu Dhabi Breakwater | 176 | 10 | | |
20.02 | 6 | 9 | | S1Stage 1 - Madinat Zayed › Madinat Zayed | 184 | 7 | | |
10.02 › 13.0210-13/2 | | | | Tour de la Provence (2.Pro) | | | | more |
| 10 | | | Points classificationPoints classification | | | | |
| 69 | | | General classificationGeneral classification | | | | |
13.02 | 84 | | | S3Stage 3 - Manosque › Montagne de Lure | 166.1 | | | |
12.02 | 5 | 25 | | S2Stage 2 - Arles › Manosque | 180.6 | 4 | | |
11.02 | 61 | 36 | | S1Stage 1 - Istres › Les Saintes-Maries-de-la-Mer | 151.8 | | | |
10.02 | 20 | 20 | | ProloguePrologue - Berre-l'Étang › Berre-l'Étang | 7.1 | | | |