Barcelona conceded a late equalizer to spoil what would have been another heroic effort by Lionel Messi, with the 2-2 result at Athletic Bilbao on Saturday meaning the leaders must wait another week for a chance to clinch the Spanish league title.
With his team trailing 1-0 and limited in its ability to threaten Bilbao's area, Messi went off the bench in the 59th to transform his side and in 10 minutes the visitors were in front.
Messi began by extending his record run of scoring in 20 straight league appearances when he dribbled through a pack of defenders to level in the 67th.
He then set up forward Alexis Sanchez two minutes later, and Barcelona looked set to collect the three points at San Mames until Bilbao's Ander Herrera pounced on a loose ball to shoot just inside the post in the 90th.
Barcelona can win what would be its 22nd league title in the next round against Real Betis.
"We drew at a difficult ground and the title will come when it does because none of these games are easy," said Barcelona assistant Jordi Roura. "Messi is the best and it makes a difference when he is on the pitch."
Barcelona remained 13 points ahead of Real Madrid after the defending champions continued their dominance over Atletico Madrid by rallying for a 2-1 win at Vicente Calderon Stadium.
Messi started on the bench resting his right hamstring that kept him out of the previous three rounds and with Barcelona hosting Bayern Munich on Wednesday needing to overcome a 4-0 deficit to reach the Champions League final.
"Messi is slowly recovering and we hope to have him back to full strength," Roura said. "The more fit he is, the better chance we have to fight back against Bayern."
Messi had looked sluggish in the thrashing at Bayern last Tuesday, but he was electric in Bilbao after coming off the bench.
His goal took his league-leading total to 44 and was his 58th in all competitions this campaign.
Barcelona started well enough with Alexis hitting the post, but Bilbao's up-tempo attack struck first in the 27th when Aritz Aduriz dribbled by Gerard Pique before putting in a low cross for Markel Susaeta to streak in and poke home at the far post.
Susaeta grazed a second goal in the 56th when he curled a free kick off the corner of the goalframe as Barcelona continued to look pedestrian without its star.
But everything changed when Messi went on. His first touch turned into a gallop down the middle of Bilbao's half and a pass to Pedro Rodriguez, who fired into the arms of goalkeeper Gorka Iraizoz.
Messi, then, apparently decided to just do it all himself.
Messi showed why he's considered to be the best player in the world with a gorgeous goal.
Bilbao looked to have Messi surrounded and safely in check when he received the ball outside the area.
But seven slick touches, three blinding changes of foot, and he was suddenly through four defenders and slotting the ball into the corner of the net with his favourite left boot.
Not done, Messi momentarily put his team on the cusp of the title — still needing Atletico to beat Madrid later — by heading down a cross from Dani Alves to Alexis, who controlled the ball with his chest before turning and rifling it in.
Bilbao, however, didn't despair and a late push paid off when Adriano's clearance of a cross destined for Fernando Llorente fell to Herrera, who drove the ball just beyond the reach of goalie Victor Valdez.
Madrid's win kept it unbeaten against Atletico in 25 straight games dating to 1999 and maintained its psychological advantage over its crosstown rival heading into their clash in the Copa del Rey final on May 17.
Madrid was without top scorer Cristiano Ronaldo healing a muscle injury for Tuesday's Champions League semifinal against Borussia Dortmund when it must overturn a 4-1 loss.
And Atletico couldn't have had a better start with Radamel Falcao scoring four minutes in.
Madrid, however, without sparkling at any stage, still managed to squeak out the win in an effortless fashion.
Atletico defender Juanfran Torres deflected Angel Di Maria's free kick into his own net in the 13th, and Di Maria grabbed the winner from a pass by Karim Benzema in the 63rd.
In its run, Madrid has won 19 and drawn six against the lowly Atletico.
Also, Celta Vigo won 1-0 at Levante to provisionally escape the relegation zone with its first back-to-back victories of the season.