2. Bundesliga 2022-2023 Performance vs Market
Expected points (xPTS) come from pre-match market odds: what the market rated each team's chances at before kickoff. A positive Δ means the team is outperforming those expectations — playing better than the market rated them; a negative Δ means they're delivering less than their billing. Big gaps usually say more about the team than about fortune.
| # | Team | P | Pts | xPts | vs xPTS | |||||
|---|---|---|---|---|---|---|---|---|---|---|
1 | Heidenheim | 34 | 67 | 50.9 | +16.1Outperforming ++ | 6 | +11.4 | +4.8 | 0:3 vs Nurnberg (+2.0) | 0:1 vs St. Pauli (-1.5) |
2 | Darmstadt | 34 | 67 | 56.5 | +10.5Outperforming ++ | 2 | +6.9 | +3.6 | 1:2 vs Hamburger SV (+1.8) | 2:1 vs Hannover (-1.7) |
3 | St. Pauli | 34 | 58 | 52.0 | +6.0Outperforming ++ | 5 | +5.3 | +0.8 | 0:3 vs Darmstadt (+2.0) | 1:2 vs Braunschweig (-2.0) |
4 | Dusseldorf | 34 | 58 | 52.2 | +5.8Outperforming ++ | 4 | +7.5 | -1.7 | 0:2 vs Karlsruher SC (+1.8) | 0:1 vs Nurnberg (-1.8) |
5 | Hamburger SV | 34 | 66 | 60.6 | +5.4Outperforming ++ | 1 | +2.8 | +2.6 | 2:3 vs Paderborn (+1.8) | 0:1 vs Hansa Rostock (-2.0) |
6 | Magdeburg | 34 | 43 | 41.4 | +1.6On expectation | 14 | -2.1 | +3.7 | 2:3 vs Hamburger SV (+2.2) | 1:2 vs Sandhausen (-2.1) |
7 | Holstein Kiel | 34 | 46 | 45.3 | +0.7On expectation | 10 | -3.5 | +4.2 | 1:2 vs Magdeburg (+1.9) | 2:3 vs Magdeburg (-1.8) |
8 | Hannover | 34 | 44 | 43.6 | +0.4On expectation | 12 | +1.9 | -1.5 | 1:3 vs Arminia Bielefeld (+2.1) | 1:2 vs Magdeburg (-1.6) |
9 | Hansa Rostock | 34 | 41 | 40.7 | +0.3On expectation | 15 | -4.0 | +4.2 | 0:1 vs Hamburger SV (+2.3) | 0:1 vs Sandhausen (-1.7) |
10 | Paderborn | 34 | 55 | 55.3 | -0.3On expectation | 3 | +5.5 | -5.8 | 0:1 vs Karlsruher SC (+1.6) | 0:2 vs Arminia Bielefeld (-2.1) |
11 | Kaiserslautern | 34 | 45 | 45.6 | -0.6On expectation | 9 | -1.6 | +1.0 | 1:2 vs Dusseldorf (+2.0) | 0:3 vs Regensburg (-1.8) |
12 | Karlsruher SC | 34 | 46 | 47.0 | -0.9On expectation | 8 | +3.9 | -4.9 | 0:6 vs Regensburg (+1.8) | 0:2 vs Dusseldorf (-1.6) |
13 | Braunschweig | 34 | 36 | 39.9 | -3.9Underperforming | 16 | +1.8 | -5.7 | 1:2 vs St. Pauli (+2.2) | 1:2 vs Regensburg (-1.6) |
14 | Nurnberg | 34 | 39 | 44.1 | -5.1Underperforming −− | 11 | +0.1 | -5.2 | 0:1 vs Dusseldorf (+2.1) | 0:3 vs Heidenheim (-1.7) |
15 | Sandhausen | 34 | 28 | 34.3 | -6.3Underperforming −− | 18 | -3.2 | -3.1 | 1:2 vs Magdeburg (+2.3) | 1:2 vs Nurnberg (-1.4) |
16 | Greuther Furth | 34 | 41 | 47.8 | -6.8Underperforming −− | 7 | +4.6 | -11.4 | 2:1 vs Paderborn (+1.9) | 1:3 vs Kaiserslautern (-1.5) |
17 | Regensburg | 34 | 31 | 38.0 | -7.0Underperforming −− | 17 | -2.8 | -4.1 | 0:3 vs Kaiserslautern (+2.1) | 0:6 vs Karlsruher SC (-1.5) |
18 | Arminia Bielefeld | 34 | 34 | 42.8 | -8.8Underperforming −− | 13 | -5.1 | -3.8 | 0:2 vs Paderborn (+2.3) | 1:3 vs Hannover (-1.8) |
