xgEdge

Expected goals

TSG Hoffenheim expected goals (xG) 2026/2027

Bundesliga · after 4 matches · updated 4 Oct

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

TSG Hoffenheim xG and xGA per match

Every match ↓
Attack
1.83 xG per match
#9/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.31 4 matches
Defence
1.70 xGA per match
#9/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
6.81 4 matches
xG difference
+0.13 xGD per match
#7/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.50 4 matches
Expected points Model — Model output — computed from each match's xG, not a result. How xPts works →
1.48 xPts per match
#7/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.91 vs 3 actual pts

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

What the xG says

TSG Hoffenheim's underlying numbers sit close to the Bundesliga average. They rank #7 for xG difference at +0.13 per match, built on elite shot volume rather than low chance quality. After only 4 matches, treat every figure here as provisional.

Actual vs expected

Measure Actual Expected Difference Reading
Goals vs xG Includes 1.17 xG from penalties
7 7.31 -0.31 Too early to read
10 6.81 +3.19 Too early to read

Select a row to chart it across the season.

Goals minus xG, match by match

TSG Hoffenheim are 0.31 goals below their xG after 4 matches.

Goals
7
xG
7.31
Gap
-0.31
Sat 29/08 Sat 05/09 Sat 12/09 Sun 20/09 -1 0 +1 +0.12 +0.95 +0.19 -0.31 +0.12 +0.83 -0.76 -0.50 Running gap goals − xG Each match goals − xG
TSG Hoffenheim: Goals vs xG, the gap after every match with xG
Date Opponent Goals xG Match gap Running gap
Sat 29/08 1. FC Köln 2 1.88 +0.12 +0.12
Sat 05/09 Borussia Dortmund 2 1.17 +0.83 +0.95
Sat 12/09 VfB Stuttgart 2 2.76 -0.76 +0.19
Sun 20/09 SC Paderborn 07 1 1.50 -0.50 -0.31

Goals vs xG ranking → Expected points ranking →

TSG Hoffenheim xG trend

Current form -0.16 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 Borussia Dortmund on Sat 05/09 (-0.97).

npxG · last 4
1.54
npxGA · last 4
1.70
-1 0 +1 -0.75 Sat 29/08 -0.97 Sat 05/09 +0.37 Sat 12/09 +0.70 Sun 20/09 -0.16 season avg
TSG Hoffenheim: 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 Köln 0.96 1.71 -0.75 -0.75
Sat 05/09 Borussia Dortmund 1.18 2.15 -0.97 -0.86
Sat 12/09 VfB Stuttgart 2.60 2.23 +0.37 -0.45
Sun 20/09 SC Paderborn 07 1.40 0.70 +0.70 -0.16

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.54 npxG and 1.70 npxGA per match. Current form is the same difference over the last 6 matches with xG.

Form ranking →

Strength of schedule

Season so far
number 7 hardest of 18 in Bundesliga
+0.08 xG vs league average
Over 4 league matches
Opponents behind the figures

Season so far

+0.08 xG vs league average · over 4 matches · number 7 hardest of 18

  1. SC Paderborn 07 Away −0.28
  2. VfB Stuttgart Home +0.17
  3. Borussia Dortmund Home +0.35
  4. 1. FC Köln Away +0.07

League schedule strength → How this is calculated →

TSG Hoffenheim shots and chance quality

High volume, low quality. TSG Hoffenheim take 19.0 shots a match (league 15.5) at 0.08 npxG a shot (league 0.11), =3 in Bundesliga for volume and #15 for quality. 62% of their shots come from inside the box (league 68%), and set pieces produce 17% of their npxG (league 26%).

Attack

Shot volume
19.0 shots per match
=3/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
76 shots from 4 matches
Chance quality
0.08 npxG per shot
#15/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.14 npxG from 76 shots

Defence

Shots allowed
14.5 shots per match
#7/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
58 shots allowed from 4 matches
Chance quality allowed
0.12 npxGA per shot
#13/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
6.79 npxGA from 58 shots

Shot profile

Shot location

62% inside the box

League avg 68%

From 47 of 76 shots over 4 matches

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

Shots allowed, location

74% allowed inside the box

League avg 68%

From 43 of 58 shots allowed over 4 matches

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

Where the npxG comes from

83% open play · 17% set pieces

League avg 26% set pieces

From 1.1 of 6.2 npxG over 4 matches

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

Where the npxG allowed comes from

75% open play · 25% set pieces

League avg 26% set pieces

From 1.6 of 6.6 npxG allowed over 4 matches

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

TSG Hoffenheim home and away xG

TSG Hoffenheim 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 1.97 1.69
xGA / match 2.09 1.32
xGD / match -0.12 +0.38
xPts / match Model — Model output — computed from each match's xG, not a result. How xPts works → 1.27 1.69

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

Every TSG Hoffenheim 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.00. 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 →

TSG Hoffenheim 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 →