Philipp Walsleben wygrywa z ucieczki 4. etap imprezy rozgrywanej na dalekiej północy Norwegii. Cały wyścig zwyciężył Ben Hermans z Israel Start-Up Nation.
Ostatni etap prowadził z Gratangen do Harstad i liczył 163.5km. Po drodze było do pokonania kilka wzniesień, acz na tyle prostych, że zęby ostrzyć sobie w kontekście wygranej etapowej mogli sprinterzy.

Od startu do przodu ruszyła dziewiątka zawodników, a byli to Erik Nordsaeter Resell (Uno-X Pro Cycling Team), Aimé De Gendt (Intermarché – Wanty – Gobert), Niki Terpstra (Team TotalEnergies), Thomas Champion (Cofidis, Solutions Crédits), kończący karierę wraz z końcem tego sezonu Philipp Walsleben (Alpecin-Fenix), Alexandre Delettre i Eduard-Michael Grosu (obaj DELKO), Ceriel Desal (Bingoal Pauwels Sauces WB) oraz Tore Andre Vabø (Team Coop). Peleton nie dawał im jednak nawet 3 minut przewagi.
W końcówce zaczęło się bardzo dynamiczne ściganie. Niektórzy kolarze próbowali wykorzystać do skoków dosłownie każdy kawałek mocniej nachylonego terenu, w efekcie czego kilka razy oglądaliśmy ataki nie tylko w ucieczce, ale i peletonie. W kontrze znalazł się Torjus Sleen z Uno-X Pro Cycling Team, a najmocniejsi uciekinierzy na 10km przed metą mieli prawie minutę przewagi.
Z przodu pozostawali Erik Nordsaeter Resell, Aimé De Gendt, Niki Terpstra, Philipp Walsleben i Alexandre Delettre, między którymi dość dobrze układała się współpraca. Niestety tempo peletonu było za wysokie i na 6km przed metą mieli oni ledwie 10 sekund. Na czele głównej grupy jechał osobiście w żółtej koszulce Ben Hermans, ale jego zmiana nie była za mocna. To była szansa, którą wykorzystać spróbowali jeszcze Niki Terpstra i Philipp Walsleben ponownie powiększając nieco swoją przewagę.
Na 2km przed metą Niemiec i Holender nadal mieli 20 sekund przewagi i sprzyjał im zarówno teren jak i ogólna nijakość pogoni. Tym samym Philipp Walsleben oszukał peleton i sięgnął po piękną wygraną etapową. Drugie miejsce dla Nikiego Terpstry, a trzecie dla złapanego na kresce Alexandre’a Delettre’a. Wygraną w klasyfikacji generalnej przyklepał Ben Hermans.
Wyniki 4. etapu (niepełne):
| 01 | Philip Walsleben | Alpecin-Fenix | 03:41:40 |
| 02 | Niki Terpstra | Team TotalEnergies | + 00 |
| 03 | Alexandre Delettre | Delko | + 17 |
| 04 | Odd Christian Eiking | Intermarché-Wanty-Gobert | + 17 |
| 05 | Erik Resell | Uno-X Pro Cycling Team | + 19 |
| 06 | Warren Barguil | Arkéa-Samsic | + 19 |
| 07 | Axel Zingle | Cofidis | + 19 |
| 08 | Bryan Coquard | B&B Hotels p/b KTM | + 19 |
| 09 | Victor Lafay | Cofidis | + 19 |
| 10 | Petr Vakoc | Alpecin-Fenix | + 19 |
| 11 | Ben Hermans | Israel Start-Up Nation | + 19 |
| 12 | Markus Hoelgaard | Uno-X Pro Cycling Team | + 19 |
| 13 | Eduard Prades | Delko | + 19 |
| 14 | Samuele Battistella | Astana-Premier Tech | + 19 |
| 15 | Kristian Aasvold | Team Coop | + 19 |
| 16 | Mathieu Burgaudeau | Team TotalEnergies | + 19 |
| 17 | Antonio Angulo | Euskaltel-Euskadi | + 19 |
| 18 | Sven Erik Bystrøm | Norway | + 19 |
| 19 | Luc Wirtgen | Bingoal Pauwels Sauces WB | + 19 |
| 20 | Clément Venturini | AG2R Citroën Team | + 19 |
| 21 | Arjen Livyns | Bingoal Pauwels Sauces WB | + 19 |
| 22 | Edvald Boasson-Hagen | Team TotalEnergies | + 19 |
| 23 | Andreas Leknessund | Norway | + 19 |
| 24 | Arne Marit | Sport Vlaanderen-Baloise | + 19 |
| 25 | Torstein Træen | Uno-X Pro Cycling Team | + 19 |
| 26 | Jacob Eriksson | Team Coop | + 19 |
| 27 | Stefan de Bod | Astana-Premier Tech | + 28 |
| 28 | Pelayo Sanchez Mayo | Burgos-BH | + 28 |
| 29 | Fabio Felline | Astana-Premier Tech | + 28 |
| 30 | Dimitri Claeys | Team Qhubeka NextHash | + 33 |
| 31 | Ben Perry | Astana-Premier Tech | + 35 |
| 32 | Aimé De Gendt | Intermarché-Wanty-Gobert | + 36 |
| 33 | Henok Mulubrhan | Team Qhubeka NextHash | + 38 |
| 34 | Torjus Sleen | Uno-X Pro Cycling Team | + 38 |
| 35 | Dimitri Peyskens | Bingoal Pauwels Sauces WB | + 38 |
| 36 | Laurent Pichon | Arkéa-Samsic | + 38 |
| 37 | Cédric Beullens | Sport Vlaanderen-Baloise | + 41 |
| 38 | Julien Trarieux | Delko | + 43 |
| 39 | Oscar Riesebeek | Alpecin-Fenix | + 50 |
| 40 | Alexander Kristoff | Norway | + 52 |
| 41 | Danny van Poppel | Intermarché-Wanty-Gobert | + 52 |
| 42 | Lawrence Naesen | AG2R Citroën Team | + 54 |
| 43 | Stan Dewulf | AG2R Citroën Team | + 56 |
| 44 | Andre Drege | Norway | + 59 |
| 45 | Remy Mertz | Bingoal Pauwels Sauces WB | + 59 |
| 46 | Alex Colman | Sport Vlaanderen-Baloise | + 01:12 |
| 47 | Tom Van Asbroeck | Israel Start-Up Nation | + 01:12 |
Końcowa klasyfikacja generalna (top10):
| 01 | Ben Hermans | Israel Start-Up Nation | 15:04:02 |
| 02 | Odd Christian Eiking | Intermarché-Wanty-Gobert | + 02 |
| 03 | Victor Lafay | Cofidis | + 06 |
| 04 | Samuele Battistella | Astana-Premier Tech | + 20 |
| 05 | Kristian Aasvold | Team Coop | + 26 |
| 06 | Eduard Prades | Delko | + 29 |
| 07 | Andreas Leknessund | Norway | + 29 |
| 08 | Warren Barguil | Arkéa-Samsic | + 32 |
| 09 | Jacob Eriksson | Team Coop | + 36 |
| 10 | Torstein Træen | Uno-X Pro Cycling Team | + 50 |








