Premier League Regular Season - 31

Aston Villa 2 - 0 FT West Ham

Villa Park

Match previews and recaps to help you decide which games are worth watching

Futmetrix Verdict
30
FT
Sun, Mar 22
Aston Villa
2-0
West Ham
⚡ Intensity 17
⚖️ Balance 17
🏆 Stakes 56
🎲 Upset 0
Villa tighten their Champions League grip.

Villa Park Fortress Keeps Champions League Dream Alive

Skip It Futmetrix Score: 30/100. A ruthless early breakthrough and relentless attacking pressure allowed the hosts to fortify their top-four position while deepening the visitors' relegation nightmares.

Early Dominance

The atmosphere at Villa Park crackled with anticipation as the hosts sought to solidify their European ambitions. The Intensity was palpable from the kick-off, with the home side immediately asserting authority and squeezing the visitors into their own half. Controlling possession with composed midfield circulation, the hosts did not have to wait long for their breakthrough. In the 15th minute, J. Sancho unlocked the defensive line with a perfectly weighted delivery, allowing J. McGinn to expertly dispatch the opening goal. This hammer blow set a relentless tempo, completely neutralizing any initial game plan from the struggling Londoners. The claret and blue midfield quickly established a rhythmic dominance, orchestrating waves of attacks that kept the opposition firmly pinned back.

Breaking the Resistance

Desperate to climb out of the relegation zone, the visitors tried to weather the storm, but the Balance of play heavily favoured the Midlands club. A staggering 31 combined shots turned the penalty areas into a shooting gallery, underscored by a dozen corners that kept the pressure cooking. Despite the onslaught, Konstantinos Mavropanos marshalled his backline valiantly, throwing himself into tackles and earning top marks for his resilience. However, the sheer volume of home attacks eventually breached the dam a second time. Shortly after the hour mark, O. Watkins seized his moment, hammering home the crucial second goal in the 68th minute. Any lingering threat of an unexpected comeback evaporated entirely, keeping the Upset Factor firmly at zero.

Securing the Spoils

With a two-goal cushion secured, the hosts expertly managed the remaining minutes. The Stakes could not have been higher for either side, but the contrast in quality was evident across the pitch. Amadou Onana served as an impenetrable shield in the centre of the park, sweeping up loose balls, while Lucas Digne provided constant overlapping threats down the left flank to suffocate any counter-attacking hopes. This methodical 2-0 triumph strengthens Aston Villa's grip on fourth place, edging them closer to a coveted seat at Europe's top table next season. Meanwhile, West Ham face a perilous reality check; stranded in 18th place and staring down the barrel of a return to the Championship, they are running out of lifelines to secure Premier League survival.

Key Questions

What made Konstantinos Mavropanos the Man of the Match?

Despite conceding twice, Mavropanos anchored the backline heroically under immense pressure, making crucial interventions against a constant barrage of attacks.

What does this mean for Aston Villa's season?

This vital victory keeps them firmly in fourth place, strengthening their grip on Champions League qualification as the final stretch approaches.

What is the Futmetrix Score?

The Futmetrix Score is our 0-100 verdict on how entertaining a match is. We look at intensity, balance, stakes, and star quality to tell you if it's worth your time.

Match Statistics

Possession
59%
41%
Aston Villa 59%
West Ham 41%
Shots
22
9
Aston Villa 22
West Ham 9
Shots on Target
7
1
Aston Villa 7
West Ham 1
Expected Goals (xG)
1.66
0.94
Aston Villa 1.66
West Ham 0.94
Passes
479
324
Aston Villa 479
West Ham 324
Pass Accuracy
90%
83%
Aston Villa 90%
West Ham 83%
Corners
6
6
Aston Villa 6
West Ham 6
Fouls
3
7
Aston Villa 3
West Ham 7
Yellow Cards
0
1
Aston Villa 0
West Ham 1
Red Cards
0
0
Aston Villa 0
West Ham 0

Match Events

15' J. McGinn (J. Sancho)
A. Wan-Bissaka 🟨 45'
HT
F. Potts A. Traore 🔄 46'
T. Castellanos C. Wilson 🔄 46'
67' 🔄 J. Sancho L. Bailey
67' 🔄 J. McGinn Y. Tielemans
67' 🔄 R. Barkley Douglas Luiz
68' O. Watkins
77' 🔄 M. Rogers E. Buendia
A. Wan-Bissaka S. Magassa 🔄 83'
T. Soucek M. Kante 🔄 83'
87' 🔄 O. Watkins T. Abraham
FT

Player Cards

Our take on every player in this match

Aston Villa

Goalkeepers
Emiliano Martínez
PROVOCATEUR
PROVOCATEUR
1
Fouls Won
1
Fouls Won
2
Duels Won
0
Pens Won
Defenders
Matty Cash
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
Ezri Konsa
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
Pau Torres
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
Lucas Digne
ARCHITECT
ARCHITECT
2
Key Passes
2
Key Passes
0
Assists
36%
Pass Acc
Midfielders
Amadou Onana
STORMTROOPER
STORMTROOPER
2
Shots
2
Shots
0
Goals
0
On Target
Ross Barkley
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
67
Total Mins
67
Entry
Jadon Sancho
ARCHITECT
ARCHITECT
3
Key Passes
3
Key Passes
1
Assists
22%
Pass Acc
John McGinn
SNIPER
SNIPER
100%
Conversion
100%
Conversion
1
Goals
1
Shots
Morgan Rogers
ARCHITECT
ARCHITECT
4
Key Passes
4
Key Passes
0
Assists
26%
Pass Acc
Forwards
Ollie Watkins
FINISHER
FINISHER
1
Goals
1
Goals
3
Shots
7.2
Rating
BENCH
Marco Bizot
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Ian Maatsen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Tyrone Mings
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Lamare Bogarde
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Youri Tielemans
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
26
Total Mins
Started
Entry
Douglas Luiz
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
26
Total Mins
Started
Entry
Emiliano Buendía
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
16
Total Mins
Started
Entry
Leon Bailey
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
26
Total Mins
Started
Entry
Tammy Abraham
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
6
Total Mins
Started
Entry

West Ham

Goalkeepers
Mads Hermansen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
Defenders
Aaron Wan-Bissaka
LATE SHIFT
LATE SHIFT
7
Late Mins
7
Late Mins
83
Total Mins
83
Entry
Konstantinos Mavropanos
WALL
WALL
0
Dribbled Past
0
Dribbled Past
3
Tackles
86%
Duel Win %
Axel Disasi
STORMTROOPER
STORMTROOPER
1
Shots
1
Shots
0
Goals
1
On Target
El Hadji Malick Diouf
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
Midfielders
Tomáš Souček
LATE SHIFT
LATE SHIFT
7
Late Mins
7
Late Mins
83
Total Mins
83
Entry
Freddie Potts
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Mateus Fernandes
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
Forwards
Jarrod Bowen
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
Valentín Castellanos
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
45
Total Mins
46
Entry
Pablo Felipe
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
93
Total Mins
Started
Entry
BENCH
Alphonse Aréola
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Finlay Herrick
SPECTATOR
SPECTATOR
0
Saves
0
Saves
0
Conceded
0
Minutes
Kyle Walker-Peters
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Max Kilman
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Oliver Scarles
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
0
Total Mins
Started
Entry
Soungoutou Magassa
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
10
Total Mins
Started
Entry
Mohamadou Kanté
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
10
Total Mins
Started
Entry
Callum Wilson
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
48
Total Mins
Started
Entry
Adama Traoré
LATE SHIFT
LATE SHIFT
15
Late Mins
15
Late Mins
48
Total Mins
Started
Entry

Head to Head

Date Home Score Away Competition Venue
14/12/2025 West Ham 2 - 3 Aston Villa Premier League London Stadium
26/01/2025 Aston Villa 1 - 1 West Ham Premier League Villa Park
10/01/2025 Aston Villa 2 - 1 West Ham FA Cup Villa Park
17/08/2024 West Ham 1 - 2 Aston Villa Premier League London Stadium
17/03/2024 West Ham 1 - 1 Aston Villa Premier League London Stadium
22/10/2023 Aston Villa 4 - 1 West Ham Premier League Villa Park
12/03/2023 West Ham 1 - 1 Aston Villa Premier League London Stadium
28/08/2022 Aston Villa 0 - 1 West Ham Premier League Villa Park
13/03/2022 West Ham 2 - 1 Aston Villa Premier League London Stadium
31/10/2021 Aston Villa 1 - 4 West Ham Premier League Villa Park
14/12/2025
Premier League London Stadium
26/01/2025
Premier League Villa Park
10/01/2025
FA Cup Villa Park
17/08/2024
Premier League London Stadium
17/03/2024
Premier League London Stadium
22/10/2023
Premier League Villa Park
12/03/2023
Premier League London Stadium
28/08/2022
Premier League Villa Park
13/03/2022
Premier League London Stadium
31/10/2021
Premier League Villa Park
Aston Villa Win
West Ham Win
Draw

League Standings

