xgEdge

Expected goals

Eintracht Frankfurt expected goals (xG) 2026/2027

Bundesliga · after 4 matches · updated 1 Oct

Eintracht Frankfurt's attacking and defensive expected goals in Bundesliga 2026/2027, compared with the results they produced and with the rest of the competition.

Eintracht Frankfurt xG and xGA per match

Every match ↓
Attack
1.98 xG per match
#6/18
Attack (xG per match) across Bundesliga, best first
Rank Club xG per match
#1 FC Bayern München 3.14
#2 Bayer 04 Leverkusen 2.48
#3 1. FSV Mainz 05 2.24
#4 SC Freiburg 2.22
#5 RB Leipzig 2.22
#6 Eintracht Frankfurt 1.98
#7 1. FC Köln 1.97
#8 VfB Stuttgart 1.89
#9 TSG Hoffenheim 1.83
=10 Borussia M'gladbach 1.72
=10 FC Augsburg 1.72
#12 Borussia Dortmund 1.66
#13 SV 07 Elversberg 1.38
#14 SV Werder Bremen 1.33
#15 FC Schalke 04 1.32
#16 1. FC Union Berlin 1.13
#17 Hamburger SV 0.91
#18 SC Paderborn 07 0.67
League avg
1.77
Total
7.91 4 matches
Defence
2.05 xGA per match
#13/18
Defence (xGA per match) across Bundesliga, best first
Rank Club xGA per match
#1 FC Bayern München 0.57
#2 SC Freiburg 0.91
#3 Borussia Dortmund 0.93
#4 Bayer 04 Leverkusen 0.94
#5 RB Leipzig 1.35
#6 SC Paderborn 07 1.43
#7 1. FSV Mainz 05 1.55
#8 SV Werder Bremen 1.55
#9 TSG Hoffenheim 1.70
#10 1. FC Köln 1.98
#11 SV 07 Elversberg 2.02
#12 Hamburger SV 2.04
#13 Eintracht Frankfurt 2.05
#14 FC Schalke 04 2.11
#15 FC Augsburg 2.30
#16 1. FC Union Berlin 2.70
#17 VfB Stuttgart 2.75
#18 Borussia M'gladbach 2.92
League avg
1.77
Total
8.18 4 matches
xG difference
-0.07 xGD per match
#9/18
xG difference (xGD per match) across Bundesliga, best first
Rank Club xGD per match
#1 FC Bayern München +2.57
#2 Bayer 04 Leverkusen +1.54
#3 SC Freiburg +1.31
#4 RB Leipzig +0.86
#5 Borussia Dortmund +0.73
#6 1. FSV Mainz 05 +0.69
#7 TSG Hoffenheim +0.13
#8 1. FC Köln -0.01
#9 Eintracht Frankfurt -0.07
#10 SV Werder Bremen -0.22
#11 FC Augsburg -0.58
#12 SV 07 Elversberg -0.64
#13 SC Paderborn 07 -0.77
#14 FC Schalke 04 -0.79
#15 VfB Stuttgart -0.86
#16 Hamburger SV -1.12
#17 Borussia M'gladbach -1.20
#18 1. FC Union Berlin -1.57
League avg
0.00
Total
-0.27 4 matches
Expected points Model — Model output — computed from each match's xG, not a result. How xPts works →
1.36 xPts per match
#9/18
Expected points (xPts per match) across Bundesliga, best first
Rank Club xPts per match
#1 FC Bayern München 2.76
#2 Bayer 04 Leverkusen 2.34
#3 SC Freiburg 2.26
#4 Borussia Dortmund 1.95
#5 RB Leipzig 1.85
#6 1. FSV Mainz 05 1.82
#7 TSG Hoffenheim 1.48
#8 1. FC Köln 1.40
#9 Eintracht Frankfurt 1.36
#10 SV Werder Bremen 1.16
#11 VfB Stuttgart 1.01
#12 FC Augsburg 0.99
#13 SV 07 Elversberg 0.98
#14 FC Schalke 04 0.92
#15 Borussia M'gladbach 0.83
#16 SC Paderborn 07 0.72
#17 Hamburger SV 0.71
#18 1. FC Union Berlin 0.70
League avg
1.40
Total
5.45 vs 5 actual pts

