xgEdge

Expected goals

West Ham United expected goals (xG) 2025/2026

Premier League · after 38 matches · updated 4 Oct

West Ham United's attacking and defensive expected goals in Premier League 2025/2026, compared with the results they produced and with the rest of the competition.

West Ham United xG and xGA per match

Every match ↓
Attack
1.21 xG per match
#14/20
Attack (xG per match) across Premier League, best first
Rank Club xG per match
#1 Manchester City 1.87
#2 Chelsea 1.75
#3 Arsenal 1.71
#4 Manchester United 1.70
#5 Bournemouth 1.64
#6 Brentford 1.59
#7 Liverpool 1.58
#8 Crystal Palace 1.53
#9 Brighton & Hove Albion 1.51
#10 Newcastle United 1.49
#11 Leeds United 1.43
#12 Fulham 1.27
#13 Aston Villa 1.26
#14 West Ham United 1.21
#15 Everton 1.20
#16 Nottingham Forest 1.20
#17 Tottenham Hotspur 1.08
#18 Sunderland 1.01
#19 Wolverhampton 0.94
#20 Burnley 0.85
League avg
1.39
Total
45.83 38 matches
Defence
1.57 xGA per match
#19/20
Defence (xGA per match) across Premier League, best first
Rank Club xGA per match
#1 Arsenal 0.74
#2 Manchester City 1.16
#3 Liverpool 1.26
#4 Manchester United 1.27
#5 Brighton & Hove Albion 1.30
#6 Newcastle United 1.34
#7 Tottenham Hotspur 1.35
#8 Chelsea 1.38
#9 Fulham 1.38
#10 Crystal Palace 1.38
#11 Sunderland 1.41
#12 Brentford 1.42
#13 Aston Villa 1.44
#14 Everton 1.46
#15 Leeds United 1.47
#16 Bournemouth 1.47
#17 Nottingham Forest 1.48
#18 Wolverhampton 1.53
#19 West Ham United 1.57
#20 Burnley 1.99
League avg
1.39
Total
59.70 38 matches
xG difference
-0.37 xGD per match
#17/20
xG difference (xGD per match) across Premier League, best first
Rank Club xGD per match
#1 Arsenal +0.97
#2 Manchester City +0.71
#3 Manchester United +0.43
#4 Chelsea +0.38
#5 Liverpool +0.33
#6 Brighton & Hove Albion +0.21
#7 Bournemouth +0.17
#8 Brentford +0.17
#9 Newcastle United +0.15
#10 Crystal Palace +0.14
#11 Leeds United -0.04
#12 Fulham -0.11
#13 Aston Villa -0.19
#14 Everton -0.26
#15 Tottenham Hotspur -0.27
#16 Nottingham Forest -0.28
#17 West Ham United -0.37
#18 Sunderland -0.40
#19 Wolverhampton -0.60
#20 Burnley -1.14
League avg
0.00
Total
-13.87 38 matches
Expected points Model — Model output — computed from each match's xG, not a result. How xPts works →
1.14 xPts per match
#17/20
Expected points (xPts per match) across Premier League, best first
Rank Club xPts per match
#1 Arsenal 2.04
#2 Manchester City 1.86
#3 Manchester United 1.62
#4 Liverpool 1.60
#5 Chelsea 1.57
#6 Bournemouth 1.52
#7 Brighton & Hove Albion 1.51
#8 Brentford 1.49
#9 Newcastle United 1.47
#10 Crystal Palace 1.46
#11 Leeds United 1.42
#12 Fulham 1.29
#13 Aston Villa 1.25
#14 Tottenham Hotspur 1.22
#15 Nottingham Forest 1.20
#16 Everton 1.18
#17 West Ham United 1.14
#18 Sunderland 1.09
#19 Wolverhampton 1.00
#20 Burnley 0.65
League avg
1.38
Total
43.31 vs 39 actual pts

What the xG says

West Ham United's underlying numbers are among the weakest in Premier League. They rank #17 for xG difference at -0.37 per match, from low shot volume at about average chance quality. Their 46 goals are 0.17 above 45.83 xG, while 39 points are 4.31 below 43.31 xPts.

