Sergio Canales dented Atletico Madrid’s title hopes as Alvaro Morata lost and failed to score on his debut.
Canales buried a penalty midway through the second half just minutes after Morata should have been awarded a penalty himself.
The Chelsea loanee was brought down by Zouhair Freddal but the referee waved the protests and opted not to use VAR.
Diego Simeone’s side missed the chance to go three points behind leaders Barcelona.
Centre-back Freddal was denied by an excellent save from Jan Oblak in a cagey first half.
Morata had a half chance on the edge of the box moments later but he snatched at his shot and it was easily saved by Pau Lopez.
Antoine Griezmann should have given Diego Simeone’s side the lead just after the interval but he dragged his shot wide despite being in acres of space inside the penalty area.
Morata should have been awarded a penalty when he was brought down by Freddal in the box just before the hour mark but the referee waved away the protests and did not use VAR.
Sergio Canales weaved his way through the Atletico defence but his tame effort was comfortably saved by Oblak.
Morata had another half chance outside the area on the half volley but he sliced the ambitious strike over the cross bar.
Betis were then awarded a penalty as substitute Filipe Luis handled the ball inside the box.
Oblak went the right way but Canales’ strike was too powerful for the Slovenia international.
The visitors responded as talisman Griezmann came close to scoring a wonder goal but his effort crashed the woodwork.
Atletico could not find an equaliser and will be disappointed not to cut the gap at the top.