Xavi said Barcelona "deserved defeat" as the Spanish leaders suffered only a third loss in La Liga this season, going down 2-1 to Rayo Vallecano at a rowdy Vallecas.
Barca missed a golden chance to capitalise on Real Madrid's 4-2 loss to Girona 24 hours earlier, though Xavi's side remain 11 points clear with seven matches remaining.
In fact, it is Real who may be looking over their shoulders as Atletico Madrid cut the gap on their neighbours to two points with a 3-1 win over Real Mallorca, celebrating their 120th anniversary in style.
Xavi's side have won just one of their last four league matches – a narrow triumph over Atletico on Sunday – as they limp towards the finish line and a first title since 2019.
"The league is not finished, this is the problem – we have to deserve La Liga, today we deserved defeat," Xavi told reporters.
"What annoys me is that today we did not compete how the game required us to. But we will get players back [from injury], there's another game on Saturday.
"Here a lot of teams have lost, and others have had a lot of trouble winning. Luckily, there's another game on Saturday."
Barca were without suspended captain Sergio Busquets but handed Pedri his first start since he was injured in February.
Rayo broke the deadlock early on when Alvaro Garcia drilled home across Marc-Andre ter Stegen and into the bottom corner.
Robert Lewandowski should have equalised for Barcelona but Rayo goalkeeper Stole Dimitrievski denied the forward one-on-one, and then the Pole had a goal ruled out for offside.
Rayo doubled their lead after the break when left-back Fran Garcia pressed Frenkie de Jong, collected the ball and drove on to score.
"We knew that it was an important day for us, they say the giant-killers are back," said Fran Garcia.
"The atmosphere can't be described ... we want to give it back in the best way possible."
Lewandowski pulled one back for Barcelona after Franck Kessie's shot was blocked, ending a run of four games without a goal for the division's top scorer.
Rayo held on for only their second win in their last 11 league matches – and third in four games against Barca for coach Andoni Iraola.
Almeria climbed up to 15th with a 2-1 win at 10-man Getafe, which left the hosts 17th, one point above the bottom three, which they could sink into depending on other results Thursday.
Celta Vigo earned a late win over bottom-of-the-table Elche thanks to defender Joseph Aidoo's diving header.