Germany

2. Bundesliga 2019/20 final table, results and top scorers

The 2019/20 season as it ended: the final table, every result by month and the player boards. History only, never a prediction.

Final table

Final table
#TeamPWDLGoalsGDPts
1Bielefeld341814265:30+3568
2Stuttgart341771062:41+2158
3Heidenheim341510945:36+955
4Hamburg341412862:46+1654
5Darmstadt341313848:43+552
6Hannover341391254:49+548
7Erzgebirge AUE341381346:48−247
8Bochum3411131053:51+246
9Greuther Fürth3411111246:45+144
10Sandhausen3410131143:45−243
11Holstein Kiel3411101353:56−343
12Regensburg3411101350:56−643
13Osnabrück349131246:48−240
14St. Pauli349121341:50−939
15Karlsruhe348131345:56−1137
16Nürnberg348131345:58−1337
17Wehen Wiesbaden34971845:65−2034
18Dynamo Dresden34881832:58−2632

League rounds only, 90 minutes: 3 points a win, then goal difference and goals scored.

Player boards

Top scorers

Player boards · Top scorers
#PlayerGoals
1Fabian Klos
Bielefeld
21
2Manuel Schäffler
Wehen Wiesbaden
19
3Philipp Hofmann
Karlsruhe
17

Penalties scored

Player boards · Penalties scored
#PlayerGoals
1Dimitrij Nazarov
Erzgebirge AUE
5
2Kevin Behrens
Sandhausen
5
3Aaron Hunt
Hamburg
4
4Danny Blum
Bochum
4
5Fabian Klos
Bielefeld
4
6Nicolás González
Stuttgart
4

Hat-tricks

Player boards · Hat-tricks
#PlayerHat-tricks
1Danny Blum
Bochum
1
2Manuel Schäffler
Wehen Wiesbaden
1
3Marco Grüttner
Regensburg
1
4Philipp Hofmann
Karlsruhe
1
5Phillip Tietz
Wehen Wiesbaden
1
6Robin Hack
Nürnberg
1

Yellow cards

Player boards · Yellow cards
#PlayerYellow
1Waldemar Anton
Hannover
13
2Benedikt Saller
Regensburg
12
3Patrick Ebert
Dynamo Dresden
12

The season's records

Biggest win: Bielefeld 6–0 Regensburg (9 Feb 2020)

Highest-scoring game: Wehen Wiesbaden 3–6 Holstein Kiel (23 Nov 2019)

All results

