Bundesliga 2025/2026
Full coverage: shot-by-shot xG and match-by-match player figures.
- Matches
- 308 / 308
- Season complete
- Goals
- 992
- 3.22 per match
League leaders
-
Finished first
FC Bayern München
FCB
89 pts
34 played 16 points clear
-
Best attack
FC Bayern München
FCB
2.95 xG per match
100.39 xG in 34 matches
-
Best defence
Borussia Dortmund
BVB
1.15 xGA per match
39.08 xGA in 34 matches
-
Strongest underlying
FC Bayern München
FCB
+1.74 xGD per match
77.61 xPts · 1st on xPts
What the Bundesliga numbers say
FC Bayern München finished first on 89 points. Their +1.74 xG difference per match was also the best in the league. Borussia Dortmund conceded the least, allowing 1.15 xGA per match. Borussia Dortmund took 73 points from 60.62 xPts, the widest gap above expected in the league.
Table
| # | Team | P | Pts | xG | xGA | xGD | xPts |
|---|---|---|---|---|---|---|---|
| 1 | FC Bayern München | 34 | 89 | 100.39 | 41.24 | +59.15 | 77.61 |
| 2 | Borussia Dortmund | 34 | 73 | 63.21 | 39.08 | +24.13 | 60.62 |
| 3 | RB Leipzig | 34 | 65 | 66.43 | 50.39 | +16.04 | 56.95 |
| 4 | VfB Stuttgart | 34 | 62 | 60.30 | 50.72 | +9.58 | 54.72 |
| 5 | TSG Hoffenheim | 34 | 61 | 55.61 | 50.44 | +5.17 | 51.45 |
Where the table and the chances disagree
Actual vs xPts position
Higher in the table than on xPts
- FC Augsburg FCA 9th · 15th on xPts 6 above xPts rank
- Hamburger SV HSV 13th · 17th on xPts 4 above xPts rank
- Borussia M'gladbach BMG 12th · 14th on xPts 2 above xPts rank
Lower in the table than on xPts
- 1. FC Köln KOE 14th · 11th on xPts 3 below xPts rank
- VfL Wolfsburg WOB 16th · 13th on xPts 3 below xPts rank
- 1. FSV Mainz 05 M05 10th · 7th on xPts 3 below xPts rank
Points and goals against the chances
-
Most points above xPts
Actual points minus expected points based on match xG.
Borussia Dortmund
BVB
+12.38
73 pts from 60.62 xPts
-
Most points below xPts
Actual points minus expected points based on match xG.
1. FC Heidenheim
HDH
−11.79
26 pts from 37.79 xPts
-
Most goals above xG
Goals scored minus the xG of the chances taken.
FC Bayern München
FCB
+21.61
122 goals from 100.39 xG
-
Fewest conceded vs xGA
Goals conceded minus the xG of the chances allowed.
Hamburger SV
HSV
−6.56
54 conceded from 60.56 xGA
- Better than the chances
- Worse than the chances
A gap can come from finishing, goalkeeping, game state or chance. xG and xPts are model estimates, not the result a team deserved.
Attack and defence
Strong and weak mean above or below the league average, the dashed lines. Fewer xGA per match sits higher, so top-right is strong at both ends.FC Bayern München
P 34 · Pts 89 · 1st
xG/match 2.95 · xGA/match 1.21 · xGD/match +1.74
xPts 77.61
Open FC Bayern MünchenBorussia Dortmund
P 34 · Pts 73 · 2nd
xG/match 1.86 · xGA/match 1.15 · xGD/match +0.71
xPts 60.62
Open Borussia DortmundBayer 04 Leverkusen
P 34 · Pts 59 · 6th
xG/match 1.89 · xGA/match 1.35 · xGD/match +0.55
xPts 57.70
Open Bayer 04 LeverkusenRB Leipzig
P 34 · Pts 65 · 3rd
xG/match 1.95 · xGA/match 1.48 · xGD/match +0.47
xPts 56.95
Open RB LeipzigVfB Stuttgart
P 34 · Pts 62 · 4th
xG/match 1.77 · xGA/match 1.49 · xGD/match +0.28
xPts 54.72
Open VfB StuttgartTSG Hoffenheim
P 34 · Pts 61 · 5th
xG/match 1.64 · xGA/match 1.48 · xGD/match +0.15
xPts 51.45
Open TSG HoffenheimSC Freiburg
P 34 · Pts 47 · 7th
xG/match 1.42 · xGA/match 1.40 · xGD/match +0.03
xPts 46.79
Open SC Freiburg1. FSV Mainz 05
P 34 · Pts 40 · 10th
xG/match 1.62 · xGA/match 1.64 · xGD/match −0.03
xPts 48.58
Open 1. FSV Mainz 051. FC Köln
P 34 · Pts 32 · 14th
xG/match 1.51 · xGA/match 1.63 · xGD/match −0.11
xPts 43.24
Open 1. FC KölnEintracht Frankfurt
P 34 · Pts 44 · 8th
xG/match 1.35 · xGA/match 1.46 · xGD/match −0.11
xPts 44.80
Open Eintracht Frankfurt1. FC Union Berlin
P 34 · Pts 39 · 11th
xG/match 1.34 · xGA/match 1.53 · xGD/match −0.20
xPts 46.09
Open 1. FC Union BerlinBorussia M'gladbach
P 34 · Pts 38 · 12th
xG/match 1.25 · xGA/match 1.56 · xGD/match −0.31
xPts 39.44
Open Borussia M'gladbachSV Werder Bremen
P 34 · Pts 32 · 15th
xG/match 1.21 · xGA/match 1.60 · xGD/match −0.40
xPts 39.96
Open SV Werder BremenVfL Wolfsburg
P 36 · Pts 31 · 16th
xG/match 1.39 · xGA/match 1.80 · xGD/match −0.41
xPts 39.83
Open VfL Wolfsburg1. FC Heidenheim
P 34 · Pts 26 · 17th
xG/match 1.40 · xGA/match 1.88 · xGD/match −0.48
xPts 37.79
Open 1. FC HeidenheimFC Augsburg
P 34 · Pts 43 · 9th
xG/match 1.36 · xGA/match 1.87 · xGD/match −0.51
xPts 38.84
Open FC AugsburgHamburger SV
P 34 · Pts 38 · 13th
xG/match 1.20 · xGA/match 1.78 · xGD/match −0.58
xPts 36.25
Open Hamburger SVFC St. Pauli
P 34 · Pts 26 · 18th
xG/match 0.89 · xGA/match 1.68 · xGD/match −0.79
xPts 29.47
Open FC St. Pauli| Club | xG/match | xGA/match | xGD/match |
|---|---|---|---|
| FC Bayern München FCB | 2.95 | 1.21 | +1.74 |
| Borussia Dortmund BVB | 1.86 | 1.15 | +0.71 |
| Bayer 04 Leverkusen B04 | 1.89 | 1.35 | +0.55 |
| RB Leipzig RBL | 1.95 | 1.48 | +0.47 |
| VfB Stuttgart VFB | 1.77 | 1.49 | +0.28 |
| TSG Hoffenheim TSG | 1.64 | 1.48 | +0.15 |
| SC Freiburg SCF | 1.42 | 1.40 | +0.03 |
| 1. FSV Mainz 05 M05 | 1.62 | 1.64 | −0.03 |
| 1. FC Köln KOE | 1.51 | 1.63 | −0.11 |
| Eintracht Frankfurt SGE | 1.35 | 1.46 | −0.11 |
| 1. FC Union Berlin FCU | 1.34 | 1.53 | −0.20 |
| Borussia M'gladbach BMG | 1.25 | 1.56 | −0.31 |
| SV Werder Bremen SVW | 1.21 | 1.60 | −0.40 |
| VfL Wolfsburg WOB | 1.39 | 1.80 | −0.41 |
| 1. FC Heidenheim HDH | 1.40 | 1.88 | −0.48 |
| FC Augsburg FCA | 1.36 | 1.87 | −0.51 |
| Hamburger SV HSV | 1.20 | 1.78 | −0.58 |
| FC St. Pauli STP | 0.89 | 1.68 | −0.79 |
- Top 3 in the table
- Other clubs
- Above average at both ends
- Below average at both ends
All xG. Hover, focus or tap a dot for its figures.
Player leaders
Goals
- 1 Harry Kane 36 FCB 26.93 xG
- 2 Deniz Undav 19 VFB 16.30 xG
- 3 Serhou Guirassy 17 BVB 18.82 xG
xG
- 1 Harry Kane 26.93 FCB 36 goals
- 2 Serhou Guirassy 18.82 BVB 17 goals
- 3 Patrik Schick 17.32 B04 16 goals
xA
- 1 Michael Olise 16.60 FCB 19 assists
- 2 David Raum 11.89 RBL 7 assists
- 3 Romano Schmid 10.03 SVW 8 assists
xGI
- 1 Harry Kane 30.88 FCB 1.17 per 90
- 2 Michael Olise 27.90 FCB 1.08 per 90
- 3 Serhou Guirassy 22.16 BVB 0.85 per 90
Latest results
-
-
-
xG 1.48 – 3.50 Followed the xG
-
xG 2.53 – 3.71 Followed the xG
-
xG 0.49 – 2.74 Followed the xG