O ciclista dinamarquês Kasper Asgreen (Deceuninck-Quick Step) foi o grande vencedor da 4ª e penúltima Etapa da 47ª edição da Volta ao Algarve, um CRI de 20,3 quilômetros com partida e chegada na cidade da Lagoa.

Asgreen fez o tempo de 23 minutos e 42 segundos. Em segundo e terceiro, com 3 e 9 segundos, respetivamente, o português Rafael Reis (Efapel) e o francês Benjamin Thomas (Groupama-FDJ) .

Ethan Hayter (Ineos Grenadiers), portador da camisa amarela desde que venceu na segunda etapa, sofreu uma forte queda, o que resultou em uma perda significativa de tempo. O britânico conseguiu salvar a liderança só por 12 segundos para o português João Rodrigues .

Vídeo de resumo da Etapa:
A Volta ao algarve terminará neste domingo com a disputa da quinta etapa, com um perfil de montanha e 170,1 quilômetros com saída na cidade de Albufeira até ao Alto do Malhão.

Top 30 da Etapa:
| Pos. | Atleta Nome (País) Equipa | resultado |
|---|---|---|
| 1 | Kasper Asgreen (Den) Deceuninck-QuickStep | 0:23:52 |
| 2 | Rafael Reis (Por) Efapel | 0:00:03 |
| 3 | Benjamin Thomas (Fra) Groupama-FDJ | 0:00:09 |
| 4 | Thibault Guernalec (Fra) Equipe Arkea-Samsic | 0:00:19 |
| 5 | Nils Politt (Ger) Bora-Hansgrohe | 0:00:28 |
| 6 | Ivo Oliveira (Por) Emirados Árabes Unidos | 0:00:37 |
| 7 | Ryan Gibbons (RSA) Emirados Árabes Unidos | 0:00:52 |
| 8 | Diego Lopez Fuentes (Spa) Equipo Kern Pharma | 0:00:53 |
| 9 | Ethan Hayter (GBr) Ineos Grenadiers | 0:01:02 |
| 10 | Carlos Rodriguez Cano (Spa) Ineos Grenadiers | 0:01:13 |
| 11 | João Rodrigues (Por) W52/FC Porto | 0:01:14 |
| 12 | Clément Davy (Fra) Groupama-FDJ | 0:01:16 |
| 13 | Alexys Brunel (Fra) Groupama-FDJ | |
| 14 | Maxime Bouet (Fra) Equipe Arkea-Samsic | 0:01:18 |
| 15 | Xabier Mikel Azparren Irurzun (Spa) Euskaltel-Euskadi | 0:01:23 |
| 16 | Daniel Mestre (Por) W52/FC Porto | |
| 17 | Matis Louvel (Fra) Equipe Arkea-Samsic | 0:01:24 |
| 18 | Joey Rosskopf (EUA) Ciclismo de Rally | 0:01:27 |
| 19 | Lennard Kämna (Ger) Bora-Hansgrohe | 0:01:28 |
| 20 | Pascal Ackermann (Ger) Bora-Hansgrohe | 0:01:30 |
| 21 | Jesus Ezquerra Muela (Spa) Burgos-BH | |
| 22 | Ricardo Mestre (Por) W52/FC Porto | |
| 23 | Jarrad Drizners (Aus) Hagens Berman Axeon | 0:01:32 |
| 24 | Danny van der Tuuk (Ned) Equipo Kern Pharma | 0:01:39 |
| 25 | Oliver Naesen (Bel) AG2R Citroën Team | 0:01:40 |
| 26 | Maurits Lammertink (Ned) Intermarché-Wanty-Gobert Matériaux | 0:01:44 |
| 27 | Jonathan Lastra Martinez (Spa) Caja Rural-Seguros RGA | |
| 28 | Vegard Stake Laengen (Nor) Emirados Árabes Unidos | 0:01:45 |
| 29 | Gijs Van Hoecke (Bel) AG2R Citroën Team | 0:01:46 |
| 30 | Olivier Le Gac (Fra) Groupama-FDJ | 0:01:47 |
Geral após a 4ª Etapa:
| pdv. | Rider Name (País) Equipe | resultado |
|---|---|---|
| 1 | Ethan Hayter (GBr) Ineos Grenadiers | 14:53:34 |
| 2 | João Rodrigues (Por) W52/FC Porto | 0:00:12 |
| 3 | Kasper Asgreen (Den) Deceuninck-QuickStep | 0:00:21 |
| 4 | Thibault Guernalec (Fra) Equipe Arkea-Samsic | 0:00:22 |
| 5 | Jonathan Lastra Martinez (Spa) Caja Rural-Seguros RGA | 0:00:42 |
| 6 | Maxime Bouet (Fra) Equipe Arkea-Samsic | 0:00:53 |
| 7 | Elie Gesbert (Fra) Equipe Arkea-Samsic | 0:00:56 |
| 8 | Sebastian Henao Gomez (Col) Ineos Grenadiers | 0:01:18 |
| 9 | Sean Quinn (EUA) Hagens Berman Axeon | 0:01:37 |
| 10 | Daniel Navarro Garcia (Spa) Burgos-BH | 0:01:43 |
| 11 | Jóni Brandão (Por) W52/FC Porto | |
| 12 | Olivier Le Gac (Fra) Groupama-FDJ | 0:01:50 |
| 13 | Delio Fernandez Cruz (Spa) Delko | 0:01:57 |
| 14 | Amaro Antunes (Por) W52/FC Porto | 0:01:58 |
| 15 | Joey Rosskopf (EUA) Ciclismo de Rally | 0:02:09 |
| 16 | Nicolas Prodhomme (Fra) AG2R Citroën Team | |
| 17 | Alejandro Marque Porto (Spa) Atum General/Tavira/Maria Nova Hotel | |
| 18 | Cristão Estranho Eiking (Nor) Intermarché-Wanty-Gobert Matériaux | 0:02:13 |
| 19 | Ivan Ramiro Sosa Cuervo (Col) Ineos Grenadiers | 0:02:14 |
| 20 | Marti Marquez Roman (Spa) Equipo Kern Pharma | 0:02:15 |
| 21 | Joaquim Silva (Por) Tavfer-Measindot-Mortágua | 0:02:28 |
| 22 | Georg Zimmermann (Ger) Intermarché-Wanty-Gobert Matériaux | |
| 23 | Luís Fernandes (Por) Rádio Popular-Boavista | 0:02:32 |
| 24 | Oliver Naesen (Bel) AG2R Citroën Team | |
| 25 | Matthew Riccitello (EUA) Hagens Berman Axeon | 0:02:53 |
| 26 | Vicente Garcia De Mateos Rubio (Spa) Antarte-Feirense | 0:03:02 |
| 27 | César Fonte (Por) Kelly-Simoldes-UDO | |
| 28 | Ivan Moreno Sanchez (Spa) Equipo Kern Pharma | 0:03:04 |
| 29 | José Manuel Diaz Gallego (Spa) Delko | 0:03:07 |
| 30 | Diego Rosa (Ita) Equipe Arkea-Samsic | 0:03:20 |
| 31 | Joan Bou Company (Spa) Euskaltel-Euskadi | 0:03:24 |
| 32 | José Fernandes (Por) W52/FC Porto | 0:03:28 |
| 33 | Emanuel Duarte (Por) Atum General/Tavira/Maria Nova Hotel | 0:03:33 |
| 34 | Pedro Andrade (Por) Hagens Berman Axeon | 0:04:03 |
| 35 | Jesus Ezquerra Muela (Spa) Burgos-BH | |
| 36 | Sergio Roman Martin Galan (Spa) Caja Rural-Seguros RGA | 0:04:17 |
| 37 | Luís Gomes (Por) Kelly-Simoldes-UDO | 0:04:21 |
| 38 | Ryan Gibbons (RSA) UAE Team Emirates | 0:04:26 |
| 39 | Gonçalo Amado (Por) Antarte-Feirense | 0:04:38 |
| 40 | Maurits Lammertink (Ned) Intermarché-Wanty-Gobert Matériaux | 0:04:45 |
| 41 | Carlos Rodriguez Cano (Spa) Ineos Grenadiers | 0:04:57 |
| 42 | Hugo Nunes (Por) Radio Popular-Boavista | 0:05:12 |
| 43 | Cesar Nicolas Paredes Avellaneda (Col) Louletano-Loulé Concelho | 0:05:34 |
| 44 | Alberto Gallego Ruiz (Spa) Radio Popular-Boavista | 0:05:38 |
| 45 | Nils Politt (Ger) Bora-Hansgrohe | 0:05:49 |
| 46 | João Benta (Por) Radio Popular-Boavista | 0:06:07 |
| 47 | Gaspar Gonçalves (Por) Tavfer-Measindot-Mortágua | 0:06:50 |
| 48 | Pedro Lopes (Por) Kelly-Simoldes-UDO | 0:06:57 |
| 49 | Dimitri Peyskens (Bel) Bingoal Pauwels Sauzen WB | 0:07:32 |
| 50 | Remy Mertz (Bel) Bingoal Pauwels Sauzen WB | 0:07:52 |
| 51 | Keegan Swirbul (USA) Rally Cycling | 0:08:14 |
| 52 | Diego Lopez Fuentes (Spa) Equipo Kern Pharma | 0:09:07 |
| 53 | Rafael Reis (Por) Efapel | 0:09:09 |
| 54 | Lennard Kämna (Ger) Bora-Hansgrohe | 0:09:42 |
| 55 | Mathijs Paasschens (Ned) Bingoal Pauwels Sauzen WB | 0:10:29 |
| 56 | Jonas Koch (Ger) Intermarché-Wanty-Gobert Matériaux | 0:10:30 |
| 57 | Javier Moreno Bazan (Spa) Efapel | 0:10:36 |
| 58 | Ricardo Mestre (Por) W52/FC Porto | 0:10:47 |
| 59 | Aritz Bagües Kalparsoro (Spa) Caja Rural-Seguros RGA | 0:11:02 |
| 60 | Leonardo Basso (Ita) Ineos Grenadiers | 0:11:09 |
| 61 | Nuno Meireles (Por) Louletano-Loulé Concelho | 0:11:13 |
| 62 | Daniel Mestre (Por) W52/FC Porto | 0:11:24 |
| 63 | Rui Oliveira (Por) UAE Team Emirates | 0:11:31 |
| 64 | Jarrad Drizners (Aus) Hagens Berman Axeon | 0:11:33 |
| 65 | Daniel Freitas (Por) Radio Popular-Boavista | 0:11:53 |
| 66 | João Medeiros (Por) L.A. Alumínios/L.A. Sport | 0:11:56 |
| 67 | Diogo Barbosa (Por) Hagens Berman Axeon | |
| 68 | Kyle Murphy (USA) Rally Cycling | 0:12:03 |
| 69 | Samuel Caldeira (Por) W52/FC Porto | 0:12:44 |
| 70 | Henrique Casimiro (Por) Kelly-Simoldes-UDO | 0:12:49 |
| 71 | Rafael Silva (Por) Antarte-Feirense | 0:13:14 |
| 72 | Jesus Del Pino Corrochano (Spa) Louletano-Loulé Concelho | 0:13:38 |
| 73 | António Ferreira (Por) Antarte-Feirense | 0:13:40 |
| 74 | Afonso Silva (Por) Radio Popular-Boavista | 0:13:56 |
| 75 | Matis Louvel (Fra) Team Arkea-Samsic | 0:14:06 |
| 76 | Carlos Canal Blanco (Spa) Burgos-BH | 0:14:18 |
| 77 | Nathan Brown (USA) Rally Cycling | 0:14:32 |
| 78 | João Macedo (Por) L.A. Alumínios/L.A. Sport | 0:14:33 |
| 79 | Boy van Poppel (Ned) Intermarché-Wanty-Gobert Matériaux | 0:14:36 |
| 80 | André Ramalho (Por) L.A. Alumínios/L.A. Sport | 0:14:38 |
| 81 | Mauro Finetto (Ita) Delko | 0:15:15 |
| 82 | Baptiste Planckaert (Bel) Intermarché-Wanty-Gobert Matériaux | 0:15:19 |
| 83 | Karel Hnik (Cze) Efapel | 0:15:49 |
| 84 | Damien Touze (Fra) AG2R Citroën Team | 0:16:23 |
| 85 | Aleksandr Grigorev (Rus) Atum General/Tavira/Maria Nova Hotel | 0:16:47 |
| 86 | Anthony Jullien (Fra) AG2R Citroën Team | 0:16:48 |
| 87 | Venceslau Fernandes (Por) Antarte-Feirense | 0:17:04 |
| 88 | Jelle Vanendert (Bel) Bingoal Pauwels Sauzen WB | 0:17:14 |
| 89 | Alessandro Fedeli (Ita) Delko | 0:17:38 |
| 90 | David De La Fuente Rasilla (Spa) Louletano-Loulé Concelho | 0:17:42 |
| 91 | Ivo Oliveira (Por) Emirados Árabes Unidos | 0:17:49 |
| 92 | Michael Garrison (EUA) Hagens Berman Axeon | 0:18:07 |
| 93 | Danny van der Tuuk (Ned) Equipo Kern Pharma | 0:18:32 |
| 94 | Carlos Oyarzún (Chi) Louletano-Loulé Concelho | 0:18:37 |
| 95 | Marijn van den Berg (Ned) Groupama-FDJ | 0:18:39 |
| 96 | Vegard Stake Laengen (Nor) Emirados Árabes Unidos | 0:18:42 |
| 97 | Gijs Van Hoecke (Bel) AG2R Citroën Team | 0:18:43 |
| 98 | Pascal Ackermann (Ger) Bora-Hansgrohe | 0:18:44 |
| 99 | Kévin Geniets (Lux) Groupama-FDJ | 0:18:48 |
| 100 | Alexys Brunel (Fra) Groupama-FDJ | |
| 101 | Michael Schwarzmann (Ger) Bora-Hansgrohe | 0:18:55 |
| 102 | Michael Mørkøv (Den) Deceuninck-QuickStep | 0:18:57 |
| 103 | Julen Irizar Laskurain (Spa) Euskaltel-Euskadi | 0:19:20 |
| 104 | Emerson Oronte (EUA) Ciclismo de Rally | |
| 105 | Sam Bennett (Irl) Deceuninck-QuickStep | 0:19:27 |
| 106 | Gavin Mannion (EUA) Ciclismo de Rally | 0:19:31 |
| 108 | Jetse Bol (Ned) Burgos-BH | 0:19:47 |
| 109 | Jon Aberasturi Izaga (Spa) Caja Rural-Seguros RGA | 0:20:02 |
| 110 | David Gonzalez Lopez (Spa) Caja Rural-Seguros RGA | 0:20:13 |
| 111 | Stanislaw Aniolkowski (Pol) Bingoal Pauwels Sauzen WB | 0:20:17 |
| 112 | Pedro Pinto (Por) Tavfer-Measindot-Mortágua | 0:20:29 |
| 113 | Cameron Wurf (Aus) Ineos Grenadiers | |
| 114 | Milan Menten (Bel) Bingoal Pauwels Sauzen WB | 0:20:42 |
| 115 | César Martingil (Por) Atum General/Tavira/Maria Nova Hotel | 0:21:08 |
| 116 | Brandon Rivera Vargas (Coronel) Ineos Grenadiers | 0:21:13 |
| 117 | José Sousa (Por) Kelly-Simoldes-UDO | 0:21:25 |
| 118 | Rafael Lourenço (Por) Atum General/Tavira/Maria Nova Hotel | 0:21:27 |
| 119 | Álvaro Trueba Diego (Spa) Atum General/Tavira/Maria Nova Hotel | 0:21:31 |
| 120 | Pedro Silva (Por) Rádio Popular-Boavista | 0:21:34 |
| 121 | Bruno Silva (Por) Antarte-Feirense | 0:21:37 |
| 122 | Kenny Molly (Bel) Bingoal Pauwels Sauzen WB | 0:21:46 |
| 123 | Carlos Salgueiro (Por) L.A. Alumínios/L.A. Sport | 0:21:49 |
| 124 | Leangel Ruben Linarez Meneses (Ven) Tavfer-Measindot-Mortágua | 0:21:56 |
| 125 | Hélder Gonçalves (Por) Kelly-Simoldes-UDO | 0:22:19 |
| 126 | Gustavo Cesar Veloso (Spa) Atum General/Tavira/Maria Nova Hotel | 0:22:26 |
| 127 | William Bonnet (Fra) Groupama-FDJ | 0:22:28 |
| 128 | Colin Joyce (EUA) Ciclismo de Rally | |
| 129 | Fábio Oliveira (Por) Antarte-Feirense | 0:22:36 |
| 130 | Martin Laas (Est) Bora-Hansgrohe | 0:23:23 |
| 131 | Clément Carisey (Fra) Delko | 0:23:55 |
| 132 | Fábio Costa (Por) Efapel | 0:24:12 |
| 133 | Peio Goikoetxea Goiogana (Spa) Euskaltel-Euskadi | 0:24:13 |
| 134 | Hector Saez Benito (Spa) Caja Rural-Seguros RGA | 0:24:19 |
| 135 | Benjamin Thomas (Fra) Groupama-FDJ | |
| 136 | Eduard-Michael Grosu (Rom) Delko | 0:24:29 |
| 137 | Christophe Noppe (Bel) Equipe Arkea-Samsic | 0:24:31 |
| 138 | Marcelo Salvador (Por) L.A. Alumínios/L.A. Sport | 0:24:32 |
| 139 | Willem Jakobus Smit (RSA) Burgos-BH | 0:25:23 |
| 140 | Jon Irisarri Ricon (Spa) Caja Rural-Seguros RGA | 0:25:39 |
| 141 | Bert Van Lerberghe (Bel) Deceuninck-QuickStep | 0:25:42 |
| 142 | Oliviero Troia (Ita) Emirados Árabes Unidos | 0:25:58 |
| 143 | Iúri Leitão (Por) Tavfer-Measindot-Mortágua | 0:26:07 |
| 144 | Clément Davy (Fra) Groupama-FDJ | 0:26:46 |
| 145 | Rui Rodrigues (Por) Louletano-Loulé Concelho | 0:27:06 |
| 146 | Enrique Sanz Unzue (Spa) Equipo Kern Pharma | 0:27:09 |
| 147 | Andreas Schillinger (Ger) Bora-Hansgrohe | 0:27:25 |
| 148 | Shane Archbold (NZl) Deceuninck-QuickStep | 0:28:13 |
| 149 | Vojtech Repa (Cze) Equipo Kern Pharma | 0:28:46 |
| 150 | André Domingues (Por) Efapel | 0:29:18 |
| 151 | Xabier Mikel Azparren Irurzun (Spa) Euskaltel-Euskadi | 0:29:49 |
| 152 | Mikel Alonso Flores (Spa) Euskaltel-Euskadi | 0:30:06 |
| 153 | Evaldas Siskevicius (Ltu) Delko | |
| 154 | Rüdiger Selig (Ger) Bora-Hansgrohe | 0:30:30 |
| 155 | Tomas Contte (Arg) Louletano-Loulé Concelho | 0:30:35 |
| 156 | Marvin Scheulen (Por) L.A. Alumínios/L.A. Sport | 0:31:12 |
| 157 | Gabriel Muller (Fra) Burgos-BH | 0:31:13 |
| 158 | Pedro Paulinho (Por) Tavfer-Measindot-Mortágua | 0:31:27 |
| 159 | Dzmitry Zhyhunou (Blr) Euskaltel-Euskadi | 0:31:37 |
| 160 | João Salgado (Por) Kelly-Simoldes-UDO | 0:32:20 |
| 161 | Fabio Jakobsen (Ned) Deceuninck-QuickStep | 0:32:27 |
| 162 | Mikel Aristi Gardoki (Spa) Euskaltel-Euskadi | 0:34:03 |
| 164 | Julien Duval (Fra) AG2R Citroën Team | 0:40:38 |