Early-season figures: after 4 matches, per-match rates can move quickly.

What the xG says

Eintracht Frankfurt's underlying numbers sit close to the Bundesliga average. They rank #9 for xG difference at -0.07 per match, built on high chance quality rather than low shot volume. After only 4 matches, treat every figure here as provisional.

Actual vs expected

Measure Actual Expected Difference Reading
Goals vs xG Includes 1.10 xG from penalties
9 7.91 +1.09 Too early to read
10 8.18 +1.82 Too early to read

Select a row to chart it across the season.

Goals minus xG, match by match

Eintracht Frankfurt are 1.09 goals above their xG after 4 matches. The gap was widest at +1.53, against 1. FC Union Berlin on Sat 29/08.

Goals
9
xG
7.91
Gap
+1.09
Sat 29/08 Sun 06/09 Sat 12/09 Sat 19/09 -1 0 +1 +2 +1.53 +0.31 +1.27 +1.09 +1.53 -1.22 +0.96 -0.18 Running gap goals − xG Each match goals − xG
Eintracht Frankfurt: Goals vs xG, the gap after every match with xG
Date Opponent Goals xG Match gap Running gap
Sat 29/08 1. FC Union Berlin 3 1.47 +1.53 +1.53
Sun 06/09 FC Augsburg 1 2.22 -1.22 +0.31
Sat 12/09 1. FSV Mainz 05 3 2.04 +0.96 +1.27
Sat 19/09 SC Freiburg 2 2.18 -0.18 +1.09

Goals vs xG ranking → Expected points ranking →

Eintracht Frankfurt xG trend

Current form -0.24 npxGD per match

All 4 matches with xG so far — the window fills at 6.

Out-created the opponent in 2 of 4 matches. The worst was against SC Freiburg on Sat 19/09 (-1.32).

npxG · last 4
1.70
npxGA · last 4
1.94
-2 -1 0 +1 -0.59 Sat 29/08 +0.44 Sun 06/09 +0.52 Sat 12/09 -1.32 Sat 19/09 -0.24 season avg
Eintracht Frankfurt: 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 29/08 1. FC Union Berlin 1.37 1.96 -0.59 -0.59
Sun 06/09 FC Augsburg 1.87 1.43 +0.44 -0.07
Sat 12/09 1. FSV Mainz 05 2.15 1.63 +0.52 +0.12
Sat 19/09 SC Freiburg 1.42 2.74 -1.32 -0.24

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.70 npxG and 1.94 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 13 hardest of 18 in Bundesliga
−0.10 xG vs league average
Over 4 league matches
Opponents behind the figures

Season so far

−0.10 xG vs league average · over 4 matches · tied number 13 hardest of 18

  1. SC Freiburg Home +0.13
  2. 1. FSV Mainz 05 Away +0.24
  3. FC Augsburg Home −0.39
  4. 1. FC Union Berlin Away −0.38

League schedule strength → How this is calculated →

Eintracht Frankfurt shots and chance quality

Low volume, high quality. Eintracht Frankfurt take 13.8 shots a match (league 15.5) at 0.12 npxG a shot (league 0.11), =12 in Bundesliga for volume and #5 for quality. 76% of their shots come from inside the box (league 68%), and set pieces produce 26% of their npxG (league 26%).

Attack

Shot volume
13.8 shots per match
=12/18
Shot volume (shots per match) across Bundesliga, best first
Rank Club shots per match
#1 Bayer 04 Leverkusen 22.5
#2 FC Bayern München 21.8
=3 SC Freiburg 19.0
=3 TSG Hoffenheim 19.0
#5 RB Leipzig 18.8
#6 1. FSV Mainz 05 18.3
#7 1. FC Köln 17.3
#8 Borussia M'gladbach 16.5
#9 VfB Stuttgart 15.3
#10 Borussia Dortmund 14.5
#11 FC Augsburg 14.0
=12 Eintracht Frankfurt 13.8
=12 SV Werder Bremen 13.8
=14 1. FC Union Berlin 11.8
=14 FC Schalke 04 11.8
=14 SC Paderborn 07 11.8
#17 SV 07 Elversberg 10.3
#18 Hamburger SV 9.5
League avg
15.5
Total
55 shots from 4 matches
Chance quality
0.12 npxG per shot
#5/18
Chance quality (npxG per shot) across Bundesliga, best first
Rank Club npxG per shot
#1 SV 07 Elversberg 0.14
#2 FC Bayern München 0.13
#3 RB Leipzig 0.13
#4 FC Augsburg 0.12
#5 Eintracht Frankfurt 0.12
#6 1. FSV Mainz 05 0.12
#7 Borussia Dortmund 0.12
#8 FC Schalke 04 0.11
#9 VfB Stuttgart 0.11
#10 SC Freiburg 0.11
#11 Bayer 04 Leverkusen 0.11
#12 1. FC Köln 0.11
#13 1. FC Union Berlin 0.10
#14 Hamburger SV 0.10
#15 TSG Hoffenheim 0.08
#16 SV Werder Bremen 0.08
#17 Borussia M'gladbach 0.08
#18 SC Paderborn 07 0.06
League avg
0.11
Total
6.81 npxG from 55 shots

