1998–99 2. Bundesliga

{{Short description|25th season of the second-tier football league in Germany}}

{{Use dmy dates|date=February 2023}}

{{Infobox football league season

| competition = 2. Bundesliga

| season = 1998–99

| winners = Arminia Bielefeld

| promoted = Arminia Bielefeld
SpVgg Unterhaching
SSV Ulm 1846

| relegated = FC Gütersloh
KFC Uerdingen 05
SG Wattenscheid 09
Fortuna Düsseldorf

| league topscorer = Bruno Labbadia
(28 goals)

| matches = 306

| total goals =

| average attendance = 8,613

| prevseason = 1997–98

| nextseason = 1999–2000

}}

The 1998–99 2. Bundesliga season was the twenty-fifth season of the 2. Bundesliga, the second tier of the German football league system.

Arminia Bielefeld, SpVgg Unterhaching and SSV Ulm 1846 were promoted to the Bundesliga while FC Gütersloh, KFC Uerdingen 05, SG Wattenscheid 09 and Fortuna Düsseldorf were relegated to the Regionalliga.

League table

For the 1998–99 season SSV Ulm 1846, Rot-Weiß Oberhausen, Hannover 96 and Tennis Borussia Berlin were newly promoted to the 2. Bundesliga from the Regionalliga while Karlsruher SC, 1. FC Köln and Arminia Bielefeld had been relegated to the league from the Bundesliga.

{{Location map+ |Germany |width=375 |float=right |caption=Locations of the participating teams of the 1998–99 season|places=

{{Location map~ |Germany |lat=52.022833|long=8.522395 |label=Bielefeld|position=left}}

{{Location map~ |Germany |lat=50.936190|long=6.872191 |label=Fortuna Köln|position=right}}

{{Location map~ |Germany |lat=50.933224|long=6.874697 |label=1. FC Köln |position=left}}

{{Location map~ |Germany |lat=51.751389|long=14.345556 |label=Cottbus}}

{{Location map~ |Germany |lat=51.261593|long=6.733204 |label=Düsseldorf|position=right}}

{{Location map~ |Germany |lat=49.486944|long=10.999167|label=Fürth|position=right}}

{{Location map~ |Germany |lat=51.891667|long=8.388333 |label=Gütersloh|position=right}}

{{Location map~ |Germany |lat=52.360771|long=9.730700 |label=Hannover|position=right}}

{{Location map~ |Germany |lat=49.021176|long=8.413021 |label=Karlsruhe}}

{{Location map~ |Germany |lat=49.984167|long=8.224167 |label=Mainz|position=left}}

{{Location map~ |Germany |lat=51.457554|long=6.842972 |label=Oberhausen|position=top}}

{{Location map~ |Germany |lat=53.554568|long=9.967646 |label=St. Pauli}}

{{Location map~ |Germany |lat=48.792295|long=9.232141|label=Stuttgart}}

{{Location map~ |Germany |lat=52.500833|long=13.264167 |label=Berlin|position=left}}

{{Location map~ |Germany |lat=51.338858|long=6.603603 |label=Uer-
dingen
|position=left}}

{{Location map~ |Germany |lat=48.404444|long=10.009722|label=Ulm}}

{{Location map~ |Germany |lat=48.065833|long=11.61 |label=Unterhaching|position=bottom}}

{{Location map~ |Germany |lat=51.485725|long=7.118669 |label=Wattenscheid|position=right}}

}}