Actual vs expected

Measure Actual Expected Difference Reading
Goals vs xG Includes 1.44 xG from penalties
46 45.83 +0.17 scored 0.17 more than xG within normal variance
65 59.70 +5.30 conceded 5.30 more than xGA within normal variance

Select a row to chart it across the season.

Goals minus xG, match by match

West Ham United are 0.17 goals above their xG after 38 matches. The gap was widest at +3.29, against Burnley on Sat 07/02.

Goals
46
xG
45.83
Gap
+0.17
Sat 16/08 Fri 22/08 Sun 31/08 Sat 13/09 Sat 20/09 Mon 29/09 Sat 04/10 Mon 20/10 Fri 24/10 Sun 02/11 Sat 08/11 Sat 22/11 Sun 30/11 Thu 04/12 Sun 07/12 Sun 14/12 Sat 20/12 Sat 27/12 Tue 30/12 Sat 03/01 Tue 06/01 Sat 17/01 Sat 24/01 Sat 31/01 Sat 07/02 Tue 10/02 Sat 21/02 Sat 28/02 Wed 04/03 Sat 14/03 Sun 22/03 Fri 10/04 Mon 20/04 Sat 25/04 Sat 02/05 Sun 10/05 Sun 17/05 Sun 24/05 -1 0 +1 +2 +3 +4 -0.56 -0.29 +0.29 -0.31 +0.03 -0.16 -0.65 -0.98 -0.63 +0.62 +0.60 +1.95 +1.66 +1.87 +1.73 +2.70 +1.72 +0.81 +0.75 +0.50 +0.55 -0.14 +1.43 +2.31 +3.29 +3.21 +0.34 +0.50 +0.41 +0.87 -0.07 +1.58 +0.97 +1.80 +0.88 -0.27 -0.22 +0.17 -0.56 +0.27 +0.58 -0.60 +0.34 -0.19 -0.49 -0.33 +0.35 +1.25 -0.02 +1.35 -0.29 +0.21 -0.14 +0.97 -0.98 -0.91 -0.06 -0.25 +0.05 -0.69 +1.57 +0.88 +0.98 -0.08 -2.87 +0.16 -0.09 +0.46 -0.94 +1.65 -0.61 +0.83 -0.92 -1.15 +0.05 +0.39 Running gap goals − xG Each match goals − xG
West Ham United: Goals vs xG, the gap after every match with xG
Date Opponent Goals xG Match gap Running gap
Sat 16/08 Sunderland 0 0.56 -0.56 -0.56
Fri 22/08 Chelsea 1 0.73 +0.27 -0.29
Sun 31/08 Nottingham Forest 3 2.42 +0.58 +0.29
Sat 13/09 Tottenham Hotspur 0 0.60 -0.60 -0.31
Sat 20/09 Crystal Palace 1 0.66 +0.34 +0.03
Mon 29/09 Everton 1 1.19 -0.19 -0.16
Sat 04/10 Arsenal 0 0.49 -0.49 -0.65
Mon 20/10 Brentford 0 0.33 -0.33 -0.98
Fri 24/10 Leeds United 1 0.65 +0.35 -0.63
Sun 02/11 Newcastle United 3 1.75 +1.25 +0.62
Sat 08/11 Burnley 3 3.02 -0.02 +0.60
Sat 22/11 Bournemouth 2 0.65 +1.35 +1.95
Sun 30/11 Liverpool 0 0.29 -0.29 +1.66
Thu 04/12 Manchester United 1 0.79 +0.21 +1.87
Sun 07/12 Brighton & Hove Albion 1 1.14 -0.14 +1.73
Sun 14/12 Aston Villa 2 1.03 +0.97 +2.70
Sat 20/12 Manchester City 0 0.98 -0.98 +1.72
Sat 27/12 Fulham 0 0.91 -0.91 +0.81
Tue 30/12 Brighton & Hove Albion 2 2.06 -0.06 +0.75
Sat 03/01 Wolverhampton 0 0.25 -0.25 +0.50
Tue 06/01 Nottingham Forest 1 0.95 +0.05 +0.55
Sat 17/01 Tottenham Hotspur 2 2.69 -0.69 -0.14
Sat 24/01 Sunderland 3 1.43 +1.57 +1.43
Sat 31/01 Chelsea 2 1.12 +0.88 +2.31
Sat 07/02 Burnley 2 1.02 +0.98 +3.29
Tue 10/02 Manchester United 1 1.08 -0.08 +3.21
Sat 21/02 Bournemouth 0 2.87 -2.87 +0.34
Sat 28/02 Liverpool 2 1.84 +0.16 +0.50
Wed 04/03 Fulham 1 1.09 -0.09 +0.41
Sat 14/03 Manchester City 1 0.54 +0.46 +0.87
Sun 22/03 Aston Villa 0 0.94 -0.94 -0.07
Fri 10/04 Wolverhampton 4 2.35 +1.65 +1.58
Mon 20/04 Crystal Palace 0 0.61 -0.61 +0.97
Sat 25/04 Everton 2 1.17 +0.83 +1.80
Sat 02/05 Brentford 0 0.92 -0.92 +0.88
Sun 10/05 Arsenal 0 1.15 -1.15 -0.27
Sun 17/05 Newcastle United 1 0.95 +0.05 -0.22
Sun 24/05 Leeds United 3 2.61 +0.39 +0.17

Goals vs xG ranking → Expected points ranking →

West Ham United xG trend

Current form -0.14 npxGD per match

The last 6 matches with xG.

Out-created the opponent in 13 of 38 matches. The worst was against Bournemouth on Sat 22/11 (-2.67).

npxG · last 6
1.23
npxGA · last 6
1.37
-3 -2 -1 0 +1 +2 +3 -0.19 Sat 16/08 -2.01 Fri 22/08 +0.90 Sun 31/08 -0.64 Sat 13/09 -1.69 Sat 20/09 +0.47 Mon 29/09 -1.69 Sat 04/10 -1.98 Mon 20/10 -0.88 Fri 24/10 +2.20 Sun 02/11 +2.07 Sat 08/11 -2.67 Sat 22/11 -0.93 Sun 30/11 -1.05 Thu 04/12 -0.60 Sun 07/12 +0.40 Sun 14/12 -0.99 Sat 20/12 -0.71 Sat 27/12 -0.20 Tue 30/12 -0.76 Sat 03/01 +0.22 Tue 06/01 +0.94 Sat 17/01 -0.01 Sat 24/01 -1.67 Sat 31/01 -0.26 Sat 07/02 +0.46 Tue 10/02 +2.26 Sat 21/02 +0.26 Sat 28/02 +0.08 Wed 04/03 -1.58 Sat 14/03 -0.83 Sun 22/03 +1.08 Fri 10/04 -0.07 Mon 20/04 -0.32 Sat 25/04 -0.65 Sat 02/05 -0.07 Sun 10/05 -0.82 Sun 17/05 +1.11 Sun 24/05 -0.28 season avg
West Ham United: non-penalty xG, xGA and their difference in each match, with the season's average so far
Date Opponent npxG npxGA npxGD Avg so far
Sat 16/08 Sunderland 0.56 0.75 -0.19 -0.19
Fri 22/08 Chelsea 0.73 2.74 -2.01 -1.10
Sun 31/08 Nottingham Forest 1.63 0.73 +0.90 -0.43
Sat 13/09 Tottenham Hotspur 0.65 1.29 -0.64 -0.49
Sat 20/09 Crystal Palace 0.62 2.31 -1.69 -0.73
Mon 29/09 Everton 1.19 0.72 +0.47 -0.53
Sat 04/10 Arsenal 0.43 2.12 -1.69 -0.69
Mon 20/10 Brentford 0.33 2.31 -1.98 -0.85
Fri 24/10 Leeds United 0.65 1.53 -0.88 -0.86
Sun 02/11 Newcastle United 2.76 0.56 +2.20 -0.55
Sat 08/11 Burnley 3.13 1.06 +2.07 -0.31
Sat 22/11 Bournemouth 0.64 3.31 -2.67 -0.51
Sun 30/11 Liverpool 0.31 1.24 -0.93 -0.54
Thu 04/12 Manchester United 0.80 1.85 -1.05 -0.58
Sun 07/12 Brighton & Hove Albion 1.27 1.87 -0.60 -0.58
Sun 14/12 Aston Villa 1.13 0.73 +0.40 -0.52
Sat 20/12 Manchester City 1.14 2.13 -0.99 -0.55
Sat 27/12 Fulham 0.91 1.62 -0.71 -0.55
Tue 30/12 Brighton & Hove Albion 1.17 1.37 -0.20 -0.54
Sat 03/01 Wolverhampton 0.32 1.08 -0.76 -0.55
Tue 06/01 Nottingham Forest 0.95 0.73 +0.22 -0.51
Sat 17/01 Tottenham Hotspur 2.69 1.75 +0.94 -0.44
Sat 24/01 Sunderland 0.64 0.65 -0.01 -0.43
Sat 31/01 Chelsea 1.12 2.79 -1.67 -0.48
Sat 07/02 Burnley 1.02 1.28 -0.26 -0.47
Tue 10/02 Manchester United 1.09 0.63 +0.46 -0.43
Sat 21/02 Bournemouth 2.91 0.65 +2.26 -0.33
Sat 28/02 Liverpool 2.01 1.75 +0.26 -0.31
Wed 04/03 Fulham 1.09 1.01 +0.08 -0.30
Sat 14/03 Manchester City 0.54 2.12 -1.58 -0.34
Sun 22/03 Aston Villa 0.89 1.72 -0.83 -0.36
Fri 10/04 Wolverhampton 1.69 0.61 +1.08 -0.31
Mon 20/04 Crystal Palace 0.61 0.68 -0.07 -0.31
Sat 25/04 Everton 1.17 1.49 -0.32 -0.31
Sat 02/05 Brentford 0.72 1.37 -0.65 -0.32
Sun 10/05 Arsenal 1.32 1.39 -0.07 -0.31
Sun 17/05 Newcastle United 0.88 1.70 -0.82 -0.32
Sun 24/05 Leeds United 2.68 1.57 +1.11 -0.28

Each bar is one match's non-penalty xG minus the non-penalty xG against; the line is that difference averaged over the season up to each match, and it finishes on the dashed season average — 1.17 npxG and 1.45 npxGA per match. Current form is the same difference over the last 6 matches with xG.

Form ranking →

Strength of schedule

Season so far
tied number 3 hardest of 20 in Premier League
+0.01 xG vs league average
Over 38 league matches
Last 5
number 13 hardest of 20 in Premier League
0.00 xG vs league average
Over 5 league matches
Opponents behind the figures

Season so far

+0.01 xG vs league average · over 38 matches · tied number 3 hardest of 20

  1. Leeds United Home −0.14
  2. Newcastle United Away −0.03
  3. Arsenal Home +0.48
  4. Brentford Away −0.09
  5. Everton Home −0.20
  6. Crystal Palace Away −0.05
  7. Wolverhampton Home −0.34
  8. Aston Villa Away +0.01
  9. Manchester City Home +0.51
  10. Fulham Away +0.02
  11. Liverpool Away +0.21
  12. Bournemouth Home +0.16
  13. Manchester United Home +0.28
  14. Burnley Away −0.69
  15. Chelsea Away +0.09
  16. Sunderland Home −0.14
  17. Tottenham Hotspur Away +0.03
  18. Nottingham Forest Home −0.14
  19. Wolverhampton Away −0.34
  20. Brighton & Hove Albion Home +0.20
  21. Fulham Home +0.02
  22. Manchester City Away +0.51
  23. Aston Villa Home +0.01
  24. Brighton & Hove Albion Away +0.20
  25. Manchester United Away +0.28
  26. Liverpool Home +0.21
  27. Bournemouth Away +0.16
  28. Burnley Home −0.69
  29. Newcastle United Home −0.03
  30. Leeds United Away −0.14
  31. Brentford Home −0.09
  32. Arsenal Away +0.48
  33. Everton Away −0.20
  34. Crystal Palace Home −0.05
  35. Tottenham Hotspur Home +0.03
  36. Nottingham Forest Away −0.14
  37. Chelsea Home +0.09
  38. Sunderland Away −0.14

Last 5

0.00 xG vs league average · over 5 matches · number 13 hardest of 20

  1. Leeds United Home −0.14
  2. Newcastle United Away −0.03
  3. Arsenal Home +0.48
  4. Brentford Away −0.09
  5. Everton Home −0.20

League schedule strength → How this is calculated →

West Ham United shots and chance quality

Low volume, average quality. West Ham United take 10.6 shots a match (league 12.5) at 0.11 npxG a shot (league 0.11), #17 in Premier League for volume and #7 for quality. 73% of their shots come from inside the box (league 67%), and set pieces produce 30% of their npxG (league 29%).

Attack

Shot volume
10.6 shots per match
#17/20
Shot volume (shots per match) across Premier League, best first
Rank Club shots per match
=1 Manchester City 15.7
=1 Manchester United 15.7
#3 Liverpool 15.5
#4 Arsenal 14.5
#5 Bournemouth 13.8
#6 Chelsea 13.4
#7 Brighton & Hove Albion 13.0
#8 Newcastle United 12.9
=9 Aston Villa 12.7
=9 Fulham 12.7
#11 Leeds United 12.6
#12 Nottingham Forest 12.5
#13 Crystal Palace 11.6
#14 Tottenham Hotspur 11.4
#15 Everton 11.0
#16 Brentford 10.7
#17 West Ham United 10.6
#18 Sunderland 10.4
#19 Wolverhampton 9.7
#20 Burnley 9.3
League avg
12.5
Total
404 shots from 38 matches
Chance quality
0.11 npxG per shot
#7/20
Chance quality (npxG per shot) across Premier League, best first
Rank Club npxG per shot
#1 Brentford 0.13
#2 Chelsea 0.12
#3 Crystal Palace 0.12
#4 Manchester City 0.11
#5 Arsenal 0.11
#6 Bournemouth 0.11
#7 West Ham United 0.11
#8 Newcastle United 0.11
#9 Brighton & Hove Albion 0.11
#10 Everton 0.11
#11 Leeds United 0.10
#12 Manchester United 0.10
#13 Aston Villa 0.10
#14 Liverpool 0.10
#15 Tottenham Hotspur 0.10
#16 Sunderland 0.09
#17 Nottingham Forest 0.09
#18 Fulham 0.09
#19 Burnley 0.09
#20 Wolverhampton 0.09
League avg
0.11
Total
44.39 npxG from 404 shots

Defence

Shots allowed
14.9 shots per match
#19/20
Shots allowed (shots per match) across Premier League, best first
Rank Club shots per match
#1 Arsenal 8.2
#2 Manchester City 9.7
#3 Chelsea 10.9
#4 Liverpool 11.4
#5 Manchester United 11.5
#6 Brighton & Hove Albion 11.7
#7 Crystal Palace 11.7
#8 Fulham 11.8
#9 Tottenham Hotspur 12.3
#10 Newcastle United 12.3
#11 Leeds United 12.5
#12 Bournemouth 12.6
#13 Aston Villa 12.9
=14 Brentford 13.3
=14 Nottingham Forest 13.3
#16 Wolverhampton 13.9
#17 Everton 14.0
#18 Sunderland 14.2
#19 West Ham United 14.9
#20 Burnley 16.7
League avg
12.5
Total
566 shots allowed from 38 matches
Chance quality allowed
0.10 npxGA per shot
#2/20
Chance quality allowed (npxGA per shot) across Premier League, best first
Rank Club npxGA per shot
#1 Arsenal 0.10
#2 West Ham United 0.10
#3 Brentford 0.10
#4 Sunderland 0.10
#5 Everton 0.10
#6 Nottingham Forest 0.10
#7 Wolverhampton 0.10
#8 Brighton & Hove Albion 0.10
#9 Newcastle United 0.10
#10 Manchester United 0.10
#11 Liverpool 0.10
#12 Tottenham Hotspur 0.11
#13 Leeds United 0.11
#14 Bournemouth 0.11
#15 Crystal Palace 0.11
#16 Burnley 0.11
#17 Fulham 0.11
#18 Aston Villa 0.11
#19 Manchester City 0.12
#20 Chelsea 0.12
League avg
0.11
Total
55.21 npxGA from 566 shots

Shot profile

Shot location

73% inside the box

League avg 67%

From 296 of 404 shots over 38 matches

Shots allowed, location

69% allowed inside the box

League avg 67%

From 391 of 566 shots allowed over 38 matches

Where the npxG comes from

70% open play · 30% set pieces

League avg 29% set pieces

From 13.4 of 44.3 npxG over 38 matches

Where the npxG allowed comes from

70% open play · 30% set pieces

League avg 29% set pieces

From 16.6 of 54.9 npxG allowed over 38 matches

West Ham United home and away xG

West Ham United per-match figures at home and away
Measure Home Away
Matches 19 19
xG / match 1.34 1.07
xGA / match 1.42 1.72
xGD / match -0.07 -0.66
xPts / match Model — Model output — computed from each match's xG, not a result. How xPts works → 1.32 0.96

Every figure divides by that half's matches with xG. A half with fewer than 3 matches with xG is muted.

Every West Ham United match by xG

Venue

At home this season

Matches
19
xG / match
1.34
xGA / match
1.42
xGD / match
-0.07
Points
22 of 57
  1. Sun 24/05 Leeds United H xG 2.61 xGA 1.59 xGD +1.02
  2. Sun 10/05 Arsenal H xG 1.15 xGA 1.18 xGD -0.03
  3. Sat 25/04 Everton H xG 1.17 xGA 1.45 xGD -0.28
  4. Fri 10/04 Wolverhampton H xG 2.35 P xGA 0.59 xGD +1.76
  5. Sat 14/03 Manchester City H xG 0.54 xGA 2.12 xGD -1.58
  6. Sat 21/02 Bournemouth H Best underlying xG 2.87 xGA 0.65 xGD +2.22
  7. Tue 10/02 Manchester United H xG 1.08 xGA 0.62 xGD +0.46
  8. Sat 24/01 Sunderland H xG 1.43 P xGA 0.65 xGD +0.78
  9. Tue 06/01 Nottingham Forest H xG 0.95 xGA 1.38 P xGD -0.43
  10. Tue 30/12 Brighton & Hove Albion H xG 2.06 P xGA 2.94 P xGD -0.88
  11. Sat 27/12 Fulham H xG 0.91 xGA 1.62 xGD -0.71
  12. Sun 14/12 Aston Villa H xG 1.03 xGA 0.67 xGD +0.36
  13. Sun 30/11 Liverpool H xG 0.29 xGA 1.24 xGD -0.95
  14. Sat 08/11 Burnley H xG 3.02 xGA 1.06 xGD +1.96
  15. Sun 02/11 Newcastle United H xG 1.75 xGA 0.52 xGD +1.23
  16. Mon 20/10 Brentford H xG 0.33 xGA 2.31 xGD -1.98
  17. Sat 20/09 Crystal Palace H xG 0.66 xGA 2.31 xGD -1.65
  18. Sat 13/09 Tottenham Hotspur H xG 0.60 xGA 1.29 xGD -0.69
  19. Fri 22/08 Chelsea H Weakest underlying xG 0.73 xGA 2.74 xGD -2.01

Newest first. The dot is xG and the ring is xGA, on one scale from 0 to 3.02. Best and weakest underlying mark the highest and lowest xGD once 5 matches have xG. Against the chances marks a win with xGD of −1.00 or lower, or a loss with +1.00 or higher. P marks a side with at least 0.50 xG from penalties.

Every result, all competitions →

West Ham United in Premier League

Attack

Defence

About the data

xG data
Provided by TheStatsAPI, and stored as published.
Derived metrics
xGD, per-match rates, rankings and rolling averages are calculated from the match data.
Model metrics
xPts is produced by our probability model.

Learn how our xG analytics work →

How the model works →