Barcelona suffered a third home defeat in a row for the first time in a single season with a shock La Liga loss to Rayo Vallecano.
Barca’s defeat leaves Real Madrid on the brink of the title, with Carlo Ancelotti’s side needing one point from five games to become champions.
Madrid can clinch a record 35th Spanish title by avoiding defeat against Espanyol on Saturday.
Rayo earned a Liga double over Barca through Alvaro Garcia’s sharp strike.
Following defeats by Eintracht Frankfurt in the Europa League quarter-finals and Cadiz in La Liga on Monday, Barca have lost three successive home games for only the second time in their history.
The other occasion came at the end of the 1997-98 season and start of the 1998-99 season under Dutch boss Louis van Gaal.
Barca, who knew victory would all but secure a top-four finish and Champions League qualification, have won just twice in their past six matches.
Xavi’s side should still secure a top-four spot but his side’s form will be a concern for the legendary Barca midfielder, who took over from Ronaldo Koeman in October.
Koeman was sacked after Barca lost at Rayo and the Madrid side became only the fourth promoted side to complete a home and away double over Barcelona and the first since 1997-98.
Garcia’s movement allowed him to collect Isi Palazon’s superb pass ahead of Barcelona defender Sergino Dest and beat home keeper Marc-Andre ter Stegen at his near post with a low shot.
Barcelona dominated possession as they searched for an equaliser, with Gavi hitting the crossbar with a rising shot in the first half.
The home side continued to press in the second half and, having thrown on attackers Memphis Depay, Luuk de Jong and Adama Traore, created opportunities against a well-organised Rayo side.
But Barca paid the price for their profligacy.
Rayo keeper Stole Dimitrievski made several comfortable saves, while defender Alejandro Catena cleared a Dembele shot off the line, as Barca could not find a way through despite almost 14 minutes of stoppage time.
- Match Stats
- Live Text
- 1ter Stegen
- 2DestSubstituted forLengletat 45′minutes
- 24GarcíaSubstituted forTraoréat 71′minutes
- 18AlbaBooked at 90mins
- 21de JongSubstituted forGonzález Iglesiasat 60′minutes
- 30PáezBooked at 90mins
- 7DembéléBooked at 89mins
- 25AubameyangSubstituted forde Jongat 71′minutesBooked at 81mins
- 19TorresSubstituted forDepayat 60′minutes
- 6Puig Martí
- 8Alves da Silva
- 13Murara Neto
- 14González Iglesias
- 17de Jong
- 20BalliuBooked at 69mins
- 5CatenaBooked at 90mins
- 33García Torres
- 6ComesañaBooked at 37minsSubstituted forCissat 56′minutes
- 23ValentínSubstituted forTrejoat 67′minutesBooked at 90mins
- 7PalazónBooked at 85minsSubstituted forHernándezat 87′minutesBooked at 90mins
- 12LópezSubstituted forSuárezat 87′minutes
- 18García Rivera
- 9NtekaSubstituted forGuardiola Navarroat 56′minutes
- 10Dias Correia
- 16Guardiola Navarro
- Isidro Díaz de Mera Escuderos
- Shots on Target
Match ends, Barcelona 0, Rayo Vallecano 1.
Second Half ends, Barcelona 0, Rayo Vallecano 1.
Gavi (Barcelona) is shown the yellow card for a bad foul.
Foul by Gavi (Barcelona).
Álvaro García (Rayo Vallecano) wins a free kick on the left wing.
Attempt blocked. Ousmane Dembélé (Barcelona) right footed shot from the centre of the box is blocked.
Alejandro Catena (Rayo Vallecano) is shown the yellow card for a bad foul.
Adama Traoré (Barcelona) wins a free kick in the attacking half.
Foul by Alejandro Catena (Rayo Vallecano).
Attempt missed. Ousmane Dembélé (Barcelona) left footed shot from outside the box is high and wide to the left. Assisted by Sergio Busquets.
Pathé Ciss (Rayo Vallecano) hits the left post with a left footed shot from outside the box. Assisted by Álvaro García.
Attempt blocked. Adama Traoré (Barcelona) right footed shot from the centre of the box is blocked. Assisted by Memphis Depay.
Nico González (Barcelona) wins a free kick in the defensive half.
Foul by Sergi Guardiola (Rayo Vallecano).
Óscar Trejo (Rayo Vallecano) is shown the yellow card.
Mario Hernández (Rayo Vallecano) is shown the yellow card.
Memphis Depay (Barcelona) wins a free kick in the attacking half.
Foul by Óscar Trejo (Rayo Vallecano).
Jordi Alba (Barcelona) is shown the yellow card.
Offside, Barcelona. Jordi Alba tries a through ball, but Ousmane Dembélé is caught offside.
- Who are the best African footballers? Gary Lineker is joined by Micah Richards and Alan Shearer to rank the top 10
- Is buying electric cars worth the extra cost? Look behind the claims and promises of changing to an electric vehicle