{{#invoke:sports table|main|style=WDL

|show_limit=5

|res_col_header=PR

|team1=DSC|name_DSC=Arminia Bielefeld

|team2=UNT|name_UNT=SpVgg Unterhaching

|team3=ULM|name_ULM=SSV Ulm 1846

|team4=H96|name_H96=Hannover 96

|team5=KSC|name_KSC=Karlsruher SC

|team6=TBB|name_TBB=Tennis Borussia Berlin

|team7=M05|name_M05=Mainz 05

|team8=SGF|name_SGF=SpVgg Greuther Fürth

|team9=STP|name_STP=FC St. Pauli

|team10=KOE|name_KOE=1. FC Köln

|team11=FCE|name_FCE=Energie Cottbus

|team12=RWO|name_RWO=Rot-Weiß Oberhausen

|team13=SKI|name_SKI=Stuttgarter Kickers

|team14=FKO|name_FKO=Fortuna Köln

|team15=FCG|name_FCG=FC Gütersloh

|team16=KFC|name_KFC=KFC Uerdingen

|team17=SGW|name_SGW=SG Wattenscheid 09

|team18=F95|name_F95=Fortuna Düsseldorf

|win_DSC=20|draw_DSC=7|loss_DSC=7|gf_DSC=62|ga_DSC=32|status_DSC=C,P

|win_UNT=19|draw_UNT=6|loss_UNT=9|gf_UNT=47|ga_UNT=30|status_UNT=P

|win_ULM=15|draw_ULM=13|loss_ULM=6|gf_ULM=63|ga_ULM=51|status_ULM=P

|win_H96=16|draw_H96=9|loss_H96=9|gf_H96=52|ga_H96=36

|win_KSC=17|draw_KSC=5|loss_KSC=12|gf_KSC=54|ga_KSC=43

|win_TBB=15|draw_TBB=9|loss_TBB=10|gf_TBB=47|ga_TBB=39

|win_M05=14|draw_M05=8|loss_M05=12|gf_M05=48|ga_M05=44

|win_SGF=13|draw_SGF=10|loss_SGF=11|gf_SGF=40|ga_SGF=31

|win_STP=12|draw_STP=9|loss_STP=13|gf_STP=49|ga_STP=46

|win_KOE=12|draw_KOE=9|loss_KOE=13|gf_KOE=46|ga_KOE=53

|win_FCE=13|draw_FCE=10|loss_FCE=11|gf_FCE=48|ga_FCE=42

|win_RWO=9|draw_RWO=14|loss_RWO=11|gf_RWO=40|ga_RWO=47

|win_SKI=11|draw_SKI=8|loss_SKI=15|gf_SKI=38|ga_SKI=53

|win_FKO=9|draw_FKO=13|loss_FKO=12|gf_FKO=49|ga_FKO=55

|win_FCG=10|draw_FCG=7|loss_FCG=17|gf_FCG=39|ga_FCG=58|status_FCG=R

|win_KFC=7|draw_KFC=10|loss_KFC=17|gf_KFC=34|ga_KFC=57|status_KFC=R

|win_SGW=7|draw_SGW=9|loss_SGW=18|gf_SGW=31|ga_SGW=46|status_SGW=R

|win_F95=5|draw_F95=13|loss_F95=16|gf_F95=35|ga_F95=59|status_F95=R

|col_P=green1|text_P=Promotion to Bundesliga

|result1=P|result2=P|result3=P

|col_R=red1|text_R=Relegation to Regionalliga

|result15=R|result16=R|result17=R|result18=R

|note_res_R=All four teams were relegated to the Regionalliga West/Südwest.

|update=complete

|class_rules=1) points; 2) goal difference; 3) number of goals scored.

|source=[http://www.bundesliga.de Bundesliga.de]

}}

Results

