2. Bundesliga 2026/27: all 18 clubs on the same numbers

Projection built 2026-08-06 13:24 UTC; everything else read 2026-08-06 13:33 UTC · every figure per game or per cent, so clubs from divisions with different fixture counts sit in one table.

The 18 clubs starting this season did not all come from the same place: 13 from the 2. Bundesliga · 3 from the Bundesliga · 2 from the 3. Liga. The club order is the same in all eight tables, sorted by our projection, so you can follow one club straight down the page — from what it did last season to what we expect of it.

Every club's projected points per game for 2026/27 with
its measured error band, colour-coded by the division it arrives from.
Projected points per game with the error we measured on the method itself (±0.225 a game). The bands overlap almost everywhere, which is the honest picture of what a projection for this division can and cannot tell you.

1 · Where they come from, and last season's record

ClubCame fromPosPlayedW–D–LPts/gameHome pts/gAway pts/gLast 6 pts/g
WolfsburgBundesliga16347–8–190.850.591.121.33
St. PauliBundesliga18346–8–200.771.000.530.17
HeidenheimBundesliga17346–8–200.771.000.531.67
Hannover2. Bundesliga43416–12–61.761.591.941.67
Bochum2. Bundesliga93411–11–121.291.710.881.83
Holstein Kiel2. Bundesliga123411–8–151.211.291.122.00
Kaiserslautern2. Bundesliga63416–4–141.532.001.061.50
Karlsruher SC2. Bundesliga103412–8–141.291.760.821.17
Darmstadt2. Bundesliga53413–13–81.532.061.000.33
Hertha BSC2. Bundesliga73414–9–111.501.351.650.67
1. FC Nürnberg2. Bundesliga83412–10–121.351.820.881.50
Magdeburg2. Bundesliga143412–3–191.151.001.291.50
Greuther Fürth2. Bundesliga163410–7–171.091.350.821.33
Braunschweig2. Bundesliga153410–7–171.091.350.821.17
Arminia Bielefeld2. Bundesliga133410–9–151.151.530.761.33
Dynamo Dresden2. Bundesliga113411–8–151.211.411.002.00
VfL Osnabrück3. Liga13824–8–62.102.002.212.67
Energie Cottbus3. Liga23821–9–81.902.111.682.00
These rows are not like for like, and that is the point. The clubs down from a higher division made their numbers against stronger opposition; the ones promoted made theirs against weaker, over a different number of games. The projection in the last table is where that is corrected — it applies the measured move between divisions rather than taking last season at face value.

2 · Goals against expected goals

ClubScored /gxG /gScored − xGConceded /gxGA /gConceded − xGAGoal diff /gStats from
Wolfsburg1.321.41-0.092.031.81+0.21-0.7034 of 34
St. Pauli0.850.92-0.061.761.68+0.08-0.9134 of 34
Heidenheim1.211.41-0.202.121.89+0.23-0.9134 of 34
Hannover1.761.75+0.011.291.21+0.09+0.4733 of 34
Bochum1.441.65-0.211.381.52-0.14+0.0634 of 34
Holstein Kiel1.291.23+0.061.411.69-0.28-0.1234 of 34
Kaiserslautern1.531.43+0.101.381.51-0.13+0.1534 of 34
Karlsruher SC1.561.30+0.261.882.02-0.14-0.3234 of 34
Darmstadt1.681.79-0.111.321.69-0.37+0.3534 of 34
Hertha BSC1.381.44-0.051.291.72-0.43+0.0934 of 34
1. FC Nürnberg1.381.27+0.111.321.41-0.08+0.0633 of 34
Magdeburg1.531.82-0.291.711.49+0.21-0.1833 of 34
Greuther Fürth1.441.29+0.152.001.62+0.38-0.5634 of 34
Braunschweig1.061.25-0.191.591.47+0.12-0.5334 of 34
Arminia Bielefeld1.561.59-0.031.501.36+0.14+0.0634 of 34
Dynamo Dresden1.591.48+0.111.561.33+0.23+0.0334 of 34
VfL Osnabrück1.741.58+0.160.901.14-0.25+0.8430 of 38
Energie Cottbus1.901.92-0.031.341.37-0.03+0.5530 of 38

A club scoring above its xG finished better than the chances it made; a club conceding above its xGA was punished more than the chances it gave up. It is a description of last season, not a forecast of the next one, and the last column says on how many games the underlying figures were actually measured.

3 · What their matches looked like

