Ballerini finiszował najszybciej na mecie w Krakowie, gdzie na Alei Focha kończył się 77. Tour de Pologne. Włoch podążał jak cień za rozpędzonym Pascalem Ackermannem (Bora-hansgrohe), a w ostatniej chwili wyszedł z koła Niemca i o długość roweru wyprzedził rywala na kresce. Na trzecim miejscu finiszował Alberto Dainese (Team Sunweb), a 9. był Szymon Sajnok (CCC Team).
Ostatni etap tegorocznego wyścigu, choć startował z Zakopanego i po drodze mijał kilka podjazdów – między innymi pod Ząb czy Krowiarki – to jednak kończył się po wielu kilometrach zjazdów i płaskiego terenu, stąd też zwycięzcy należało upatrywać wśród sprinterów.
Nie zniechęciło to uciekinierów, którzy – jak co dzień – próbowali sił w ucieczce na 188 kilometrowym etapie. Luke Rowe (Team Ineos), Geoffrey Bouchard (Ag2R La Mondiale), Hugo Houle (Astana) i James Whelan (EF Pro Cycling) odjechali niedługo po starcie, a po pościgu dołączył do nich Przemysław Kasperkiewicz (Reprezentacja Polski). W takim składzie pokonali podjazdy pod Krowiarki oraz Górę Makowską, gdzie komplet punktów zgarnął Kasperkiewicz, ale im bliżej mety było, tym ich przewaga była coraz mniejsza.
Kolarze Movistar, Bahrain-McLaren, Bora-hansgrohe czy Trek-Segafredo wysłali swoich pomocników na czoło peletonu na ulicach Krakowa, gdy do mety pozostało już niespełna 5 kilometrów, a ostatni uciekinierzy zostali doścignięci. Sam finisz był jednak dość chaotyczny, a żadna z ekip nie zdominowała sprintu, choć kolarze Trek-Segafredo bardzo dobrze ustawieni na finiszu. Mimo to każdy z kolarzy walczył praktycznie sam.
Bardzo dobrze ustawiony był Pascal Ackermann (Bora-hansgrohe), ale jak cień za nim ustawił się i podążał Davide Ballerini (Deceuninck-Quick Step). Włoch długo jechał za rywalem, a gdy tylko zobaczył lukę, na 200 metrów przed metą ruszył do przodu, wyszedł na prowadzenie i już go nie oddał, pewnie wygrywając sprinterski pojedynek.
Chwilę potem odbierał gratulację od swojego kolegi z ekipy, Remco Evenepoela, który z dużą przewagą triumfował w klasyfikacji generalnej. Nad Jakobem Fuglsangiem (Astana) Belg wypracował sobie 1.52 przewagi, natomiast nad Simonem Yatesem (Mitchelton-Scott), już 2.28.Czwarte miejsce w tabeli wywalczył Rafał Majka (Bora-hansgrohe), a szósty był Kamil Małecki (CCC Team).
W klasyfikacji górskiej triumfował Patryk Stosz (Reprezentacja Polski), a tuż za nim uplasował się Kamil Gradek (CCC Team). Najaktywniejszym kolarzem został Maciej Paterski (Reprezentacja Polski), a Luka Mezgec (Mitchelton-Scott), był najlepszym sprinterem.
Wyniki 5. etapu:
Klasyfikacja generalna po 5. etapie: