| 1 | | 20 | Uno-X Mobility | 04:34:58 |
| 2 | | 20 | EF Education - EasyPost | + 03 |
| 3 | | 20 | CIC U Nantes | " |
| 4 | | 22 | Team Novo Nordisk | " |
| 5 | | 21 | Euskaltel - Euskadi | " |
| 6 | | 21 | Team Flanders - Baloise | " |
| 7 | | 21 | Cofidis | " |
| 8 | | 20 | Decathlon - AG2R La Mondiale | " |
| 9 | | 19 | Development Team Picnic PostNL | " |
| 10 | | 18 | Development Team Picnic PostNL | " |
| 11 | | 19 | Development Team Picnic PostNL | " |
| 12 | | 22 | Team Polti VisitMalta | " |
| 13 | | 20 | Development Team Picnic PostNL | + 23 |
| 14 | | 18 | Decathlon - AG2R La Mondiale | + 24 |
| 15 | | 19 | Team Flanders - Baloise | " |
| 16 | | 21 | Team Novo Nordisk | " |
| 17 | | 19 | Development Team Picnic PostNL | + 41 |
| 18 | | 18 | CIC U Nantes | + 57 |
| 19 | | 20 | Arkéa - B&B Hotels | + 01:02 |
| 20 | | 22 | Uno-X Mobility | " |
| 21 | | 20 | Groupama - FDJ | + 01:05 |
| 22 | | 22 | CIC U Nantes | + 03:40 |
| 23 | | 18 | Development Team Picnic PostNL | + 04:48 |
| 24 | | 21 | Euskaltel - Euskadi | + 04:53 |
| 25 | | 19 | Nice Métropole Côte d'Azur | " |
| 26 | | 21 | Alpecin - Deceuninck | " |
| 27 | | 18 | Nice Métropole Côte d'Azur | + 07:08 |
| 28 | | 19 | Decathlon - AG2R La Mondiale | + 09:28 |
| 29 | | 20 | CIC U Nantes | + 13:03 |