Real Madrid vs Villarreal

10 October 2026 · La Liga · 2026/27 · Referee Isidro Díaz de Mera Escuderos

Full time 1 – 0

Half-time: 0–0

  • Yan Diomande 63’

Match summary

Real Madrid saw off Villarreal 1-0. It was goalless at half-time.

Yan Diomande put Real Madrid ahead in the 63rd minute, set up by Federico Valverde.

The chances backed that up: Real Madrid created 1.43 expected goals (xG) from 11 shots to Villarreal's 0.53 from 15. Real Madrid had a player sent off.

Real Madrid secured a narrow 1-0 victory against Villarreal in La Liga matchday 8 after a hard-fought contest at home. Despite Villarreal dominating possession with 54 percent compared to Real Madrid's 46 percent, and registering 15 shots to the hosts' 11, the home side edged the territory with 92 attacks and 55 dangerous attacks against 89 attacks and 50 dangerous attacks from the visitors. Both teams managed 4 shots on target, while Real Madrid forced 9 corners to Villarreal's 3. The match saw a heavy disciplinary count, featuring 7 yellow cards and 1 red card for the home side alongside 2 yellow cards for the away team, with Real Madrid committing 8 fouls and Villarreal 13.

The first half ended goalless after early cautions for Villarreal's Renato Veiga in the 10th minute and Real Madrid's Jude Bellingham in the 19th minute. Following half-time substitutions, the deadlock was broken in the 62nd minute when Yan Diomande scored with a right foot shot to put Real Madrid 1-0 ahead, a goal that was followed by a VAR review in the 63rd minute. After further substitutions for both teams and another VAR review in the 72nd minute, Real Madrid's Vinicius Junior received a red card for violent conduct in the 72nd minute. A series of yellow cards followed for José Mourinho, Ibrahima Konaté, Antonio Rüdiger, Pau Navarro, Aurélien Tchouaméni, and Kylian Mbappé before the match concluded at 1-0.

Match stats

46% Possession 54%
11 Shots 15
4 Shots on target 4
9 Corners 3
92 Attacks 89
55 Dangerous attacks 50
406 Passes 477
83% Pass accuracy 89%
19 Tackles 15
8 Fouls 13
5 Yellow cards 2
1 Red cards 0
3 Offsides 1

Key events

Real Madrid Villarreal
Kick-off
10’
19’
Kylian Mbappe-LottinShot on target
21’
Half-time0-0
Second half underway
Vinícius JúniorShot on target
60’
60’
Pape Alassane GueyeShot on target
61’
Pape Alassane GueyeShot on target
Yan DiomandeRight foot shot1-0 (Real Madrid)
62’
VAR review
63’
José MourinhoArgument
69’
VAR review
72’
Vinicius JuniorViolent conduct
72’
76’
Carlos RomeroShot on target
Kylian Mbappe-LottinShot on target
78’
81’
83’
84’
Aurélien TchouaméniTime wasting
87’
88’
Georges MikautadzeShot on target
Kylian MbappéTime wasting
90+4’
Full-time1-0

How the chances added up

Running total of expected goals (xG) for each side through the match. xG rates each chance by how often similar shots are scored. A goal is marked where it was scored.

0.0 0.5 1.0 1.5 2.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.43 0.53 63’ Yan Diomande (Real Madrid), 1-0 63’ 0.0 0.5 1.0 1.5 2.0 0’ 15’ 30’ 45’ 60’ 75’ 90’ HT 1.43 0.53 63’ Yan Diomande (Real Madrid), 1-0 Diomande 63’
Real Madrid 1.43 xGVillarreal 0.53 xG Goal

Tap a goal for the scorer and score.

Shot map

Every shot and where it was taken from.

 Villarreal attacking Real Madrid attacking 
