Real Betis 1-0 Real Madrid: Valles stands firm, Parrott strikes
AI-written review based on match data · How we make it
Key numbers
- xG 0.93 vs 3.46: Madrid had the better chances
- Valles: six saves and a penalty stop
- Parrott: 22 minutes, 81' winner
Betis win despite being outshot
Real Betis beat Real Madrid 1-0 even though the shot count read 20 to 10 against them. The result lifted Betis from seventh to third place on nine points, while Madrid stayed second on the same total.
Madrid's xG of 3.46 brought no goal
Madrid built up an xG of 3.46 and still left without a goal. With 16 shots coming from inside the box, this does not look like a side relying on long-range efforts. Álvaro Valles made six saves to keep them out.
A substitute breaks the deadlock
The match was goalless for 81 minutes. Troy Parrott came on in the 69th minute for Cucho Hernández and scored in the 81st. The goal was worth +1.4 FN xPts, the largest value of the match, and it was his first league goal of the season.
Late scares ended with a penalty save
In the 89th minute, a goal by Carlos Espí was cancelled by VAR. Deep into stoppage time, in the 90+4th minute, Kylian Mbappé's penalty was missed and saved by Valles. For Madrid that moment was worth −0.8 FN xPts.
Player of the match
Álvaro Valles 8.6Dominant
He made six saves and stopped a 90+4' penalty to protect the clean sheet.
Valles earned his points in goal. Madrid took 16 shots from inside the box, yet he made six saves and then stopped Mbappé's penalty in the 90+4th minute. By keeping it goalless for 81 minutes, he allowed Parrott's 81st-minute strike to stand as the winner, and he protected that lead to the end.
Game state
1-0
Real Betis ahead 9 min · level 81 min · Real Madrid ahead 0 min
- Troy Parrott — off the bench 22 min · 1G 0A
FN xPts — what each moment was worth
How much each moment changed that team's expected points (win 3, draw 1). A goal's value is credited 70% to the scorer and 30% to the assist.
81'
Troy Parrott
Goal
+1.4
90+4'
Kylian Mbappé
Pen miss
−0.8
Real Betis
Expected (last two seasons) 1.2Own moments +1.4Opponent moments +1.4Time effect −1.0→ League points won 3
Real Madrid
Expected (last two seasons) 1.6Own moments −0.8Opponent moments −1.0Time effect +0.2→ League points won 0
Expected points don't add up to a fixed total (a draw is 1 + 1), so an opponent's moment isn't simply the mirror of your loss. "Time effect" is the change as the clock runs down on a lead or a chase, and isn't credited to any player.
How FN Score and FN xPts work →
Match stats
Real BetisReal Madrid
0.93Expected goals (xG)3.46
Compared with usual
Real Betis
3 matches this season, all competitions baseline
Real Madrid
3 matches this season, all competitions baseline
Timeline
- 39'
Sub
Diego Llorente → Marc Bartra
- 45+3'
Yellow
Arda Güler
- 54'
Yellow
Ibrahima Konaté
- 60'
Sub
Isco → Álvaro Fidalgo
- 61'
Yellow
Eduardo Camavinga
- 64'
Yellow
Facundo Bernal
- 64'
Sub
Denzel Dumfries → Trent Alexander-Arnold
- 64'
Sub
Eduardo Camavinga → Bernardo Silva
- 64'
Sub
Arda Güler → Yan Diomande
- 69'
Sub
Facundo Bernal → Nelson Deossa
- 69'
Sub
Cucho Hernández → Troy Parrott
- 77'
Sub
Antony → Rodrigo Riquelme
- 81'
Goal
Troy Parrott league goal #1
- 82'
Sub
Federico Valverde → Carlos Espí
- 83'
Yellow
Marc Roca
- 88'
Sub
Marc Cucurella → Álvaro Carreras
- 89'
VAR
Carlos Espí
- 90+3'
Yellow
Natan
- 90+4'
Pen miss
Kylian Mbappé
- 90+9'
Yellow
Vinícius Júnior
Category leaders
- Key passesArda Güler7
- Duels wonHéctor Bellerín8/14
- DribblesKylian Mbappé5/10
- Defensive actionsHéctor Bellerín9
- ShotsKylian Mbappé6 (on target 4)
- Fouls wonVinícius Júnior4
#Real Betis#Real Madrid#La Liga#Álvaro Valles#Troy Parrott
This review was written by AI from match data (API-Football). FN Score and FN xPts are calculated by Fulltime Note using a published formula.