2. Bundesliga: 2026/27 season forecast
10,000 simulations · 243 matches to play · updated 13 October 2026
The model played the remaining 243 matches 10,000 times. Hertha BSC have the best chance to win the title: 49%, 1. FC Nürnberg 22%. Closest to the drop: Karlsruher SC (30%).
Race for the title
| Date | Hertha BSC | 1. FC Nürnberg | Arminia Bielefeld | Hannover 96 | Dynamo Dresden | Bochum |
|---|---|---|---|---|---|---|
| 10 August | 7% | 18% | 5% | 11% | 7% | 7% |
| 17 August | 12% | 19% | 12% | 6% | 8% | 8% |
| 24 August | 13% | 18% | 11% | 6% | 8% | 8% |
| 31 August | 19% | 24% | 6% | 9% | 4% | 4% |
| 7 September | 23% | 25% | 5% | 7% | 2% | 5% |
| 14 September | 32% | 29% | 3% | 4% | 2% | 4% |
| 21 September | 41% | 29% | 1% | 3% | 1% | 2% |
| 28 September | 41% | 29% | 1% | 4% | 1% | 2% |
| 5 October | 42% | 28% | 1% | 4% | 1% | 2% |
| 12 October | 49% | 22% | 1% | 2% | <1% | 1% |
| 13 October | 49% | 22% | 2% | 2% | <1% | 1% |
Chances of every team
Sorted by projected points. ▲▼ — change in percentage points over the last week. “Run-in” — how hard the remaining games are, 1 = the hardest. Upper zones include the ones above: “Up or play-offs” counts “Promotion” too.
| # | Team | Pts | Proj. | Run-in | Title | Promotion | Up or play-offs | Play-out | Relegation |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Hertha BSC | 21 (7) | 68 | 18 | 49%▲7 | 70%▲6 | 80%▲4 | <1% | <1% |
| 2 | 1. FC Nürnberg | 17 (7) | 61 | 16 | 22%▼6 | 43%▼8 | 58%▼7 | <1% | <1% |
| 3 | FC Heidenheim | 14 (7) | 54 | 12 | 6%▼1 | 17%▼2 | 29%▼1 | 1% | 2% |
| 4 | Wolfsburg | 12 (7) | 53 | 11 | 6%▲2 | 16%▲4 | 26%▲6 | 2% | 2%▼1 |
| 5 | Magdeburg | 13 (7) | 53 | 15 | 5%▲2 | 14%▲5 | 24%▲8 | 2%▼1 | 2%▼2 |
| 6 | Kaiserslautern | 12 (7) | 52 | 9 | 4%▲1 | 11%▲2 | 21%▲4 | 2%▼1 | 2% |
| 7 | Hannover 96 | 7 (7) | 47 | 13 | 2%▼2 | 5%▼5 | 11%▼9 | 5%▲2 | 6%▲2 |
| 8 | Arminia Bielefeld | 8 (7) | 47 | 7 | 2%▲1 | 6%▲3 | 12%▲5 | 4%▼2 | 6%▼5 |
| 9 | Bochum | 7 (7) | 45 | 10 | 1%▼1 | 3%▼4 | 7%▼6 | 5%▲2 | 7%▲3 |
| 10 | St. Pauli | 10 (7) | 45 | 2 | 1% | 3%▲1 | 7%▲3 | 6%▼2 | 9%▼4 |
| 11 | Eintracht Braunschweig | 7 (7) | 43 | 8 | 1% | 3%▲1 | 6%▲2 | 7%▼1 | 14%▼4 |
| 12 | Greuther Fürth | 6 (7) | 42 | 17 | <1%▼1 | 2%▼1 | 4%▼2 | 8%▲1 | 15%▲2 |
| 13 | VfL Osnabrück | 8 (7) | 41 | 5 | <1% | 1%▼1 | 3%▼1 | 8%▼1 | 19%▼1 |
| 14 | Darmstadt | 7 (7) | 40 | 3 | <1% | 1% | 2% | 10%▼1 | 20%▼6 |
| 15 | Dynamo Dresden | 5 (7) | 40 | 14 | <1%▼1 | 1%▼1 | 3%▼1 | 9% | 21%▲4 |
| 16 | Energie Cottbus | 8 (7) | 39 | 1 | <1%▼1 | 1%▼1 | 2%▼3 | 10%▲1 | 23%▲4 |
| 17 | Holstein Kiel | 4 (7) | 39 | 6 | <1% | 1%▼1 | 2%▼2 | 10%▲2 | 22%▲3 |
| 18 | Karlsruher SC | 5 (7) | 37 | 4 | <1% | 1% | 2% | 11%▲1 | 30%▲5 |
Chance of every place
Show the 18 × 18 table
| Team | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Hertha BSC | 49 | 21 | 10 | 7 | 4 | 3 | 2 | 1 | 1 | 1 | ||||||||
| 1. FC Nürnberg | 22 | 21 | 15 | 10 | 8 | 6 | 5 | 3 | 3 | 2 | 2 | 1 | 1 | 1 | ||||
| FC Heidenheim | 6 | 10 | 12 | 10 | 9 | 9 | 7 | 6 | 6 | 5 | 4 | 4 | 3 | 2 | 2 | 1 | 1 | 1 |
| Wolfsburg | 6 | 10 | 10 | 10 | 10 | 8 | 7 | 6 | 6 | 5 | 5 | 4 | 3 | 3 | 2 | 2 | 1 | 1 |
| Magdeburg | 5 | 9 | 10 | 10 | 10 | 8 | 8 | 7 | 6 | 5 | 5 | 4 | 4 | 3 | 2 | 2 | 1 | 1 |
| Kaiserslautern | 4 | 7 | 10 | 10 | 10 | 8 | 8 | 8 | 7 | 6 | 5 | 4 | 4 | 3 | 2 | 2 | 1 | 1 |
| Hannover 96 | 2 | 4 | 6 | 7 | 7 | 8 | 7 | 7 | 7 | 7 | 6 | 6 | 6 | 5 | 5 | 5 | 4 | 3 |
| Arminia Bielefeld | 2 | 4 | 6 | 6 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 6 | 6 | 6 | 5 | 4 | 4 | 2 |
| Bochum | 1 | 3 | 4 | 5 | 5 | 7 | 7 | 8 | 8 | 8 | 7 | 7 | 7 | 6 | 6 | 5 | 4 | 3 |
| St. Pauli | 1 | 2 | 4 | 4 | 5 | 6 | 7 | 7 | 6 | 8 | 8 | 7 | 7 | 6 | 7 | 6 | 5 | 4 |
| Eintracht Braunschweig | 1 | 2 | 3 | 4 | 5 | 5 | 5 | 6 | 6 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 7 | 7 |
| Greuther Fürth | 1 | 2 | 4 | 4 | 5 | 6 | 6 | 6 | 6 | 7 | 7 | 7 | 8 | 7 | 8 | 8 | 7 | |
| VfL Osnabrück | 1 | 2 | 3 | 3 | 4 | 5 | 5 | 5 | 6 | 6 | 7 | 8 | 8 | 8 | 8 | 10 | 9 | |
| Darmstadt | 1 | 1 | 2 | 3 | 4 | 4 | 5 | 6 | 6 | 6 | 7 | 8 | 9 | 9 | 10 | 10 | 10 | |
| Dynamo Dresden | 1 | 2 | 2 | 3 | 4 | 4 | 5 | 5 | 6 | 6 | 7 | 8 | 8 | 9 | 9 | 10 | 11 | |
| Energie Cottbus | 1 | 1 | 2 | 3 | 3 | 4 | 4 | 5 | 6 | 6 | 7 | 7 | 8 | 9 | 10 | 11 | 12 | |
| Holstein Kiel | 1 | 1 | 2 | 3 | 3 | 4 | 4 | 5 | 6 | 7 | 7 | 8 | 9 | 9 | 10 | 10 | 12 | |
| Karlsruher SC | 1 | 1 | 2 | 3 | 3 | 3 | 4 | 5 | 6 | 6 | 7 | 8 | 10 | 11 | 13 | 17 |
Percent; empty cells are under 1%.
How it is calculated
Each team gets an attack and a defence rating from this season’s matches (football: expected goals and actual goals, the opponents’ strength taken into account). Last season is only the starting point, worth eight games: after a few rounds this season decides.
Every remaining fixture is then played out with Poisson-distributed goals, 10,000 times, and each simulated season ends in a table by points, goal difference and goals scored. Ratings are only estimates and form changes, so every simulation also moves each team's strength by a random amount.
A league match within four days after a European game costs a team a little (on 2021–2026 data such sides took 0.08 points per match fewer than in their other games). Head-to-head tie-breakers, points deductions and domestic cups are not modelled. The forecast is recalculated as soon as new results come in.
2. Bundesliga: matches and table →
2. Bundesliga: power rankings →