June 2020 · 48 matches
All results · June 2020
DateMatchScore
3 JunHannover – Dynamo Dresden3–0
5 JunBochum – St. Pauli2–0
5 JunGreuther Fürth – Sandhausen1–2
6 JunBielefeld – Nürnberg1–1
6 JunRegensburg – Darmstadt3–0
6 JunWehen Wiesbaden – Dynamo Dresden2–3
7 JunErzgebirge AUE – Karlsruhe1–0
7 JunHannover – Heidenheim2–1
7 JunStuttgart – Osnabrück0–0
8 JunHamburg – Holstein Kiel3–3
9 JunDynamo Dresden – Greuther Fürth1–1
12 JunDynamo Dresden – Hamburg0–1
12 JunSandhausen – Bielefeld0–0
13 JunHeidenheim – Regensburg4–1
13 JunHolstein Kiel – Wehen Wiesbaden1–2
13 JunNürnberg – Greuther Fürth0–1
13 JunOsnabrück – Bochum0–2
14 JunDarmstadt – Hannover3–2
14 JunKarlsruhe – Stuttgart2–1
14 JunSt. Pauli – Erzgebirge AUE2–1
15 JunBielefeld – Dynamo Dresden4–0
16 JunGreuther Fürth – Heidenheim0–0
16 JunHamburg – Osnabrück1–1
16 JunWehen Wiesbaden – Nürnberg0–6
17 JunErzgebirge AUE – Bochum1–2
17 JunHannover – St. Pauli4–0
17 JunRegensburg – Karlsruhe2–1
17 JunStuttgart – Sandhausen5–1
18 JunBielefeld – Darmstadt1–0
18 JunHolstein Kiel – Dynamo Dresden2–0
21 JunBochum – Greuther Fürth2–2
21 JunDarmstadt – Wehen Wiesbaden3–1
21 JunErzgebirge AUE – Hannover2–1
21 JunHeidenheim – Hamburg2–1
21 JunKarlsruhe – Bielefeld3–3
21 JunNürnberg – Stuttgart0–6
21 JunOsnabrück – Holstein Kiel4–1
21 JunSandhausen – Dynamo Dresden0–1
21 JunSt. Pauli – Regensburg1–1
28 JunBielefeld – Heidenheim3–0
28 JunDynamo Dresden – Osnabrück2–2
28 JunGreuther Fürth – Karlsruhe1–2
28 JunHamburg – Sandhausen1–5
28 JunHannover – Bochum2–0
28 JunHolstein Kiel – Nürnberg1–1
28 JunRegensburg – Erzgebirge AUE1–2
28 JunStuttgart – Darmstadt1–3
28 JunWehen Wiesbaden – St. Pauli5–3
May 2020 · 33 matches
All results · May 2020
DateMatchScore
16 MayBochum – Heidenheim3–0
16 MayErzgebirge AUE – Sandhausen3–1
16 MayKarlsruhe – Darmstadt2–0
16 MayRegensburg – Holstein Kiel2–2
17 MayBielefeld – Osnabrück1–1
17 MayGreuther Fürth – Hamburg2–2
17 MaySt. Pauli – Nürnberg1–0
17 MayWehen Wiesbaden – Stuttgart2–1
22 MayHeidenheim – Wehen Wiesbaden1–0
22 MayNürnberg – Erzgebirge AUE1–1
23 MayDarmstadt – St. Pauli4–0
23 MayOsnabrück – Hannover2–4
23 MaySandhausen – Regensburg0–0
24 MayHamburg – Bielefeld0–0
24 MayHolstein Kiel – Stuttgart3–2
24 MayKarlsruhe – Bochum0–0
26 MayErzgebirge AUE – Darmstadt1–3
26 MayGreuther Fürth – Osnabrück0–2
26 MayRegensburg – Nürnberg2–2
26 MayWehen Wiesbaden – Sandhausen0–1
27 MayBochum – Holstein Kiel2–1
27 MayHannover – Karlsruhe1–1
27 MaySt. Pauli – Heidenheim0–0
28 MayStuttgart – Hamburg3–2
29 MayDarmstadt – Greuther Fürth1–1
29 MayOsnabrück – Regensburg2–2
30 MayHolstein Kiel – Bielefeld1–2
30 MayKarlsruhe – St. Pauli1–1
30 MayNürnberg – Bochum0–0
30 MaySandhausen – Hannover3–1
31 MayDynamo Dresden – Stuttgart0–2
31 MayHamburg – Wehen Wiesbaden3–2
31 MayHeidenheim – Erzgebirge AUE3–0
March 2020 · 13 matches
All results · March 2020
DateMatchScore
1 MarBielefeld – Wehen Wiesbaden1–0
1 MarBochum – Sandhausen4–4
1 MarSt. Pauli – Osnabrück3–1
2 MarHannover – Holstein Kiel3–1
6 MarNürnberg – Hannover0–3
6 MarOsnabrück – Wehen Wiesbaden2–6
7 MarDarmstadt – Bochum0–0
7 MarHamburg – Regensburg2–1
7 MarHeidenheim – Karlsruhe3–1
8 MarDynamo Dresden – Erzgebirge AUE2–1
8 MarHolstein Kiel – Greuther Fürth1–1
8 MarSandhausen – St. Pauli2–2
9 MarStuttgart – Bielefeld1–1
February 2020 · 39 matches
All results · February 2020
DateMatchScore
1 FebHannover – Wehen Wiesbaden2–2
1 FebKarlsruhe – Holstein Kiel0–2
1 FebSt. Pauli – Stuttgart1–1
2 FebDarmstadt – Osnabrück2–2
2 FebHeidenheim – Dynamo Dresden0–0
2 FebNürnberg – Sandhausen2–0
3 FebBochum – Hamburg1–3
7 FebDynamo Dresden – Darmstadt2–3
7 FebSandhausen – Heidenheim0–1
8 FebHamburg – Karlsruhe2–0
8 FebOsnabrück – Nürnberg0–1
8 FebStuttgart – Erzgebirge AUE3–0
9 FebBielefeld – Regensburg6–0
9 FebGreuther Fürth – Hannover1–3
9 FebWehen Wiesbaden – Bochum0–1
10 FebHolstein Kiel – St. Pauli2–1
14 FebHeidenheim – Nürnberg2–2
14 FebSt. Pauli – Dynamo Dresden0–0
15 FebGreuther Fürth – Bielefeld2–4
15 FebHannover – Hamburg1–1
15 FebRegensburg – Wehen Wiesbaden1–0
16 FebDarmstadt – Sandhausen1–0
16 FebErzgebirge AUE – Holstein Kiel1–2
16 FebKarlsruhe – Osnabrück1–1
17 FebBochum – Stuttgart0–1
21 FebOsnabrück – Erzgebirge AUE0–0
21 FebWehen Wiesbaden – Greuther Fürth1–1
22 FebDynamo Dresden – Bochum1–2
22 FebHamburg – St. Pauli0–2
22 FebHolstein Kiel – Heidenheim0–1
22 FebStuttgart – Regensburg2–0
23 FebBielefeld – Hannover1–0
23 FebNürnberg – Darmstadt1–2
23 FebSandhausen – Karlsruhe0–2
28 FebKarlsruhe – Nürnberg0–1
28 FebRegensburg – Dynamo Dresden1–2
29 FebDarmstadt – Heidenheim2–0
29 FebErzgebirge AUE – Hamburg3–0
29 FebGreuther Fürth – Stuttgart2–0
January 2020 · 11 matches
All results · January 2020
DateMatchScore
28 JanBielefeld – Bochum2–0
28 JanGreuther Fürth – St. Pauli3–0
28 JanRegensburg – Hannover1–0
28 JanWehen Wiesbaden – Erzgebirge AUE1–0
29 JanDynamo Dresden – Karlsruhe1–0
29 JanHolstein Kiel – Darmstadt1–1
29 JanOsnabrück – Sandhausen1–3
29 JanStuttgart – Heidenheim3–0
30 JanHamburg – Nürnberg4–1
31 JanErzgebirge AUE – Bielefeld0–0
31 JanRegensburg – Greuther Fürth0–2
December 2019 · 30 matches
All results · December 2019
DateMatchScore
1 DecDarmstadt – Bielefeld1–3
1 DecHeidenheim – Greuther Fürth1–0
1 DecSandhausen – Stuttgart2–1
6 DecBielefeld – Karlsruhe2–2
6 DecHamburg – Heidenheim0–1
7 DecGreuther Fürth – Bochum3–1
7 DecHannover – Erzgebirge AUE3–2
7 DecHolstein Kiel – Osnabrück2–4
8 DecDynamo Dresden – Sandhausen1–1
8 DecRegensburg – St. Pauli1–0
8 DecWehen Wiesbaden – Darmstadt0–0
9 DecStuttgart – Nürnberg3–1
13 DecBochum – Hannover2–1
13 DecErzgebirge AUE – Regensburg1–0
14 DecHeidenheim – Bielefeld0–0
14 DecKarlsruhe – Greuther Fürth1–5
14 DecSt. Pauli – Wehen Wiesbaden3–1
15 DecNürnberg – Holstein Kiel2–2
15 DecOsnabrück – Dynamo Dresden3–0
15 DecSandhausen – Hamburg1–1
16 DecDarmstadt – Stuttgart1–1
20 DecKarlsruhe – Wehen Wiesbaden0–1
20 DecNürnberg – Dynamo Dresden2–0
21 DecDarmstadt – Hamburg2–2
21 DecErzgebirge AUE – Greuther Fürth3–1
21 DecHannover – Stuttgart2–2
21 DecSt. Pauli – Bielefeld3–0
22 DecBochum – Regensburg2–3
22 DecHeidenheim – Osnabrück3–1
22 DecSandhausen – Holstein Kiel2–2
November 2019 · 33 matches
All results · November 2019
DateMatchScore
1 NovHannover – Sandhausen1–1
1 NovRegensburg – Osnabrück3–3
2 NovErzgebirge AUE – Heidenheim1–1
2 NovGreuther Fürth – Darmstadt3–1
2 NovSt. Pauli – Karlsruhe2–2
3 NovBielefeld – Holstein Kiel2–1
3 NovStuttgart – Dynamo Dresden3–1
3 NovWehen Wiesbaden – Hamburg1–1
4 NovBochum – Nürnberg3–1
8 NovDynamo Dresden – Wehen Wiesbaden1–0
8 NovSt. Pauli – Bochum1–1
9 NovHolstein Kiel – Hamburg1–1
9 NovOsnabrück – Stuttgart1–0
9 NovSandhausen – Greuther Fürth3–2
10 NovDarmstadt – Regensburg2–2
10 NovHeidenheim – Hannover4–0
10 NovNürnberg – Bielefeld1–5
11 NovKarlsruhe – Erzgebirge AUE1–1
22 NovBochum – Osnabrück1–1
22 NovErzgebirge AUE – St. Pauli3–1
23 NovBielefeld – Sandhausen1–1
23 NovHamburg – Dynamo Dresden2–1
23 NovWehen Wiesbaden – Holstein Kiel3–6
24 NovGreuther Fürth – Nürnberg0–0
24 NovRegensburg – Heidenheim3–1
24 NovStuttgart – Karlsruhe3–0
25 NovHannover – Darmstadt1–2
29 NovKarlsruhe – Regensburg4–1
29 NovOsnabrück – Hamburg2–1
30 NovBochum – Erzgebirge AUE2–0
30 NovDynamo Dresden – Holstein Kiel1–2
30 NovNürnberg – Wehen Wiesbaden0–2
30 NovSt. Pauli – Hannover0–1
October 2019 · 27 matches
All results · October 2019
DateMatchScore
4 OctDarmstadt – Karlsruhe1–1
4 OctStuttgart – Wehen Wiesbaden1–2
5 OctDynamo Dresden – Hannover0–2
5 OctHamburg – Greuther Fürth2–0
5 OctSandhausen – Erzgebirge AUE2–2
6 OctHeidenheim – Bochum2–3
6 OctHolstein Kiel – Regensburg1–2
6 OctNürnberg – St. Pauli1–1
7 OctOsnabrück – Bielefeld0–1
18 OctErzgebirge AUE – Nürnberg4–3
18 OctGreuther Fürth – Dynamo Dresden2–0
19 OctRegensburg – Sandhausen1–0
19 OctSt. Pauli – Darmstadt0–1
19 OctWehen Wiesbaden – Heidenheim0–0
20 OctBochum – Karlsruhe3–3
20 OctHannover – Osnabrück0–0
20 OctStuttgart – Holstein Kiel0–1
21 OctBielefeld – Hamburg1–1
25 OctDarmstadt – Erzgebirge AUE1–0
25 OctHolstein Kiel – Bochum2–1
26 OctDynamo Dresden – Bielefeld0–1
26 OctHamburg – Stuttgart6–2
26 OctKarlsruhe – Hannover3–3
27 OctHeidenheim – St. Pauli1–0
27 OctNürnberg – Regensburg1–1
27 OctOsnabrück – Greuther Fürth0–0
28 OctSandhausen – Wehen Wiesbaden0–0
September 2019 · 31 matches
All results · September 2019
DateMatchScore
1 SepHamburg – Hannover3–0
1 SepHolstein Kiel – Erzgebirge AUE1–1
1 SepOsnabrück – Karlsruhe3–0
2 SepStuttgart – Bochum2–1
13 SepGreuther Fürth – Wehen Wiesbaden2–1
13 SepKarlsruhe – Sandhausen1–0
14 SepHannover – Bielefeld0–2
14 SepHeidenheim – Holstein Kiel3–0
14 SepRegensburg – Stuttgart2–3
15 SepBochum – Dynamo Dresden2–2
15 SepDarmstadt – Nürnberg3–3
15 SepErzgebirge AUE – Osnabrück1–0
16 SepSt. Pauli – Hamburg2–0
20 SepHeidenheim – Darmstadt1–0
20 SepHolstein Kiel – Hannover1–2
21 SepNürnberg – Karlsruhe1–1
21 SepSandhausen – Bochum1–1
21 SepStuttgart – Greuther Fürth2–0
21 SepWehen Wiesbaden – Bielefeld2–5
22 SepDynamo Dresden – Regensburg2–1
22 SepHamburg – Erzgebirge AUE4–0
22 SepOsnabrück – St. Pauli1–1
27 SepBielefeld – Stuttgart0–1
27 SepWehen Wiesbaden – Osnabrück2–0
28 SepBochum – Darmstadt2–2
28 SepKarlsruhe – Heidenheim1–1
28 SepRegensburg – Hamburg2–2
29 SepErzgebirge AUE – Dynamo Dresden4–1
29 SepGreuther Fürth – Holstein Kiel0–3
29 SepSt. Pauli – Sandhausen2–0
30 SepHannover – Nürnberg0–4
August 2019 · 32 matches
All results · August 2019
DateMatchScore
2 AugBochum – Bielefeld3–3
2 AugSandhausen – Osnabrück0–1
2 AugSt. Pauli – Greuther Fürth1–3
3 AugHannover – Regensburg1–1
3 AugKarlsruhe – Dynamo Dresden4–2
4 AugDarmstadt – Holstein Kiel2–0
4 AugErzgebirge AUE – Wehen Wiesbaden3–2
4 AugHeidenheim – Stuttgart2–2
5 AugNürnberg – Hamburg0–4
16 AugHamburg – Bochum1–0
16 AugSandhausen – Nürnberg3–2
17 AugBielefeld – Erzgebirge AUE3–1
17 AugStuttgart – St. Pauli2–1
17 AugWehen Wiesbaden – Hannover0–3
18 AugDynamo Dresden – Heidenheim2–1
18 AugGreuther Fürth – Regensburg1–0
18 AugHolstein Kiel – Karlsruhe2–1
19 AugOsnabrück – Darmstadt4–0
23 AugDarmstadt – Dynamo Dresden0–0
23 AugErzgebirge AUE – Stuttgart0–0
24 AugBochum – Wehen Wiesbaden3–3
24 AugHannover – Greuther Fürth1–1
24 AugRegensburg – Bielefeld1–3
25 AugHeidenheim – Sandhausen0–2
25 AugKarlsruhe – Hamburg2–4
25 AugNürnberg – Osnabrück1–0
26 AugSt. Pauli – Holstein Kiel2–1
30 AugNürnberg – Heidenheim2–2
30 AugSandhausen – Darmstadt1–0
31 AugBielefeld – Greuther Fürth2–2
31 AugDynamo Dresden – St. Pauli3–3
31 AugWehen Wiesbaden – Regensburg0–5
July 2019 · 9 matches
All results · July 2019
DateMatchScore
26 JulStuttgart – Hannover2–1
27 JulDynamo Dresden – Nürnberg0–1
27 JulHolstein Kiel – Sandhausen1–1
27 JulOsnabrück – Heidenheim1–3
28 JulGreuther Fürth – Erzgebirge AUE0–2
28 JulHamburg – Darmstadt1–1
28 JulRegensburg – Bochum3–1
28 JulWehen Wiesbaden – Karlsruhe1–2
29 JulBielefeld – St. Pauli1–1