ClubClean sheetsFailed to scoreBoth scored3+ goalsGoals/gameBiggest winHeaviest defeatLongest unbeatenLongest winless
Wolfsburg6%24%74%65%3.353–11–8312
St. Pauli15%38%56%56%2.622–00–5310
Heidenheim3%35%62%68%3.323–10–6315
Hannover29%12%65%68%3.063–00–394
Bochum24%15%68%50%2.823–01–4106
Holstein Kiel26%15%62%53%2.713–01–468
Kaiserslautern26%29%47%59%2.913–00–443
Karlsruher SC15%29%62%76%3.444–10–456
Darmstadt29%18%62%56%3.004–01–3139
Hertha BSC35%26%47%47%2.683–01–666
1. FC Nürnberg15%26%62%53%2.715–10–365
Magdeburg21%35%47%53%3.243–00–457
Greuther Fürth15%29%62%68%3.443–00–647
Braunschweig18%26%59%50%2.652–01–446
Arminia Bielefeld18%21%65%53%3.066–11–448
Dynamo Dresden18%15%71%71%3.156–00–249
VfL Osnabrück50%18%42%45%2.634–00–4122
Energie Cottbus26%16%66%68%3.245–01–4103

Computed from our own match records, with promotion and relegation play-off legs excluded so the games are the league season and nothing else.

4 · Halves, first goals and half-time positions

ClubScored 1st/2nd halfAfter the breakConceded 1st/2ndAvg 1st goalAvg 1st concededLed at HTOf those, wonTrailed at HTOf those, won
Wolfsburg22/2351%26/4343'54'1050%120
St. Pauli11/1862%23/3754'50'771%160
Heidenheim16/2561%33/3954'52'743%152
Hannover27/3153%18/2549'52'1369%62
Bochum22/2755%21/2652'51'978%110
Holstein Kiel21/2352%24/2454'48'1070%100
Kaiserslautern22/3058%19/2852'56'1090%90
Karlsruher SC17/3668%27/3756'51'771%131
Darmstadt23/3460%25/2050'43'650%92
Hertha BSC22/2553%17/2753'55'1258%70
1. FC Nürnberg22/2250%18/2648'57'1060%61
Magdeburg24/2753%24/3255'56'989%130
Greuther Fürth21/2857%29/3953'49'875%130
Braunschweig19/1747%24/3048'52'978%150
Arminia Bielefeld21/3260%24/2750'45'956%122
Dynamo Dresden32/2241%23/3046'52'1560%90
VfL Osnabrück21/3462%15/1652'44'1191%83
Energie Cottbus22/3058%15/2453'50'1164%52

5 · Style and discipline

ClubPossessionShots /gOn target /gAccuracyCorners /gOffsides /gFouls /gYellows /gReds, season
Wolfsburg45.3%11.94.235%4.41.311.52.006
St. Pauli44.4%10.33.433%4.72.09.61.595
Heidenheim42.3%11.43.632%4.51.99.81.503
Hannover56.6%14.05.439%6.31.912.42.005
Bochum45.8%13.94.633%5.01.613.43.163
Holstein Kiel51.7%11.93.631%5.21.514.32.918
Kaiserslautern47.6%12.74.636%4.71.312.22.556
Karlsruher SC48.4%11.94.235%4.61.612.22.655
Darmstadt51.4%13.94.935%4.81.411.51.859
Hertha BSC48.7%12.54.335%4.41.912.42.397
1. FC Nürnberg49.4%12.34.335%5.11.112.12.333
Magdeburg54.1%15.45.334%5.21.811.42.454
Greuther Fürth47.5%11.94.134%4.51.711.22.034
Braunschweig43.8%12.23.730%4.71.612.52.2412
Arminia Bielefeld51.9%14.84.631%6.12.112.92.067
Dynamo Dresden50.1%12.94.333%5.01.610.81.947
VfL Osnabrück45.5%12.34.940%5.31.612.41.900
Energie Cottbus52.4%13.75.037%6.21.112.21.906

6 · Who is in the squad now

ClubPlayersAvg age23 or underNationalitiesTop scorer last seasonMost minutes last seasonAvg ratingRatings known
Wolfsburg3425.71414Mohamed El Amine Amoura (8)Kamil Grabara (3060)6.6730 of 37
St. Pauli2625.6712Danel Sinani (5)Nikola Vasilj (3060)6.6724 of 32
Heidenheim2825.885Budu Zivzivadze (6)Patrick Mainka (3060)6.7428 of 33
Hannover2823.51310Benjamin Källman (14)Nahuel Noll (2970)6.8326 of 29
Bochum2625.7108Philipp Hofmann (12)Timo Horn (3060)6.7832 of 39
Holstein Kiel3223.51710Phil Harres (10)David Zec (2734)6.7831 of 35
Kaiserslautern2724.0119Ivan Prtajin (11)Julian Krahl (2880)6.7234 of 36
Karlsruher SC2723.8157Marvin Wanitzek (15)Marvin Wanitzek (3060)6.6629 of 30
Darmstadt2325.7511Isac Lidberg (17)Marcel Schuhen (3060)6.8527 of 30
Hertha BSC2324.1126Fabian Reese (10)Tjark Ernst (2970)6.7731 of 38
1. FC Nürnberg2623.2166Mohamed Ali Zoma (14)Jan Reichert (2880)6.7952 of 62
Magdeburg2425.5107Mateusz Żukowski (17)Dominik Reimann (2970)6.7929 of 37
Greuther Fürth2924.2145Noel Futkeu (19)Branimir Hrgota (2765)6.6434 of 42
Braunschweig2923.6165Mehmet Aydın (5)Ron-Thorben Hoffmann (2880)6.6234 of 39
Arminia Bielefeld2425.644Joel Grodowski (12)Mael Corboz (2978)6.7530 of 35
Dynamo Dresden2725.284Vincent Vermeij (11)Tim Schreiber (2430)6.7930 of 33
VfL Osnabrück2425.1114Robin Meißner (12)Lukas Jonsson (2430)6.8625 of 25
Energie Cottbus2525.595Erik Engelhardt (16)Erik Engelhardt (2149)6.8830 of 32

