| # | Rider | Team | Time | Gap |
|---|---|---|---|---|
| 1 | Arnaud de Lie | Lotto Dstny | 03:53:25 | |
| 2 | Valentin Ferron | TotalEnergies | + 00 | |
| 3 | Jordan Jegat | CIC U Nantes Atlantique | + 00 | |
| 4 | Paul Lapeira | AG2R Citroën Team | + 00 | |
| 5 | Clément Venturini | AG2R Citroën Team | + 00 | |
| 6 | Hugo Page | Intermarché-Circus-Wanty | + 00 | |
| 7 | Hugo Hofstetter | Team Arkéa-Samsic | + 00 | |
| 8 | Alexandre Delettre | Cofidis | + 00 | |
| 9 | Paul Penhoët | Groupama-FDJ | + 00 | |
| 10 | Giacomo Nizzolo | Israel-Premier Tech | + 00 | |
| 11 | Guillaume Martin | Cofidis | + 00 | |
| 12 | Lennert Teugels | Bingoal WB | + 00 | |
| 13 | Romain Cardis | Saint Michel-Mavic-Auber 93 | + 00 | |
| 14 | Julien Simon | TotalEnergies | + 00 | |
| 15 | Marco Tizza | Bingoal WB | + 00 | |
| 16 | Jonathan Lastra | Cofidis | + 00 | |
| 17 | Maxime Jarnet | Van Rysel-Roubaix Lille Métropole | + 00 | |
| 18 | Harry Birchill | Saint Piran | + 00 | |
| 19 | Giovanni Lonardi | EOLO-Kometa Cycling Team | + 00 | |
| 20 | Emmanuel Morin | CIC U Nantes Atlantique | + 00 | |
| 21 | Yaël Joalland | CIC U Nantes Atlantique | + 00 | |
| 22 | Tom van Asbroeck | Israel-Premier Tech | + 00 | |
| 23 | Aimé de Gendt | Intermarché-Circus-Wanty | + 00 | |
| 24 | Mattéo Vercher | TotalEnergies | + 09 | + 09 |
| 25 | Luca Mozzato | Team Arkéa-Samsic | + 09 | + 09 |
| 26 | Anthony Delaplace | Team Arkéa-Samsic | + 13 | + 13 |
| 27 | Laurence Pithie | Groupama-FDJ | + 21 | + 21 |
| 28 | Cédric Beullens | Lotto Dstny | + 21 | + 21 |
| 29 | Matis Louvel | Team Arkéa-Samsic | + 21 | + 21 |
| 30 | Lorenzo Rota | Intermarché-Circus-Wanty | + 22 | + 22 |
| 31 | Antoine Raugel | AG2R Citroën Team | + 39 | + 39 |
| 32 | Bastien Tronchon | AG2R Citroën Team | + 01:06 | + 01:06 |
| 33 | Remy Mertz | Bingoal WB | + 01:14 | + 01:14 |
| 34 | Bram Welten | Groupama-FDJ | + 01:24 | + 01:24 |
| 35 | Laurent Pichon | Team Arkéa-Samsic | + 01:43 | + 01:43 |
| 36 | Finn Crockett | Saint Piran | + 02:11 | + 02:11 |
| 37 | Zeb Kyffin | Saint Piran | + 02:11 | + 02:11 |
| 38 | Ryan Christensen | Bolton Equities Black Spoke | + 02:11 | + 02:11 |
| 39 | Simone Petilli | Intermarché-Circus-Wanty | + 02:11 | + 02:11 |
| 40 | Colin Savioz | Groupama-FDJ | + 02:11 | + 02:11 |
| 41 | Jérémy Leveau | Van Rysel-Roubaix Lille Métropole | + 02:11 | + 02:11 |
| 42 | Samuel Leroux | Van Rysel-Roubaix Lille Métropole | + 02:11 | + 02:11 |
| 43 | Adam Lewis | Saint Piran | + 02:11 | + 02:11 |
| 44 | Flavien Maurelet | Saint Michel-Mavic-Auber 93 | + 02:11 | + 02:11 |
| 45 | Jens Reynders | Israel-Premier Tech | + 02:11 | + 02:11 |
| 46 | Andrea Pietrobon | EOLO-Kometa Cycling Team | + 02:11 | + 02:11 |
| 47 | Théo Delacroix | Saint Michel-Mavic-Auber 93 | + 02:11 | + 02:11 |
| 48 | Taj Jones | Israel-Premier Tech | + 02:11 | + 02:11 |
| 49 | Louka Matthys | Bingoal WB | + 02:11 | + 02:11 |
| 50 | Mirco Maestri | EOLO-Kometa Cycling Team | + 02:11 | + 02:11 |
| 51 | Davide Bais | EOLO-Kometa Cycling Team | + 02:11 | + 02:11 |
| 52 | Tom Paquot | Intermarché-Circus-Wanty | + 02:11 | + 02:11 |
| 53 | Robin Plamondon | CIC U Nantes Atlantique | + 02:11 | + 02:11 |
| 54 | Joris Delbove | Saint Michel-Mavic-Auber 93 | + 02:11 | + 02:11 |
| 55 | Eddy Finé | Cofidis | + 02:11 | + 02:11 |
| 56 | Lucas Bénéteau | Saint Michel-Mavic-Auber 93 | + 02:11 | + 02:11 |
| 57 | Hugo Toumire | Cofidis | + 02:11 | + 02:11 |
| 58 | Mikaël Chérel | AG2R Citroën Team | + 02:11 | + 02:11 |
| 59 | Thomas Gachignard | Saint Michel-Mavic-Auber 93 | + 02:11 | + 02:11 |
| 60 | Emilien Jeannière | TotalEnergies | + 02:11 | + 02:11 |
| 61 | Fabien Grellier | TotalEnergies | + 02:11 | + 02:11 |
| 62 | Alexis Guérin | Bingoal WB | + 02:11 | + 02:11 |
| 63 | Matthieu Ladagnous | Groupama-FDJ | + 02:11 | + 02:11 |
| 64 | Jonathan Couanon | Nice Métropole Côte d'Azur | + 02:11 | + 02:11 |
| 65 | Johan Meens | Bingoal WB | + 02:11 | + 02:11 |
| 66 | Jean-louis Le Ny | Nice Métropole Côte d'Azur | + 02:11 | + 02:11 |
| 67 | Axel Narbonne-zuccarelli | Nice Métropole Côte d'Azur | + 02:11 | + 02:11 |
| 68 | Maxime Urruty | Nice Métropole Côte d'Azur | + 02:11 | + 02:11 |
| 69 | Nacer Bouhanni | Team Arkéa-Samsic | + 04:11 | + 04:11 |
| 70 | Edouard Bonnefoix | Nice Métropole Côte d'Azur | + 04:18 | + 04:18 |
| 71 | Rick Zabel | Israel-Premier Tech | + 04:18 | + 04:18 |
| 72 | Tom Mainguenaud | Van Rysel-Roubaix Lille Métropole | + 04:18 | + 04:18 |
| 73 | Célestin Guillon | Van Rysel-Roubaix Lille Métropole | + 04:18 | + 04:18 |
| 74 | Kenny Molly | Van Rysel-Roubaix Lille Métropole | + 04:18 | + 04:18 |
| 75 | Francisco Muñoz | EOLO-Kometa Cycling Team | + 04:18 | + 04:18 |
| 76 | Jelle Vermoote | Intermarché-Circus-Wanty | + 04:18 | + 04:18 |
| 77 | Bradley Symonds | Saint Piran | + 04:18 | + 04:18 |
| 78 | Axel Mariault | Cofidis | + 04:18 | + 04:18 |
| 79 | Mads Würtz Schmidt | Israel-Premier Tech | + 04:44 | + 04:44 |
| 80 | Pierre Barbier | CIC U Nantes Atlantique | + 04:44 | + 04:44 |
| 81 | Joris Chaussinand | AG2R Citroën Team | + 04:44 | + 04:44 |
| 82 | Simone Bevilacqua | EOLO-Kometa Cycling Team | + 04:44 | + 04:44 |
| 83 | Itamar Einhorn | Israel-Premier Tech | + 04:44 | + 04:44 |
| 84 | Samuele Rivi | EOLO-Kometa Cycling Team | + 04:44 | + 04:44 |
| 85 | Dimitri Peyskens | Bingoal WB | + 04:44 | + 04:44 |
| 86 | Harry Sweeny | Lotto Dstny | + 05:08 | + 05:08 |
| 87 | Damien Touzé | AG2R Citroën Team | + 05:20 | + 05:20 |
| 88 | Léo Danès | CIC U Nantes Atlantique | + 07:39 | + 07:39 |
| 89 | Joshua Golliker | Groupama-FDJ | + 07:39 | + 07:39 |
| 90 | Clément Davy | Groupama-FDJ | + 07:39 | + 07:39 |
| 91 | Rory Townsend | Bolton Equities Black Spoke | + 07:39 | + 07:39 |
| 92 | Thibault Guernalec | Team Arkéa-Samsic | + 07:39 | + 07:39 |
| 93 | François Bidard | Cofidis | + 08:59 | + 08:59 |