League rounds, 90 minutes, by month.

Referees

Referees
RefereeMatches
Florian Badstübner10
Tobias Reichel10
Florian Heft9
Manuel Gräfe9
Martin Thomsen9
Matthias Jöllenbeck9
Arne Aarnink8
Benedikt Kempkes8
Christof Günsch8
Johann Pfeifer8
Lasse Koslowski8
Martin Petersen8
N. Winter8
Patrick Alt8
Rene Rohde8
Robert Kempter8
Sven Waschitzki8
Thorben Siewer8
Timo Gerach8
Alexander Sather7
Christian Dingert7
Daniel Schlager7
Felix Brych7
Felix Zwayer7
Frank Willenborg7
Markus Schmidt7
Michael Bacher7
Patrick Ittrich7
Bastian Dankert6
Benjamin Cortus6
Daniel Siebert6
Guido Winkmann6
Robert Hartmann6
Sascha Stegemann6
Tobias Stieler6
Harm Osmers5
Marco Fritz5
Robert Kampka5
Sven Jablonski5
Sören Storks5
Deniz Aytekin4
Robert Schröder4
Tobias Welz3

Matches per referee from the season's schedule; the table lists referees with at least 3 matches.

From our data: the season's league matches. History only, never a prediction.

The day's tips on Telegram

Every morning (about 10:00 Tallinn time) the day's card tips go to the free Telegram channel; on some days there are none, and we say so.