Defence

Shots allowed
19.0 shots per match
#16/18
Shots allowed (shots per match) across Bundesliga, best first
Rank Club shots per match
#1 FC Bayern München 5.8
#2 Bayer 04 Leverkusen 9.0
#3 SC Freiburg 9.5
#4 Borussia Dortmund 12.0
#5 1. FSV Mainz 05 12.5
#6 RB Leipzig 13.8
#7 TSG Hoffenheim 14.5
#8 SV Werder Bremen 15.0
#9 1. FC Köln 15.8
#10 FC Schalke 04 17.5
#11 VfB Stuttgart 18.0
=12 Hamburger SV 18.5
=12 SC Paderborn 07 18.5
=14 1. FC Union Berlin 18.8
=14 Borussia M'gladbach 18.8
#16 Eintracht Frankfurt 19.0
#17 FC Augsburg 20.8
#18 SV 07 Elversberg 21.8
League avg
15.5
Total
76 shots allowed from 4 matches
Chance quality allowed
0.10 npxGA per shot
#10/18
Chance quality allowed (npxGA per shot) across Bundesliga, best first
Rank Club npxGA per shot
#1 Borussia Dortmund 0.07
#2 SC Freiburg 0.07
#3 SC Paderborn 07 0.08
#4 SV 07 Elversberg 0.09
#5 SV Werder Bremen 0.09
#6 RB Leipzig 0.09
#7 FC Augsburg 0.10
#8 Bayer 04 Leverkusen 0.10
#9 1. FSV Mainz 05 0.10
#10 Eintracht Frankfurt 0.10
#11 FC Bayern München 0.10
#12 1. FC Köln 0.11
#13 TSG Hoffenheim 0.12
#14 Hamburger SV 0.12
#15 FC Schalke 04 0.12
#16 1. FC Union Berlin 0.13
#17 VfB Stuttgart 0.15
#18 Borussia M'gladbach 0.16
League avg
0.11
Total
7.76 npxGA from 76 shots

Shot profile

Shot location

76% inside the box

League avg 68%

From 42 of 55 shots over 4 matches

Early-season figure: after 4 matches, the share can move quickly.

Shots allowed, location

68% allowed inside the box

League avg 68%

From 52 of 76 shots allowed over 4 matches

Early-season figure: after 4 matches, the share can move quickly.

Where the npxG comes from

74% open play · 26% set pieces

League avg 26% set pieces

From 1.8 of 6.9 npxG over 4 matches

Early-season figure: after 4 matches, the share can move quickly.

Where the npxG allowed comes from

53% open play · 47% set pieces

League avg 26% set pieces

From 3.6 of 7.6 npxG allowed over 4 matches

Early-season figure: after 4 matches, the share can move quickly.

Eintracht Frankfurt home and away xG

Eintracht Frankfurt per-match figures at home and away
Measure Home only 2 matches with xG Away only 2 matches with xG
Matches 2 2
xG / match 2.20 1.76
xGA / match 2.11 1.98
xGD / match +0.09 -0.23
xPts / match Model — Model output — computed from each match's xG, not a result. How xPts works → 1.51 1.21

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

Every Eintracht Frankfurt match by xG

Window
Season Last 10 Last 5
Venue

Newest first. The dot is xG and the ring is xGA, on one scale from 0 to 3.09. 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 →

Eintracht Frankfurt in Bundesliga

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 →