Spanish champions Barcelona slipped up in a 1-1 draw at Rayo Vallecano on Saturday in La Liga, continuing a worrying run of underwhelming performances.
Surprise leaders Girona and Real Madrid in second now have the chance to extend their lead on the Catalans, fourth, over the next two days.
Antoine Griezmann's header earned Atletico Madrid a 1-0 win over Real Mallorca later Saturday to take the Rojiblancos third, above Barcelona on goal difference, having played a game fewer.
Unai Lopez drove Rayo ahead from long range in the first half but Barca levelled through Florian Lejeune's own goal in the 82nd minute.
The draw adds to the doubts around Barcelona, who have not been at their best for several weeks and face Porto on Tuesday seeking Champions League knock-out round qualification.
"I think it was a game of two halves, in the first we dominated but we weren't aggressive enough to cause damage," said Xavi.
"In the second we were, we scored a goal and could have had others ... we need to win these games if we want to win the league.
"We have to be self-critical, it's costing us too much this season giving things away... in modern football a lot changes when they score against you."
Inaki Pena started in goal for Barca with Marc-Andre ter Stegen out with a back problem, while Xavi turned to the fit-again Frenkie de Jong to replace the injured Gavi in midfield.
The 19-year-old's cruciate ligament tear will keep him out for the season, with Barcelona losing a player the coach has described as the "soul" of the team.
Barcelona players wore shirts before kick-off with his name on the back, and a message saying "we are with you, Gavi".
Hosts Rayo started well, encouraged by having beaten Barca on three of their four previous clashes, including twice at their ramshackle Vallecas stadium.
They took the lead after 39 minutes when Lopez hammered a superb effort into the bottom right corner from around 30 yards out after the ball was cleared into his path.
- Lack of intensity -
Xavi said Barca would miss Gavi's "intensity, heart and courage" against Francisco Rodriguez's side and he was proven right, although they improved a little after the break.
Ferran Torres and Pedri came close for Barca before Raphinha's raking effort hit the post and Rayo hacked Robert Lewandowski's attempted finish from the rebound off the line.
Eventually the Catalans levelled with eight minutes remaining when Lejeune diverted Balde's cross into his own net, under pressure from Lewandowski.
"We didn't play well, we weren't at the level that we can be," De Jong told DAZN.
"We have to work to improve -- the plan is good, we are confident, everyone ran as much as they could.
"I think that we weren't good in possession."
Barcelona now have failed to beat Rayo in five matches and could fall six points behind Girona if their neighbours beat Athletic Bilbao on Monday at Montilivi.
Real Madrid, two points clear of Barca, visit Cadiz on Sunday, currently one point ahead of Atletico.
Griezmann's superb header after 64 minutes earned his team victory, although visitors Mallorca spurned some good openings in the final stages.
Atletico midfielder Koke, the club's record appearance maker, hit a milestone of 600 games for the club.
"The match was very hard for us, Mallorca played a very serious game," Koke told Movistar.
"600 games is an extraordinary number," added Atletico coach Diego Simeone.
"Nobody has given him anything for free, and we have shared a lot (of memories here)."
The goal was Griezmann's 301st in his career and he is rapidly closing in on Luis Aragones' club record of 173 -- the French forward has 170 for Atletico.
"(Griezmann) will be living history at Atletico Madrid, he will surpass Luis Aragones," added Koke.
Atletico visit Feyenoord in the Champions League on Tuesday night, knowing they can reach the last 16 with a victory.
Mallorca, 17th, are one point clear of the relegation zone but have played one fewer match than the three teams below them.
Winless bottom-of-the-table Almeria lost 2-1 at Getafe, while Valencia and Celta Vigo, 18th, shared a goalless draw.