{{#invoke:Sports results|main

| source = [https://www.dfb.de/2-bundesliga/spieltagtabelle/?spieledb_path=%2Fcompetitions%2F3%2Fseasons%2F2629%2Fmatchday%2F34 DFB]

| update = complete

| matches_style = FBR

| team1 = TBB | name_TBB = Tennis Borussia Berlin

| team2 = DSC | name_DSC = Arminia Bielefeld

| team3 = FCE | name_FCE = Energie Cottbus

| team4 = F95 | name_F95 = Fortuna Düsseldorf

| team5 = SGF | name_SGF = Greuther Fürth

| team6 = FCG | name_FCG = FC Gütersloh

| team7 = H96 | name_H96 = Hannover 96

| team8 = KSC | name_KSC = Karlsruher SC

| team9 = KOE | name_KOE = 1. FC Köln

| team10 = FKO | name_FKO = Fortuna Köln

| team11 = M05 | name_M05 = Mainz 05

| team12 = RWO | name_RWO = Rot-Weiß Oberhausen

| team13 = STP | name_STP = FC St. Pauli

| team14 = SKI | name_SKI = Stuttgarter Kickers

| team15 = KFC | name_KFC = KFC Uerdingen

| team16 = ULM | name_ULM = SSV Ulm

| team17 = UNT | name_UNT = SpVgg Unterhaching

| team18 = SGW | name_SGW = SG Wattenscheid

| match_TBB_DSC = 1–1

| match_TBB_FCE = 1–0

| match_TBB_F95 = 1–1

| match_TBB_SGF = 2–1

| match_TBB_FCG = 2–0

| match_TBB_H96 = 3–1

| match_TBB_KSC = 3–2

| match_TBB_KOE = 1–1

| match_TBB_FKO = 3–2

| match_TBB_M05 = 3–0

| match_TBB_RWO = 2–2

| match_TBB_STP = 0–2

| match_TBB_SKI = 0–2

| match_TBB_KFC = 3–1

| match_TBB_ULM = 0–2

| match_TBB_UNT = 1–1

| match_TBB_SGW = 1–0

| match_DSC_TBB = 3–1

| match_DSC_FCE = 2–0

| match_DSC_F95 = 2–0

| match_DSC_SGF = 2–1

| match_DSC_FCG = 3–0

| match_DSC_H96 = 0–1

| match_DSC_KSC = 0–1

| match_DSC_KOE = 0–0

| match_DSC_FKO = 2–1

| match_DSC_M05 = 1–0

| match_DSC_RWO = 2–0

| match_DSC_STP = 0–0

| match_DSC_SKI = 1–2

| match_DSC_KFC = 1–0

| match_DSC_ULM = 5–0

| match_DSC_UNT = 2–0

| match_DSC_SGW = 1–0

| match_FCE_TBB = 2–2

| match_FCE_DSC = 0–2

| match_FCE_F95 = 0–1

| match_FCE_SGF = 1–1

| match_FCE_FCG = 5–1

| match_FCE_H96 = 1–0

| match_FCE_KSC = 4–0

| match_FCE_KOE = 2–3

| match_FCE_FKO = 2–0

| match_FCE_M05 = 2–2

| match_FCE_RWO = 0–2

| match_FCE_STP = 0–3

| match_FCE_SKI = 2–0

| match_FCE_KFC = 5–0

| match_FCE_ULM = 3–0

| match_FCE_UNT = 4–2

| match_FCE_SGW = 2–0

| match_F95_TBB = 2–2

| match_F95_DSC = 2–2

| match_F95_FCE = 0–3

| match_F95_SGF = 0–0

| match_F95_FCG = 3–1

| match_F95_H96 = 1–1

| match_F95_KSC = 0–1

| match_F95_KOE = 2–1

| match_F95_FKO = 2–2

| match_F95_M05 = 0–3

| match_F95_RWO = 2–2

| match_F95_STP = 2–2

| match_F95_SKI = 0–0

| match_F95_KFC = 2–2

| match_F95_ULM = 1–3

| match_F95_UNT = 1–3

| match_F95_SGW = 1–1

| match_SGF_TBB = 1–2

| match_SGF_DSC = 2–0

| match_SGF_FCE = 0–0

| match_SGF_F95 = 1–0

| match_SGF_FCG = 3–2

| match_SGF_H96 = 0–1

| match_SGF_KSC = 1–2

| match_SGF_KOE = 0–1

| match_SGF_FKO = 4–0

| match_SGF_M05 = 3–1

| match_SGF_RWO = 1–1

| match_SGF_STP = 1–0

| match_SGF_SKI = 1–0

| match_SGF_KFC = 0–0

| match_SGF_ULM = 2–0

| match_SGF_UNT = 0–0

| match_SGF_SGW = 2–1

| match_FCG_TBB = 1–0

| match_FCG_DSC = 0–2

| match_FCG_FCE = 1–1

| match_FCG_F95 = 2–2

| match_FCG_SGF = 1–0

| match_FCG_H96 = 2–1

| match_FCG_KSC = 2–0

| match_FCG_KOE = 0–1

| match_FCG_FKO = 2–1

| match_FCG_M05 = 6–1

| match_FCG_RWO = 0–3

| match_FCG_STP = 1–4

| match_FCG_SKI = 1–0

| match_FCG_KFC = 2–0

| match_FCG_ULM = 1–1

| match_FCG_UNT = 1–1

| match_FCG_SGW = 2–1

| match_H96_TBB = 0–0

| match_H96_DSC = 2–1

| match_H96_FCE = 2–0

| match_H96_F95 = 0–2

| match_H96_SGF = 1–1

| match_H96_FCG = 4–1

| match_H96_KSC = 1–0

| match_H96_KOE = 6–1

| match_H96_FKO = 3–3

| match_H96_M05 = 3–2

| match_H96_RWO = 1–1

| match_H96_STP = 3–0

| match_H96_SKI = 2–1

| match_H96_KFC = 3–1

| match_H96_ULM = 1–1

| match_H96_UNT = 0–1

| match_H96_SGW = 2–1

| match_KSC_TBB = 0–0

| match_KSC_DSC = 1–1

| match_KSC_FCE = 3–2

| match_KSC_F95 = 3–1

| match_KSC_SGF = 1–0

| match_KSC_FCG = 2–3

| match_KSC_H96 = 1–0

| match_KSC_KOE = 3–1

| match_KSC_FKO = 4–2

| match_KSC_M05 = 0–1

| match_KSC_RWO = 3–1

| match_KSC_STP = 3–0

| match_KSC_SKI = 6–0

| match_KSC_KFC = 0–1

| match_KSC_ULM = 1–2

| match_KSC_UNT = 1–0

| match_KSC_SGW = 2–1

| match_KOE_TBB = 1–0

| match_KOE_DSC = 3–5

| match_KOE_FCE = 2–2

| match_KOE_F95 = 1–0

| match_KOE_SGF = 1–0

| match_KOE_FCG = 1–1

| match_KOE_H96 = 0–2

| match_KOE_KSC = 4–1

| match_KOE_FKO = 0–3

| match_KOE_M05 = 2–1

| match_KOE_RWO = 2–1

| match_KOE_STP = 1–4

| match_KOE_SKI = 0–1

| match_KOE_KFC = 4–0

| match_KOE_ULM = 1–1

| match_KOE_UNT = 0–1

| match_KOE_SGW = 2–1

| match_FKO_TBB = 1–3

| match_FKO_DSC = 1–1

| match_FKO_FCE = 3–0

| match_FKO_F95 = 2–1

| match_FKO_SGF = 1–4

| match_FKO_FCG = 3–2

| match_FKO_H96 = 3–0

| match_FKO_KSC = 0–1

| match_FKO_KOE = 4–2

| match_FKO_M05 = 2–0

| match_FKO_RWO = 0–0

| match_FKO_STP = 1–1

| match_FKO_SKI = 2–1

| match_FKO_KFC = 1–1

| match_FKO_ULM = 2–2

| match_FKO_UNT = 0–2

| match_FKO_SGW = 1–2

| match_M05_TBB = 0–3

| match_M05_DSC = 3–1

| match_M05_FCE = 0–0

| match_M05_F95 = 0–0

| match_M05_SGF = 3–0

| match_M05_FCG = 1–0

| match_M05_H96 = 1–0

| match_M05_KSC = 4–1

| match_M05_KOE = 2–1

| match_M05_FKO = 1–1

| match_M05_RWO = 0–0

| match_M05_STP = 3–0

| match_M05_SKI = 2–2

| match_M05_KFC = 3–0

| match_M05_ULM = 1–1

| match_M05_UNT = 1–0

| match_M05_SGW = 2–0

| match_RWO_TBB = 0–2

| match_RWO_DSC = 1–5

| match_RWO_FCE = 3–1

| match_RWO_F95 = 1–3

| match_RWO_SGF = 0–2

| match_RWO_FCG = 3–0

| match_RWO_H96 = 1–1

| match_RWO_KSC = 2–0

| match_RWO_KOE = 0–4

| match_RWO_FKO = 0–0

| match_RWO_M05 = 2–1

| match_RWO_STP = 3–2

| match_RWO_SKI = 1–1

| match_RWO_KFC = 0–0

| match_RWO_ULM = 2–2

| match_RWO_UNT = 0–2

| match_RWO_SGW = 1–0

| match_STP_TBB = 1–0

| match_STP_DSC = 1–2

| match_STP_FCE = 1–1

| match_STP_F95 = 5–0

| match_STP_SGF = 0–2

| match_STP_FCG = 1–0

| match_STP_H96 = 0–2

| match_STP_KSC = 1–0

| match_STP_KOE = 0–0

| match_STP_FKO = 0–0

| match_STP_M05 = 2–1

| match_STP_RWO = 1–1

| match_STP_SKI = 6–2

| match_STP_KFC = 2–3

| match_STP_ULM = 0–1

| match_STP_UNT = 1–1

| match_STP_SGW = 1–0

| match_SKI_TBB = 1–0

| match_SKI_DSC = 2–2

| match_SKI_FCE = 1–0

| match_SKI_F95 = 1–0

| match_SKI_SGF = 2–2

| match_SKI_FCG = 2–1

| match_SKI_H96 = 2–2

| match_SKI_KSC = 2–2

| match_SKI_KOE = 2–0

| match_SKI_FKO = 2–2

| match_SKI_M05 = 1–3

| match_SKI_RWO = 2–0

| match_SKI_STP = 1–3

| match_SKI_KFC = 0–1

| match_SKI_ULM = 1–2

| match_SKI_UNT = 1–0

| match_SKI_SGW = 0–2

| match_KFC_TBB = 2–3

| match_KFC_DSC = 0–4

| match_KFC_FCE = 0–0

| match_KFC_F95 = 4–1

| match_KFC_SGF = 0–2

| match_KFC_FCG = 2–0

| match_KFC_H96 = 0–1

| match_KFC_KSC = 1–3

| match_KFC_KOE = 2–2

| match_KFC_FKO = 1–2

| match_KFC_M05 = 1–2

| match_KFC_RWO = 2–2

| match_KFC_STP = 1–1

| match_KFC_SKI = 0–1

| match_KFC_ULM = 2–1

| match_KFC_UNT = 3–0

| match_KFC_SGW = 0–0

| match_ULM_TBB = 2–0

| match_ULM_DSC = 6–2

| match_ULM_FCE = 2–2

| match_ULM_F95 = 4–2

| match_ULM_SGF = 0–0

| match_ULM_FCG = 1–1

| match_ULM_H96 = 1–1

| match_ULM_KSC = 1–5

| match_ULM_KOE = 2–2

| match_ULM_FKO = 3–3

| match_ULM_M05 = 4–2

| match_ULM_RWO = 1–0

| match_ULM_STP = 4–1

| match_ULM_SKI = 3–2

| match_ULM_KFC = 2–2

| match_ULM_UNT = 3–1

| match_ULM_SGW = 2–0

| match_UNT_TBB = 3–1

| match_UNT_DSC = 0–2

| match_UNT_FCE = 1–0

| match_UNT_F95 = 1–0

| match_UNT_SGF = 4–1

| match_UNT_FCG = 2–0

| match_UNT_H96 = 3–1

| match_UNT_KSC = 1–1

| match_UNT_KOE = 2–0

| match_UNT_FKO = 3–0

| match_UNT_M05 = 1–0

| match_UNT_RWO = 0–0

| match_UNT_STP = 2–1

| match_UNT_SKI = 2–0

| match_UNT_KFC = 2–0

| match_UNT_ULM = 2–0

| match_UNT_SGW = 1–0

| match_SGW_TBB = 0–1

| match_SGW_DSC = 0–2

| match_SGW_FCE = 1–1

| match_SGW_F95 = 2–0

| match_SGW_SGF = 1–1

| match_SGW_FCG = 1–1

| match_SGW_H96 = 0–3

| match_SGW_KSC = 0–0

| match_SGW_KOE = 1–1

| match_SGW_FKO = 0–0

| match_SGW_M05 = 1–1

| match_SGW_RWO = 2–4

| match_SGW_STP = 4–2

| match_SGW_SKI = 2–0

| match_SGW_KFC = 2–1

| match_SGW_ULM = 0–3

| match_SGW_UNT = 4–2

}}

Top scorers

The league's top scorers:[http://www.weltfussball.de/torjaeger/2-bundesliga-1998-1999/ 2. Bundesliga 1998/1999 » Torschützenliste] {{in lang|de}} Weltfussball.de – Top scorers, retrieved 17 November 2015

class="wikitable"

! Goals

! Player

! Team

rowspan="1" align=center|28

|{{Flagicon|Germany}} Bruno Labbadia

|Arminia Bielefeld

rowspan="1" align=center|19

|{{Flagicon|Germany}} Rainer Krieg

|Karlsruher SC

rowspan="1" align=center|16

|{{Flagicon|Netherlands}} Arie van Lent

|SpVgg Greuther Fürth

rowspan="2" align=center|14

|{{Flagicon|FR Yugoslavia}} Dragan Trkulja

|SSV Ulm 1846

{{Flagicon|Germany}} Achim Weber

|Rot-Weiß Oberhausen

rowspan="1" align=center|13

|{{Flagicon|Germany}} Thomas Brdarić

|Fortuna Köln

rowspan="1" align=center|12

|{{Flagicon|Australia}} David Zdrilic

|SSV Ulm 1846

rowspan="3" align=center|11

|{{Flagicon|Germany}} Steffen Heidrich

|FC Energie Cottbus

{{Flagicon|Germany}} Gustav Policella

|1. FSV Mainz 05

{{Flagicon|Albania}} Igli Tare

|Fortuna Düsseldorf

References

{{Reflist}}