Real Betis's strong run of form continued as they came out on top in a pulsating second half at Getafe.
The two sides exchanged six goals after a stalemate in the first half, and it was Betis who scored the bulk of them to make it 10 points from their last four matches.
The game was goalless until Jorge Molina found the net in the 59th minute, but a deluge followed.
Diego Castro levelled 10 minutes later, but a quickfire double from Benat Etxebarria and Ruben Castro had Betis 3-1 up by the 76th minute.
Pedro Leon pulled one back in the last minute for the hosts, but Salva Sevilla capped it for Betis in injury time.
Getafe had done much of the early running, creating several chances in the second half but efforts from Abdelaziz Barrada and Rafa Lopez were wide of the target, and Betis goalkeeper Adrian San Miguel was untroubled other than a Pedro Leon shot he turned away for a corner in the seventh minute.
The hosts continued to push forward in the second half, creating chances for Diego Castro and Alvaro Vazquez but again failing to trouble the goalkeeper.
And they were made to pay when Molina put Betis in front with their first meaningful attack in the 59th minute, latching on to a pass from Ruben Castro to sweep the ball home.
Getafe responded 10 minutes later, Paco Alcacer's pass leaving Diego Castro with a simple finish.
But Betis did not have to wait long to retake the lead, and after Barrada brought down Juan Carlos outside the area, Etxebarria fired in the free-kick.
Two minutes later, it was 3-1, with Ruben Castro finding the bottom right-hand corner from the edge of the area.
Getafe tried to come back once more, but Alcacer and Adrian Colunga were both wayward with shots before Juan Valera headed over.
They finally got a goal in the 90th minute when Pedro Leon finished from close range, but Betis underlined their superiority in added time with Sevilla sweeping the ball home after Damien Perquis headed the ball on.