1 | 2025-03-24 | Volta Ciclista a Catalunya | Stage 1 | | | 16 | | | 106 |
2 | 2024-04-28 | Tour de Romandie | General classification | | | 10 | | | 9 |
3 | 2024-04-28 | Tour de Romandie | Stage 5 | | | 29 | | | 39 |
4 | 2024-04-27 | Tour de Romandie | Stage 4 | | | 6 | | | 8 |
5 | 2024-04-26 | Tour de Romandie | Stage 3 (ITT) | | | 52 | | | 23 |
6 | 2024-04-25 | Tour de Romandie | Stage 2 | | | 14 | | | 21 |
7 | 2024-04-24 | Tour de Romandie | Stage 1 | | | 56 | | | 48 |
8 | 2024-04-23 | Tour de Romandie | Prologue | | | 103 | | | 85 |
9 | 2020-08-09 | Tour de l'Ain | Stage 3 | | | 2 | | | DNF |
10 | 2020-08-08 | Tour de l'Ain | Stage 2 | | | 2 | | | 75 |
11 | 2020-08-07 | Tour de l'Ain | Stage 1 | | | 14 | | | 27 |
12 | 2020-08-04 | La Route d'Occitanie - La Dépêche du Midi | General classification | | | 1 | | | 52 |
13 | 2020-08-04 | La Route d'Occitanie - La Dépêche du Midi | Stage 4 | | | 4 | | | 90 |
14 | 2020-08-03 | La Route d'Occitanie - La Dépêche du Midi | Stage 3 | | | 1 | | | 30 |
15 | 2020-08-02 | La Route d'Occitanie - La Dépêche du Midi | Stage 2 | | | 12 | | | 125 |
16 | 2020-08-01 | La Route d'Occitanie - La Dépêche du Midi | Stage 1 | | | 6 | | | 36 |
17 | 2019-10-12 | Il Lombardia | | | 3 | | | 50 |
18 | 2019-10-09 | Milano-Torino | | | 6 | | | 62 |
19 | 2019-10-06 | Gran Premio Bruno Beghelli | | | DNF | | | 42 |
20 | 2019-10-05 | Giro dell'Emilia | | | 9 | | | 45 |
21 | 2019-03-17 | Paris - Nice | General classification | | | 1 | | | 32 |
22 | 2019-03-17 | Paris - Nice | Stage 8 | | | 19 | | | 24 |
23 | 2019-03-16 | Paris - Nice | Stage 7 | | | 14 | | | 50 |
24 | 2019-03-15 | Paris - Nice | Stage 6 | | | 10 | | | 58 |
25 | 2019-03-14 | Paris - Nice | Stage 5 (ITT) | | | 6 | | | 22 |
26 | 2019-03-13 | Paris - Nice | Stage 4 | | | 14 | | | 46 |
27 | 2019-03-12 | Paris - Nice | Stage 3 | | | 45 | | | 143 |
28 | 2019-03-11 | Paris - Nice | Stage 2 | | | 7 | | | 120 |
29 | 2019-03-10 | Paris - Nice | Stage 1 | | | 15 | | | 50 |
30 | 2018-08-04 | Clasica Ciclista San Sebastian | | | DNF | | | 75 |
31 | 2018-05-19 | Amgen Tour of California | General classification | | | 1 | | | 5 |
32 | 2018-05-19 | Amgen Tour of California | Stage 7 | | | 33 | | | 29 |
33 | 2018-05-18 | Amgen Tour of California | Stage 6 | | | 1 | | | 3 |
34 | 2018-05-17 | Amgen Tour of California | Stage 5 | | | 28 | | | 71 |
35 | 2018-05-16 | Amgen Tour of California | Stage 4 (ITT) | | | 18 | | | 3 |
36 | 2018-05-15 | Amgen Tour of California | Stage 3 | | | 5 | | | 20 |
37 | 2018-05-14 | Amgen Tour of California | Stage 2 | | | 1 | | | 12 |
38 | 2018-05-13 | Amgen Tour of California | Stage 1 | | | 23 | | | 28 |
39 | 2018-03-25 | Volta Ciclista a Catalunya | Stage 7 | | | DNF | | | 79 |
40 | 2018-03-24 | Volta Ciclista a Catalunya | Stage 6 | | | 7 | | | 81 |
41 | 2018-03-23 | Volta Ciclista a Catalunya | Stage 5 | | | 11 | | | 20 |
42 | 2018-03-22 | Volta Ciclista a Catalunya | Stage 4 | | | 2 | | | 69 |
43 | 2018-03-21 | Volta Ciclista a Catalunya | Stage 3 | | | 8 | | | 90 |
44 | 2018-03-20 | Volta Ciclista a Catalunya | Stage 2 | | | 4 | | | 8 |
45 | 2018-03-19 | Volta Ciclista a Catalunya | Stage 1 | | | 38 | | | 37 |
46 | 2018-02-11 | Colombia Oro y Paz | General classification | | | 1 | | | 53 |
47 | 2018-02-11 | Colombia Oro y Paz | Stage 6 | | | 2 | | | 41 |
48 | 2018-02-10 | Colombia Oro y Paz | Stage 5 | | | 3 | | | 55 |
49 | 2018-02-09 | Colombia Oro y Paz | Stage 4 | | | 6 | | | 102 |
50 | 2018-02-08 | Colombia Oro y Paz | Stage 3 | | | 24 | | | 34 |
51 | 2018-02-07 | Colombia Oro y Paz | Stage 2 | | | 15 | | | 42 |
52 | 2018-02-06 | Colombia Oro y Paz | Stage 1 | | | 13 | | | 39 |
53 | 2017-09-30 | Giro dell'Emilia | | | 20 | | | DNF |
54 | 2017-09-28 | Coppa Sabatini - Gran Premio città di Peccioli | | | 25 | | | 89 |
55 | 2017-03-26 | Settimana Internazionale Coppi e Bartali | General classification | | | 4 | | | 22 |
56 | 2017-03-26 | Settimana Internazionale Coppi e Bartali | Stage 4 | | | 9 | | | 16 |
57 | 2017-03-25 | Settimana Internazionale Coppi e Bartali | Stage 3 | | | 33 | | | 130 |
58 | 2017-03-24 | Settimana Internazionale Coppi e Bartali | Stage 2 | | | 6 | | | 27 |
59 | 2017-03-23 | Settimana Internazionale Coppi e Bartali | Stage 1a | | | 28 | | | 20 |
60 | 2016-08-27 | Tour de l'Avenir | General classification | | | 4 | | | 6 |
61 | 2016-08-27 | Tour de l'Avenir | Stage 8 | | | 7 | | | 10 |
62 | 2016-08-26 | Tour de l'Avenir | Stage 7 | | | 5 | | | 10 |
63 | 2016-08-25 | Tour de l'Avenir | Stage 6 | | | 9 | | | 11 |
64 | 2016-08-24 | Tour de l'Avenir | Stage 5 | | | 15 | | | 10 |
65 | 2016-08-23 | Tour de l'Avenir | Stage 4 (ITT) | | | 44 | | | 15 |
66 | 2016-08-22 | Tour de l'Avenir | Stage 3 | | | 24 | | | 19 |
67 | 2016-08-21 | Tour de l'Avenir | Stage 2 | | | 19 | | | 31 |
68 | 2016-08-20 | Tour de l'Avenir | Stage 1 | | | 33 | | | 4 |
| | | | 53 | | | 15 | |