Pos Team P Pts GF GA GD Form
1 Arsenal 31 70 61 22 +39 WArsenal 2 - 0 Everton (14-03-2026)WBrighton 0 - 1 Arsenal (04-03-2026)WArsenal 2 - 1 Chelsea (01-03-2026)WTottenham 1 - 4 Arsenal (22-02-2026)DWolves 2 - 2 Arsenal (18-02-2026)
2 Manchester City 30 61 60 28 +32 DWest Ham 1 - 1 Manchester City (14-03-2026)DManchester City 2 - 2 Nottingham Forest (04-03-2026)WLeeds 0 - 1 Manchester City (28-02-2026)WManchester City 2 - 1 Newcastle (21-02-2026)WManchester City 3 - 0 Fulham (11-02-2026)
3 Manchester United 31 55 56 43 +13 DBournemouth 2 - 2 Manchester United (20-03-2026)WManchester United 3 - 1 Aston Villa (15-03-2026)LNewcastle 2 - 1 Manchester United (04-03-2026)WManchester United 2 - 1 Crystal Palace (01-03-2026)WEverton 0 - 1 Manchester United (23-02-2026)
4 Aston Villa 31 54 42 37 +5 WAston Villa 2 - 0 West Ham (22-03-2026)LManchester United 3 - 1 Aston Villa (15-03-2026)LAston Villa 1 - 4 Chelsea (04-03-2026)LWolves 2 - 0 Aston Villa (27-02-2026)DAston Villa 1 - 1 Leeds (21-02-2026)
5 Liverpool 31 49 50 42 +8 LBrighton 2 - 1 Liverpool (21-03-2026)DLiverpool 1 - 1 Tottenham (15-03-2026)LWolves 2 - 1 Liverpool (03-03-2026)WLiverpool 5 - 2 West Ham (28-02-2026)WNottingham Forest 0 - 1 Liverpool (22-02-2026)
6 Chelsea 31 48 53 38 +15 LEverton 3 - 0 Chelsea (21-03-2026)LChelsea 0 - 1 Newcastle (14-03-2026)WAston Villa 1 - 4 Chelsea (04-03-2026)LArsenal 2 - 1 Chelsea (01-03-2026)DChelsea 1 - 1 Burnley (21-02-2026)
7 Brentford 31 46 46 42 +4 DLeeds 0 - 0 Brentford (21-03-2026)DBrentford 2 - 2 Wolves (16-03-2026)DBournemouth 0 - 0 Brentford (03-03-2026)WBurnley 3 - 4 Brentford (28-02-2026)LBrentford 0 - 2 Brighton (21-02-2026)
8 Everton 31 46 37 35 +2 WEverton 3 - 0 Chelsea (21-03-2026)LArsenal 2 - 0 Everton (14-03-2026)WEverton 2 - 0 Burnley (03-03-2026)WNewcastle 2 - 3 Everton (28-02-2026)LEverton 0 - 1 Manchester United (23-02-2026)
9 Fulham 31 44 43 44 -1 WFulham 3 - 1 Burnley (21-03-2026)DNottingham Forest 0 - 0 Fulham (15-03-2026)LFulham 0 - 1 West Ham (04-03-2026)WFulham 2 - 1 Tottenham (01-03-2026)WSunderland 1 - 3 Fulham (22-02-2026)
10 Brighton 31 43 41 37 +4 WBrighton 2 - 1 Liverpool (21-03-2026)WSunderland 0 - 1 Brighton (14-03-2026)LBrighton 0 - 1 Arsenal (04-03-2026)WBrighton 2 - 1 Nottingham Forest (01-03-2026)WBrentford 0 - 2 Brighton (21-02-2026)
11 Sunderland 31 43 32 36 -4 WNewcastle 1 - 2 Sunderland (22-03-2026)LSunderland 0 - 1 Brighton (14-03-2026)WLeeds 0 - 1 Sunderland (03-03-2026)DBournemouth 1 - 1 Sunderland (28-02-2026)LSunderland 1 - 3 Fulham (22-02-2026)
12 Newcastle 31 42 44 45 -1 LNewcastle 1 - 2 Sunderland (22-03-2026)WChelsea 0 - 1 Newcastle (14-03-2026)WNewcastle 2 - 1 Manchester United (04-03-2026)LNewcastle 2 - 3 Everton (28-02-2026)LManchester City 2 - 1 Newcastle (21-02-2026)
13 Bournemouth 31 42 46 48 -2 DBournemouth 2 - 2 Manchester United (20-03-2026)DBurnley 0 - 0 Bournemouth (14-03-2026)DBournemouth 0 - 0 Brentford (03-03-2026)DBournemouth 1 - 1 Sunderland (28-02-2026)DWest Ham 0 - 0 Bournemouth (21-02-2026)
14 Crystal Palace 30 39 33 35 -2 DCrystal Palace 0 - 0 Leeds (15-03-2026)WTottenham 1 - 3 Crystal Palace (05-03-2026)LManchester United 2 - 1 Crystal Palace (01-03-2026)WCrystal Palace 1 - 0 Wolves (22-02-2026)LCrystal Palace 2 - 3 Burnley (11-02-2026)
15 Leeds 31 33 37 48 -11 DLeeds 0 - 0 Brentford (21-03-2026)DCrystal Palace 0 - 0 Leeds (15-03-2026)LLeeds 0 - 1 Sunderland (03-03-2026)LLeeds 0 - 1 Manchester City (28-02-2026)DAston Villa 1 - 1 Leeds (21-02-2026)
16 Nottingham Forest 31 32 31 43 -12 WTottenham 0 - 3 Nottingham Forest (22-03-2026)DNottingham Forest 0 - 0 Fulham (15-03-2026)DManchester City 2 - 2 Nottingham Forest (04-03-2026)LBrighton 2 - 1 Nottingham Forest (01-03-2026)LNottingham Forest 0 - 1 Liverpool (22-02-2026)
17 Tottenham 31 30 40 50 -10 LTottenham 0 - 3 Nottingham Forest (22-03-2026)DLiverpool 1 - 1 Tottenham (15-03-2026)LTottenham 1 - 3 Crystal Palace (05-03-2026)LFulham 2 - 1 Tottenham (01-03-2026)LTottenham 1 - 4 Arsenal (22-02-2026)
18 West Ham 31 29 36 57 -21 LAston Villa 2 - 0 West Ham (22-03-2026)DWest Ham 1 - 1 Manchester City (14-03-2026)WFulham 0 - 1 West Ham (04-03-2026)LLiverpool 5 - 2 West Ham (28-02-2026)DWest Ham 0 - 0 Bournemouth (21-02-2026)
19 Burnley 31 20 33 61 -28 LFulham 3 - 1 Burnley (21-03-2026)DBurnley 0 - 0 Bournemouth (14-03-2026)LEverton 2 - 0 Burnley (03-03-2026)LBurnley 3 - 4 Brentford (28-02-2026)DChelsea 1 - 1 Burnley (21-02-2026)
20 Wolves 31 17 24 54 -30 DBrentford 2 - 2 Wolves (16-03-2026)WWolves 2 - 1 Liverpool (03-03-2026)WWolves 2 - 0 Aston Villa (27-02-2026)LCrystal Palace 1 - 0 Wolves (22-02-2026)DWolves 2 - 2 Arsenal (18-02-2026)