Squad as our club feed holds it today, with last season's goals and minutes attached to the players who are still there. Ratings exist for part of each squad only, so the column next to them says how much of the club the average actually covers.

7 · Value and summer business

ClubSquad valueMost valuableValues knownInBack from loanOutMinutes retained
Wolfsburg€186.3m€24.0m26 of 34871082%
St. Pauli€41.1m€9.7m17 of 2632758%
Heidenheim€31.7m€3.2m21 of 2844570%
Hannover€23.1m€3.7m17 of 2844763%
Bochum€14.4m€2.9m16 of 26103847%
Holstein Kiel€26.3m€3.2m17 of 32861274%
Kaiserslautern€23.6m€5.2m18 of 2766775%
Karlsruher SC€24.2m€10.8m15 of 27101860%
Darmstadt€19.9m€3.3m18 of 2384867%
Hertha BSC€19.9m€3.2m16 of 23031252%
1. FC Nürnberg€24.9m€8.4m13 of 26681051%
Magdeburg€15.9m€5.7m15 of 24811153%
Greuther Fürth€15.2m€3.6m18 of 29861045%
Braunschweig€15.4m€2.2m16 of 29125874%
Arminia Bielefeld€17.7m€1.9m22 of 2435684%
Dynamo Dresden€13.7m€2.7m18 of 271171062%
VfL Osnabrück€5.4m€960k12 of 24941177%
Energie Cottbus€5.7m€975k15 of 25901258%
Squad value is the weakest column on this page. Values exist for 310 of the 482 players in these squads and the gaps are not spread evenly — a club whose total looks low may simply be a club we know less about, which is what "values known" is there to tell you. Transfers are counted from 1 May, and our club feed returns only each club's most recent movements, so the in/out counts are a floor rather than a full window.

8 · What our projection expects

ClubProjected pts/gOver 34 gamesBand, pointsGroundCapacityHead coach
Wolfsburg1.555345–60Volkswagen Arena30 000Dieter Hecking
St. Pauli1.515144–59Millerntor-Stadion29 564Alexander Blessin
Heidenheim1.515144–59Voith-Arena15 000Frank Schmidt
Hannover1.434941–56Heinz von Heiden-Arena49 951Christian Titz
Bochum1.434941–56Vonovia Ruhrstadion27 599Uwe Rosler
Holstein Kiel1.414840–56Holstein-Stadion15 034Tim Walter
Kaiserslautern1.404840–55Fritz-Walter-Stadion49 327Torsten Lieberknecht
Karlsruher SC1.394740–55BBBank Wildpark34 302not recorded
Darmstadt1.394740–55Merck-Stadion am Böllenfalltor17 810Florian Kohfeldt
Hertha BSC1.394739–55Olympiastadion Berlin74 667Stefan Leitl
1. FC Nürnberg1.374739–54Max-Morlock-Stadion50 000Miroslav Klose
Magdeburg1.364638–54Avnet Arena30 000Petrik Sander
Greuther Fürth1.334538–53Sportpark Ronhof Thomas Sommer18 000Heiko Vogel
Braunschweig1.314537–52Eintracht-Stadion24 474Lars Kornetka
Arminia Bielefeld1.204133–48SchücoArena27 300Oliver Kirch
Dynamo Dresden1.204133–48Rudolf-Harbig-Stadion32 066Thomas Stamm
VfL Osnabrück1.133831–46Bremer Brücke16 667Timo Schultz
Energie Cottbus1.063629–44LEAG Energie Stadion22 528Claus-Dieter Wollitz
How wrong this is, measured. Holding out one season at a time and predicting it from the others, the projection misses by 0.225 points a game — 7.7 points over 34 games. Handing every club the league average instead misses by 0.252; assuming last season repeats misses by 0.374. The band is that measured error, not a confidence interval and not a prediction of final position.

Who leads what

All from last season, in whichever division the club played it.

What these numbers do not know

No transfers are priced in beyond counting them, no injuries, no coaching changes, no budgets, no pre-season. Attendances are not in our source for this division, so the capacity column is the ground rather than the crowd. Pass accuracy is not shown because the figure our source returns for it is not a percentage and we will not print a number we cannot stand behind. And this is not a betting product: where we can check this family of model against closing odds it loses to the market.

Club by club, with full squads and every recorded arrival and departure: 2. Bundesliga 2026/27 squads and projection. The complete 2025/26 season for this division — every table, every match, every player who played, in Excel and PDF — is in the free season packs.