7’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.45 xG, hit the woodwork 78’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.28 xG, saved 63’ Yan Diomande (Real Madrid), open play, 0.25 xG, goal 21’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.16 xG, saved 43’ Arda Güler (Real Madrid), open play, 0.09 xG, off target 88’ Georges Mikautadze (Villarreal), open play, 0.08 xG, saved 53’ Yan Diomande (Real Madrid), open play, 0.08 xG, off target 76’ Carlos Romero (Villarreal), open play, 0.08 xG, saved 58’ Alberto Moleiro (Villarreal), open play, 0.07 xG, off target 77’ Pape Alassane Gueye (Villarreal), from a corner, 0.05 xG, off target 60’ Ilias Akhomach (Villarreal), open play, 0.05 xG, blocked 80’ Ayoze Pérez (Villarreal), from a corner, 0.04 xG, off target 28’ Jude Bellingham (Real Madrid), open play, 0.04 xG, blocked 24’ Alberto Moleiro (Villarreal), open play, 0.03 xG, off target 60’ Vinícius Júnior (Real Madrid), from a corner, 0.02 xG, saved 51’ Aurelien Tchouameni (Real Madrid), open play, 0.02 xG, blocked 68’ Jude Bellingham (Real Madrid), open play, 0.02 xG, blocked 77’ Nathan Saliba (Villarreal), from a corner, 0.02 xG, blocked 79’ Georges Mikautadze (Villarreal), open play, 0.02 xG, blocked 60’ Pape Alassane Gueye (Villarreal), open play, 0.02 xG, saved 69’ Gerard Moreno (Villarreal), open play, 0.02 xG, blocked 40’ Ibrahima Konaté (Real Madrid), from a corner, 0.01 xG, off target 61’ Pape Alassane Gueye (Villarreal), open play, 0.01 xG, saved 4’ Pape Alassane Gueye (Villarreal), open play, 0.01 xG, off target 38’ Renato Veiga (Villarreal), from a corner, 0.01 xG, off target 61’ Renato Veiga (Villarreal), open play, 0.01 xG, off target 7’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.45 xG, hit the woodwork 78’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.28 xG, saved 63’ Yan Diomande (Real Madrid), open play, 0.25 xG, goal 21’ Kylian Mbappe-Lottin (Real Madrid), open play, 0.16 xG, saved 43’ Arda Güler (Real Madrid), open play, 0.09 xG, off target 53’ Yan Diomande (Real Madrid), open play, 0.08 xG, off target 88’ Georges Mikautadze (Villarreal), open play, 0.08 xG, saved 76’ Carlos Romero (Villarreal), open play, 0.08 xG, saved 58’ Alberto Moleiro (Villarreal), open play, 0.07 xG, off target 77’ Pape Alassane Gueye (Villarreal), from a corner, 0.05 xG, off target 60’ Ilias Akhomach (Villarreal), open play, 0.05 xG, blocked 80’ Ayoze Pérez (Villarreal), from a corner, 0.04 xG, off target 28’ Jude Bellingham (Real Madrid), open play, 0.04 xG, blocked 24’ Alberto Moleiro (Villarreal), open play, 0.03 xG, off target 60’ Vinícius Júnior (Real Madrid), from a corner, 0.02 xG, saved 51’ Aurelien Tchouameni (Real Madrid), open play, 0.02 xG, blocked 77’ Nathan Saliba (Villarreal), from a corner, 0.02 xG, blocked 68’ Jude Bellingham (Real Madrid), open play, 0.02 xG, blocked 69’ Gerard Moreno (Villarreal), open play, 0.02 xG, blocked 79’ Georges Mikautadze (Villarreal), open play, 0.02 xG, blocked 60’ Pape Alassane Gueye (Villarreal), open play, 0.02 xG, saved 61’ Pape Alassane Gueye (Villarreal), open play, 0.01 xG, saved 40’ Ibrahima Konaté (Real Madrid), from a corner, 0.01 xG, off target 4’ Pape Alassane Gueye (Villarreal), open play, 0.01 xG, off target 38’ Renato Veiga (Villarreal), from a corner, 0.01 xG, off target 61’ Renato Veiga (Villarreal), open play, 0.01 xG, off target
Size shows xG Goal On target Off target or blocked

Hover or tap a shot for the player, minute and xG.

Lineups

Real Madrid 4-2-3-1 Starting XI
Courtois
Alexander-Arnold 52’
Konaté
Rüdiger
Carreras 46’
Valverde
Tchouaméni
Güler 77’
Bellingham
Diomande 86’
Mbappé
Villarreal 5-3-2 Starting XI
Gulácsi
Cardona 67’
Veiga
Foyth 56’
Navarro
Freeman
Moleiro 86’
Gueye
Comesaña 56’
Akhomach 67’
Pérez

Player stats

PlayerPosMinGAShxGxAKPCards
Thibaut Courtois GK900 0.000.000
Trent Alexander-Arnold DEF520 0.000.172
Ibrahima Konaté DEF901 0.010.000
Antonio Rüdiger DEF900 0.000.000
Álvaro Fernández DEF460 0.000.451
Aurelien Tchouameni MID901 0.020.000
Federico Valverde MID9010 0.000.623
Arda Güler MID771 0.090.000
Jude Bellingham MID902 0.060.000
Yan Diomande MID8612 0.330.083
Kylian Mbappe-Lottin FWD903 0.880.000
Marc Cucurella Sub440 0.000.000
Vinícius Júnior Sub201 0.020.000
Eduardo Camavinga Sub130 0.000.000
Denzel Dumfries Sub40 0.000.000

Starters first, then substitutes. xA is expected assists.

Before kick-off

Real Madrid win 71% Avg odds 1.32 Our estimate 64%
Draw 16% Avg odds 5.81 Our estimate 19%
Villarreal win 13% Avg odds 7.57 Our estimate 17%

Chances implied by the average closing odds, with the bookmaker margin removed. Our estimate is the figure from before kick-off. How our figures work.

Form going into the game

Last five league games before this one, oldest first. Select one to open it.

Previous and next meeting

Shots, expected goals and player data from Understat. Timeline, lineups and team statistics from Sportmonks. Results and odds from football-data.co.uk.