(CNN) -- Barcelona will have to wait at least one more week to wrap up a fourth La Liga title in five seasons after they could only draw 2-2 against Athletic Bilbao on Saturday.
The Catalans needed to win their match and hope Real Madrid lost their derby game against Atletico to guarantee the title, but neither result transpired -- Real beat their city rivals 2-1 to reduce the arrears to 11 points.
Having been on the receiving end of a Champions League mauling at the hands of Bayern Munich in midweek, Barcelona's weekend got off to an equally dismal start as Bilbao took the lead in the 27th minute when Markel Susaeta scored from close range.
Lionel Messi came off the bench to steer Barca back into the match, levelling the scores with another sublime individual effort in the 67th minute -- his 44th in 33 league games -- before Alexis Sanchez made it 2-1 three minutes later.
Another win seemed assured until the 90th minute when Ander Herrera scored for the home side, guiding the ball past Victor Valdes.
Real also conceded first in the match against their city rivals at the Vicente Calderon -- Radamel Falcao opening the scoring in the fourth minute.
But the lead only lasted nine minutes as defender Juanfran deflected an Angel di Maria free kick into his own net.
Di Maria was on hand again in the second half latching onto to a pass from Karim Benzema in the 62nd minute before firing home the winner past Belgian goalkeeper Thibaut Courtois.
Atletico remain in third, 13 points ahead of fourth-place Real Sociedad who can close the gap if they beat Valencia on Sunday.
In Saturday's other matches, Celta Vigo beat Levante 1-0 while Zaragoza moved off the bottom of the table after beating fellow strugglers Mallorca 3-2.
Meanwhile in Serie A, second-place Napoli reduced the arrears with Juventus to eight points after a 3-0 win at bottom side Pescara.
Udinese's 1-0 win over Cagliari sees them move up to fifth place, four points behind Fiorentina, who travel to Sampdoria on Sunday.
Atalanta and Bologna played out a 1-1 draw.
Leaders Juventus travel to Torino on Sunday while third place AC Milan host Catania.