Bayern Munich won the Bundesliga for the 13th time in 14 years and 35th time overall. We have done an expected goals analysis of both the German Bundesliga and English Premier League this season and here is the recap for the former.

By the expected goals (xG) metric, Bayern far exceeded expectation by scoring 122 goals on the season, well past the their total xG of 90.64. they exceeded their average xG by 0.92 goals per game which was more than twice the second team in goals for performance in Eintract Frankfurt (0.43). Just six teams had an average goals per game above their average xG per game. The other four teams being Stuttgart, Borussia Dortmund, Hoffenheim, and Bayer Leverkusen. At the other end of the For Performance table was Mainz who were 0.24 average goals below their average xG per game.

As far as Against Performance, Hamburg outperformed their xG against the most as their actual average goals against was 1.59 versus an expected xG against per match of 1.86. By comparison, Bayern Munich outperformed their xG against per game by 0.18. At the other end, Eintract Frankfurt underperformed the worst at -0.34 meaning they allowed 0.34 more goals on average than expected.

We tested the xG against the expected results. If the difference between the two sides was 0.25 xG or lower, we expected the result to be a draw. By that metric, the most overachieving side was Hamburg SV. With their total xG for and against, they should have finished bottom of the Bundesliga on 23 points. However, actual goals count and they amassed 38 point in their first year back in the Bundesliga. Their actual goal difference was -14 compared to an xGD of -22.13. FC St. Pauli and Heidenheim were expected to amass 29 and 27 points, respectively, but both actually got 26 and are both relegated.

If we went by xG, Wolfsburg would’ve had 43 points and by ninth. Instead, they underperformed from a results standpoint the most and just got 29 points and now face a relegation playoff against SC Paderborn. The next worst underachiever was Union Berlin who were expected to gain 52 points, but got 39 in actuality. Bayern did exceed there expected points by four as they were expected to get 85 points, but got 89.

Two teams had the lowest xG in a match. Freiburg had an xG of 0.09 on Matchday 17 against RB Leipzig, while FC Augsburg had the same on Matchday 34 against Union Berlin. Both teams lost obviously–Freiburg 2-0 to Leipzig and Augsburg 4-0 to Union. Bayern had the highest xG in a match in Matchday 21 against Hoffenheim. Bayern won that one, 5-1.

There are just a few of the observations we saw this season in the Bundesliga. Feel free to click on the link to the dashboard and make your own observations.

Follow us on bluesky

Follow us on Twitter

Share and Enjoy !

Shares
Dan Gaichas

Recent Posts

Philadelphia Union and Columbus Crew end in draw, 1-1

Chester, PA May 16, 2026 The Philadelphia Union are struggling.  At the start of Saturday's…

2 hours ago

Rough week for LAFC

The good news for LAFC is that for the first time since the last week…

1 day ago

Miami secure first win at the Nu Stadium

Inter Miami 2 – 0 Portland Timbers MIAMI, FL--A Lionel Messi goal and an assist…

1 day ago

Sounders’ unbeaten streak snapped by Galaxy

Seattle Sounders FC 0-2 LA Galaxy SEATTLE, WA--It had to happen sometime, and it happened…

3 days ago

Can the Portland Timbers decipher Messi’s game

  (12) Portland Timbers (4-6-2, 14 points) vs (3) Inter Miami SC (7-2-4, 25 points)…

3 days ago

New England Revolution Edge Minnesota United FC 2-1 Behind Gil, Langoni & Turner Heroics

FOXBOROUGH, MA – New England Revolution (8-1-4, 25 pts.) were victorious 2-1 over Minnesota United…

3 days ago