| # | Rider | Team | Time | Gap |
|---|---|---|---|---|
| 1 | Paul Magnier | Soudal Quick-Step | 03:33:29 | |
| 2 | Jordi Meeus | Red Bull-BORA-hansgrohe | + 00 | |
| 3 | Marijn van den Berg | EF Education-EasyPost | + 00 | |
| 4 | Maxim van Gils | Red Bull-BORA-hansgrohe | + 00 | |
| 5 | Timo Kielich | Alpecin-Deceuninck | + 00 | |
| 6 | Sandy Dujardin | Team TotalEnergies | + 00 | |
| 7 | Arnaud de Lie | Lotto | + 02 | + 02 |
| 8 | Jan Tratnik | Red Bull-BORA-hansgrohe | + 02 | + 02 |
| 9 | Axel Laurance | INEOS Grenadiers | + 02 | + 02 |
| 10 | Lukas Kubis | Unibet Tietema Rockets | + 02 | + 02 |
| 11 | Kevin Geniets | Groupama-FDJ | + 02 | + 02 |
| 12 | Kévin Vauquelin | ARKEA-B&B HOTELS | + 02 | + 02 |
| 13 | Pierre Latour | Team TotalEnergies | + 02 | + 02 |
| 14 | Paul Penhoët | Groupama-FDJ | + 02 | + 02 |
| 15 | Valentin Tabellion | Van Rysel-Roubaix | + 02 | + 02 |
| 16 | Vincent van Hemelen | Team Flanders-Baloise | + 05 | + 05 |
| 17 | Rasmus Tiller | Uno-X Mobility | + 06 | + 06 |
| 18 | Magnus Cort | Uno-X Mobility | + 06 | + 06 |
| 19 | Dylan Vandenstorme | Team Flanders-Baloise | + 06 | + 06 |
| 20 | Dylan Teuns | Cofidis | + 06 | + 06 |
| 21 | Nicolas Breuillard | St Michel-Preference Home-Auber 93 | + 06 | + 06 |
| 22 | Julien Bernard | Lidl-Trek | + 06 | + 06 |
| 23 | Jocelyn Baguelin | Wagner Bazin WB | + 06 | + 06 |
| 24 | Alex Colman | Team Flanders-Baloise | + 06 | + 06 |
| 25 | Adrien Maire | Unibet Tietema Rockets | + 06 | + 06 |
| 26 | Elias Maris | Team Flanders-Baloise | + 06 | + 06 |
| 27 | Alex Kirsch | Lidl-Trek | + 10 | + 10 |
| 28 | Benjamin Thomas | Cofidis | + 10 | + 10 |
| 29 | Lionel Taminiaux | Lotto | + 10 | + 10 |
| 30 | Mattia Cattaneo | Soudal Quick-Step | + 10 | + 10 |
| 31 | Filippo Ganna | INEOS Grenadiers | + 10 | + 10 |
| 32 | Clement Izquierdo | Cofidis | + 10 | + 10 |
| 33 | Urko Berrade | Equipo Kern Pharma | + 10 | + 10 |
| 34 | Maxime Jarnet | Van Rysel-Roubaix | + 10 | + 10 |
| 35 | Damien Touzé | Cofidis | + 10 | + 10 |
| 36 | Damien Girard | Nice Métropole Côte d'Azur | + 10 | + 10 |
| 37 | Alexandre Delettre | Team TotalEnergies | + 10 | + 10 |
| 38 | Killian Théot | Van Rysel-Roubaix | + 10 | + 10 |
| 39 | Marco Tizza | Wagner Bazin WB | + 10 | + 10 |
| 40 | Joris Chaussinand | CIC U Nantes | + 10 | + 10 |
| 41 | Alexys Brunel | Team TotalEnergies | + 15 | + 15 |
| 42 | Joshua Tarling | INEOS Grenadiers | + 15 | + 15 |
| 43 | Pau Miquel Delgado | Equipo Kern Pharma | + 15 | + 15 |
| 44 | Sam Maisonobe | Cofidis | + 15 | + 15 |
| 45 | Axel Narbonne-zuccarelli | Nice Métropole Côte d'Azur | + 15 | + 15 |
| 46 | Remi Cavagna | Groupama-FDJ | + 15 | + 15 |
| 47 | Killian Verschuren | Unibet Tietema Rockets | + 15 | + 15 |
| 48 | Ben Turner | INEOS Grenadiers | + 15 | + 15 |
| 49 | Thomas Champion | St Michel-Preference Home-Auber 93 | + 15 | + 15 |
| 50 | Stan van Tricht | Alpecin-Deceuninck | + 15 | + 15 |
| 51 | Ronan Augé | CIC U Nantes | + 15 | + 15 |
| 52 | Baptiste Gillet | ARKEA-B&B HOTELS | + 15 | + 15 |
| 53 | Anthony Perez | Cofidis | + 15 | + 15 |
| 54 | Emil Herzog | Red Bull-BORA-hansgrohe | + 15 | + 15 |
| 55 | Nicolas Prodhomme | Decathlon AG2R La Mondiale Team | + 15 | + 15 |
| 56 | Richard Carapaz | EF Education-EasyPost | + 15 | + 15 |
| 57 | Oliver Knight | Cofidis | + 15 | + 15 |
| 58 | Alexander Hajek | Red Bull-BORA-hansgrohe | + 15 | + 15 |
| 59 | Valentin Retailleau | Team TotalEnergies | + 15 | + 15 |
| 60 | Fabien Doubey | Team TotalEnergies | + 15 | + 15 |
| 61 | Thibault Guernalec | ARKEA-B&B HOTELS | + 15 | + 15 |
| 62 | Jaakko Hänninen | Nice Métropole Côte d'Azur | + 24 | + 24 |
| 63 | Andrea Mifsud | Nice Métropole Côte d'Azur | + 25 | + 25 |
| 64 | Rémi Capron | Van Rysel-Roubaix | + 27 | + 27 |
| 65 | Victor Papon | Wagner Bazin WB | + 28 | + 28 |
| 66 | Yohann Simon | St Michel-Preference Home-Auber 93 | + 28 | + 28 |
| 67 | Juri Hollmann | Alpecin-Deceuninck | + 28 | + 28 |
| 68 | Justin Ducret | CIC U Nantes | + 28 | + 28 |
| 69 | Søjberg Pedersen Rasmus | Decathlon AG2R La Mondiale Team | + 28 | + 28 |
| 70 | Sam Bennett | Decathlon AG2R La Mondiale Team | + 34 | + 34 |
| 71 | Giacomo Villa | Wagner Bazin WB | + 37 | + 37 |
| 72 | Alan Riou | St Michel-Preference Home-Auber 93 | + 39 | + 39 |
| 73 | Francisco Galván | Equipo Kern Pharma | + 42 | + 42 |
| 74 | Ryan Gibbons | Lidl-Trek | + 43 | + 43 |
| 75 | Patrick Frydkjær | Lidl-Trek | + 43 | + 43 |
| 76 | Alexander Konijn | Nice Métropole Côte d'Azur | + 43 | + 43 |
| 77 | Dylan Massa | Nice Métropole Côte d'Azur | + 43 | + 43 |
| 78 | Pierre Thierry | ARKEA-B&B HOTELS | + 43 | + 43 |
| 79 | Romain Cardis | St Michel-Preference Home-Auber 93 | + 43 | + 43 |
| 80 | Jérémy Lecroq | St Michel-Preference Home-Auber 93 | + 43 | + 43 |
| 81 | Gianluca Pollefliet | Decathlon AG2R La Mondiale Team | + 43 | + 43 |
| 82 | Anthony Delaplace | ARKEA-B&B HOTELS | + 43 | + 43 |
| 83 | Arnaud Démare | ARKEA-B&B HOTELS | + 43 | + 43 |
| 84 | Corentin Devroute | CIC U Nantes | + 43 | + 43 |
| 85 | Théo Delacroix | St Michel-Preference Home-Auber 93 | + 48 | + 48 |
| 86 | Kévin Avoine | Van Rysel-Roubaix | + 01:00 | + 01:00 |
| 87 | Tord Gudmestad | Decathlon AG2R La Mondiale Team | + 01:00 | + 01:00 |
| 88 | Victor Vercouillie | Team Flanders-Baloise | + 01:04 | + 01:04 |
| 89 | Célestin Guillon | Van Rysel-Roubaix | + 01:08 | + 01:08 |
| 90 | Baptiste Planckaert | Van Rysel-Roubaix | + 01:08 | + 01:08 |
| 91 | Antoine Hue | CIC U Nantes | + 01:09 | + 01:09 |
| 92 | Maxime Decomble | Groupama-FDJ | + 01:09 | + 01:09 |
| 93 | Hartthijs de Vries | Unibet Tietema Rockets | + 01:09 | + 01:09 |
| 94 | Axandre van Petegem | Wagner Bazin WB | + 01:09 | + 01:09 |
| 95 | Cyril Barthe | Groupama-FDJ | + 01:09 | + 01:09 |
| 96 | Axel Huens | Unibet Tietema Rockets | + 01:09 | + 01:09 |
| 97 | Lennert Belmans | Alpecin-Deceuninck | + 01:09 | + 01:09 |
| 98 | Hugo Aznar | Equipo Kern Pharma | + 01:09 | + 01:09 |
| 99 | Omar Fraile | INEOS Grenadiers | + 01:09 | + 01:09 |
| 100 | Maël Guégan | CIC U Nantes | + 01:09 | + 01:09 |
| 101 | Tomas Kopecky | Unibet Tietema Rockets | + 01:13 | + 01:13 |
| 102 | Harry Sweeny | EF Education-EasyPost | + 01:13 | + 01:13 |
| 103 | Unai Aznar | Equipo Kern Pharma | + 01:13 | + 01:13 |
| 104 | Dries van Gestel | Soudal Quick-Step | + 01:13 | + 01:13 |
| 105 | Yves Lampaert | Soudal Quick-Step | + 01:13 | + 01:13 |
| 106 | Madis Mihkels | EF Education-EasyPost | + 01:13 | + 01:13 |
| 107 | Marc Brustenga | Equipo Kern Pharma | + 01:13 | + 01:13 |
| 108 | Ward Vanhoof | Team Flanders-Baloise | + 01:13 | + 01:13 |
| 109 | Hugh Carthy | EF Education-EasyPost | + 01:13 | + 01:13 |
| 110 | Martin Svrcek | Soudal Quick-Step | + 01:13 | + 01:13 |
| 111 | Lorenz van de Wynkele | Lotto | + 01:13 | + 01:13 |
| 112 | Jonas Gregaard | Lotto | + 01:13 | + 01:13 |
| 113 | Jimmy Janssens | Alpecin-Deceuninck | + 01:13 | + 01:13 |
| 114 | Louis Kitzki | Alpecin-Deceuninck | + 01:13 | + 01:13 |
| 115 | Martin Pedersen | Lidl-Trek | + 01:18 | + 01:18 |
| 116 | Otto Vergaerde | Lidl-Trek | + 01:18 | + 01:18 |
| 117 | Baptiste Veistroffer | Lotto | + 01:18 | + 01:18 |
| 118 | Axel Mariault | CIC U Nantes | + 01:21 | + 01:21 |
| 119 | Grøndahl Jansen Amund | Uno-X Mobility | + 01:22 | + 01:22 |
| 120 | Anders Skaarseth | Uno-X Mobility | + 01:22 | + 01:22 |
| 121 | Erik Resell | Uno-X Mobility | + 01:22 | + 01:22 |
| 122 | Gil Gelders | Soudal Quick-Step | + 01:27 | + 01:27 |
| 123 | Thomas Bonnet | Team TotalEnergies | + 01:35 | + 01:35 |
| 124 | Simon Dehairs | Alpecin-Deceuninck | + 01:40 | + 01:40 |
| 125 | Clément Russo | Groupama-FDJ | + 01:41 | + 01:41 |
| 126 | Jonas Koch | Red Bull-BORA-hansgrohe | + 01:41 | + 01:41 |
| 127 | Salvatore Puccio | INEOS Grenadiers | + 01:43 | + 01:43 |
| 128 | Samuele Battistella | EF Education-EasyPost | + 01:43 | + 01:43 |
| 129 | Mads Pedersen | Lidl-Trek | + 01:43 | + 01:43 |
| 130 | Jarrad Drizners | Lotto | + 01:43 | + 01:43 |
| 131 | Oscar Chamberlain | Decathlon AG2R La Mondiale Team | + 01:43 | + 01:43 |
| 132 | Florian Sénéchal | ARKEA-B&B HOTELS | + 01:43 | + 01:43 |
| 133 | Noah Knecht | Nice Métropole Côte d'Azur | + 01:43 | + 01:43 |
| 134 | Søren Wærenskjold | Uno-X Mobility | + 01:58 | + 01:58 |
| 135 | Hem Hvideberg Jonas | Uno-X Mobility | + 01:58 | + 01:58 |
| 136 | Mikel Retegi | Equipo Kern Pharma | + 02:01 | + 02:01 |
| 137 | Jelle Vermoote | Wagner Bazin WB | + 02:08 | + 02:08 |
| 138 | Olivier Le Gac | Groupama-FDJ | + 02:12 | + 02:12 |
| 139 | Oier Lazkano | Red Bull-BORA-hansgrohe | + 02:25 | + 02:25 |
| 140 | Josef Cerný | Soudal Quick-Step | + 02:25 | + 02:25 |
| 141 | Sébastien Grignard | Lotto | + 02:26 | + 02:26 |
| 142 | Andreas Stokbro Nielsen | Unibet Tietema Rockets | + 02:26 | + 02:26 |
| 143 | Dries de Bondt | Decathlon AG2R La Mondiale Team | + 02:26 | + 02:26 |
| 144 | Artem Shmidt | INEOS Grenadiers | + 02:50 | + 02:50 |
| 145 | Jonas Geens | Team Flanders-Baloise | + 03:05 | + 03:05 |
| 146 | Sasha Weemaes | Wagner Bazin WB | + 03:52 | + 03:52 |