The group stage of the 1998–99 UEFA Champions League began on 16 September 1998 and ended on 9 December 1998. Eight teams qualified automatically for the group stage, while 16 more qualified via a preliminary round. The 24 teams were divided into six groups of four, and the teams in each group played against each other on a home-and-away basis, meaning that each team played a total of six group matches. For each win, teams were awarded three points, with one point awarded for each draw.
Seeding was based on the UEFA associations 1998 ranking,[1] similarly to the previous season.[2] Title holders and champions of nations ranked 1–5 were put in the Pot 1. Champions of nations ranked 6–7 as well as runners-up of nations ranked 1–5 (except France) formed Pot 2. The remaining qualified runners-up (from the nations 6–8) and champions of top three nations ranked below 7 formed Pot 3. Finally, the remaining six national champions formed Pot 4.
Key to colours in group tables |
---|
Group winners and best-ranked runners-up advance to the knockout stage |
|
|
|
|
Times are CET/CEST,[note 1] as listed by UEFA (local times are in parentheses)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Olympiacos | 6 | 3 | 2 | 1 | 8 | 6 | +2 | 11 | Advance to knockout stage |
2 | Croatia Zagreb | 6 | 2 | 2 | 2 | 5 | 7 | −2 | 8 | |
3 | Porto | 6 | 2 | 1 | 3 | 11 | 9 | +2 | 7 | |
4 | Ajax | 6 | 2 | 1 | 3 | 4 | 6 | −2 | 7 |
Porto | 2–2 | Olympiacos |
---|---|---|
Zahovič 65' Jardel 82' |
Report | Giannakopoulos 86' Gogić 89' |
Attendance: 26,000[3]
Referee: Gilles Veissière (France)
Croatia Zagreb | 0–0 | Ajax |
---|---|---|
Report |
Attendance: 27,600[4]
Referee: Kim Milton Nielsen (Denmark)
Ajax | 2–1 | Porto |
---|---|---|
Rudy 57' Litmanen 86' (pen.) |
Report | Zahovič 69' |
Attendance: 41,000
Referee: Piero Ceccarini (Italy)
Olympiacos | 2–0 | Croatia Zagreb |
---|---|---|
Alexandris 21' Gogić 80' |
Report |
Attendance: 60,502
Referee: David Elleray (England)
Olympiacos | 1–0 | Ajax |
---|---|---|
Alexandris 38' | Report |
Attendance: 73,208[5]
Referee: Manuel Díaz Vega (Spain)
Porto | 3–0 | Croatia Zagreb |
---|---|---|
Doriva 33' Zahovič 42', 75' |
Report |
Attendance: 16,500
Referee: Günter Benkö (Austria)
Ajax | 2–0 | Olympiacos |
---|---|---|
Witschge 36' Gorré 88' |
Report |
Attendance: 46,000
Referee: Stefano Braschi (Italy)
Croatia Zagreb | 3–1 | Porto |
---|---|---|
Mikić 7' Rukavina 37' Mujčin 61' |
Report | Jardel 39' |
Attendance: 5,000[6]
Referee: Markus Merk (Germany)
Ajax | 0–1 | Croatia Zagreb |
---|---|---|
Report | Šimić 67' |
Attendance: 47,000[7]
Referee: Marc Batta (France)
Olympiacos | 2–1 | Porto |
---|---|---|
Gogić 18' Đorđević 55' |
Report | Zahovič 76' |
Attendance: 70,232
Referee: Hugh Dallas (Scotland)
Porto | 3–0 | Ajax |
---|---|---|
Zahovič 54', 73' Drulović 79' |
Report |
Attendance: 15,000
Referee: Pierluigi Collina (Italy)
Croatia Zagreb | 1–1 | Olympiacos |
---|---|---|
Jeličić 35' | Report | Giannakopoulos 64' |
Attendance: 16,546
Referee: Rune Pedersen (Norway)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Juventus | 6 | 1 | 5 | 0 | 7 | 5 | +2 | 8 | Advance to knockout stage |
2 | Galatasaray | 6 | 2 | 2 | 2 | 8 | 8 | 0 | 8 | |
3 | Rosenborg | 6 | 2 | 2 | 2 | 7 | 8 | −1 | 8 | |
4 | Athletic Bilbao | 6 | 1 | 3 | 2 | 5 | 6 | −1 | 6 |
Juventus | 2–2 | Galatasaray |
---|---|---|
Inzaghi 17' Birindelli 69' |
Report | Şükür 44' Ümit 63' |
Attendance: 37,192
Referee: Markus Merk (Germany)
Athletic Bilbao | 1–1 | Rosenborg |
---|---|---|
Etxeberria 7' | Report | Strand 64' |
Attendance: 33,500[8]
Referee: Vasyl Melnychuk (Ukraine)
Rosenborg | 1–1 | Juventus |
---|---|---|
Skammelsrud 69' (pen.) | Report | Inzaghi 26' |
Attendance: 15,385
Referee: Amand Ancion (Belgium)
Galatasaray | 2–1 | Athletic Bilbao |
---|---|---|
Okan 16' Hagi 90+3' |
Report | Urzaiz 17' |
Attendance: 19,828
Referee: Graham Poll (England)
Rosenborg | 3–0 | Galatasaray |
---|---|---|
Rushfeldt 69', 86', 89' | Report |
Attendance: 15,372
Referee: Nikolai Levnikov (Russia)
Athletic Bilbao | 0–0 | Juventus |
---|---|---|
Report |
Attendance: 39,000
Referee: Kim Milton Nielsen (Denmark)
Juventus | 1–1 | Athletic Bilbao |
---|---|---|
Lasa 68' (o.g.) | Report | Guerrero 45' |
Attendance: 44,584
Referee: Hugh Dallas (Scotland)
Galatasaray | 3–0 | Rosenborg |
---|---|---|
Şükür 55', 74' Arif 66' |
Report |
Attendance: 21,856[9]
Referee: Hellmut Krug (Germany)
Rosenborg | 2–1 | Athletic Bilbao |
---|---|---|
Sørensen 2', 50' | Report | Pérez 90' |
Attendance: 15,454
Referee: Bernd Heynemann (Germany)
Galatasaray | 1–1 | Juventus |
---|---|---|
Suat 90' | Report | Amoruso 78' |
Attendance: 22,920
Referee: Gilles Veissière (France)
Juventus | 2–0 | Rosenborg |
---|---|---|
Inzaghi 16' Amoruso 36' |
Report |
Attendance: 7,174
Referee: Mario van der Ende (Netherlands)
Athletic Bilbao | 1–0 | Galatasaray |
---|---|---|
Guerrero 44' | Report |
Attendance: 16,000
Referee: Urs Meier (Switzerland)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Internazionale | 6 | 4 | 1 | 1 | 9 | 5 | +4 | 13 | Advance to knockout stage |
2 | Real Madrid | 6 | 4 | 0 | 2 | 17 | 8 | +9 | 12 | |
3 | Spartak Moscow | 6 | 2 | 2 | 2 | 7 | 6 | +1 | 8 | |
4 | Sturm Graz | 6 | 0 | 1 | 5 | 2 | 16 | −14 | 1 |
Real Madrid | 2–0 | Internazionale |
---|---|---|
Hierro 80' (pen.) Seedorf 90' |
Report |
Attendance: 42,000
Referee: Hugh Dallas (Scotland)
Sturm Graz | 0–2 | Spartak Moscow |
---|---|---|
Report | Titov 60' Tsymbalar 63' |
Attendance: 11,000
Referee: Atanas Uzunov (Bulgaria)
Internazionale | 1–0 | Sturm Graz |
---|---|---|
Djorkaeff 90' | Report |
Attendance: 24,791
Referee: Rune Pedersen (Norway)
Spartak Moscow | 2–1 | Real Madrid |
---|---|---|
Tsymbalar 72' Titov 78' |
Report | Raúl 63' |
Attendance: 60,000
Referee: Bernd Heynemann (Germany)
Real Madrid | 6–1 | Sturm Graz |
---|---|---|
Sávio 13', 90' Raúl 22' Jarni 61', 79' Popović 67' (o.g.) |
Report | Vastić 8' |
Attendance: 21,600[15]
Referee: Graham Barber (England)
Internazionale | 2–1 | Spartak Moscow |
---|---|---|
Ventola 32' Ronaldo 59' |
Report | Tsymbalar 64' |
Attendance: 44,199
Referee: Marc Batta (France)
Spartak Moscow | 1–1 | Internazionale |
---|---|---|
Tikhonov 67' | Report | Simeone 88' |
Attendance: 75,500[16]
Referee: Urs Meier (Switzerland)
Sturm Graz | 1–5 | Real Madrid |
---|---|---|
Haas 3' | Report | Panucci 8', 61' Mijatović 35' Seedorf 57' Šuker 74' |
Attendance: 13,851
Referee: Karl-Erik Nilsson (Sweden)
Internazionale | 3–1 | Real Madrid |
---|---|---|
Zamorano 51' Baggio 86', 90' |
Report | Seedorf 57' |
Attendance: 77,829
Referee: Markus Merk (Germany)
Spartak Moscow | 0–0 | Sturm Graz |
---|---|---|
Report |
Attendance: 38,000[17]
Referee: Michel Piraux (Belgium)
Real Madrid | 2–1 | Spartak Moscow |
---|---|---|
Raúl 34' Sávio 66' |
Report | Khlestov 89' |
Attendance: 60,000
Referee: László Vagner (Hungary)
Sturm Graz | 0–2 | Internazionale |
---|---|---|
Report | Zanetti 64' Baggio 80' |
Attendance: 12,685
Referee: Jacek Granat (Poland)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Bayern Munich | 6 | 3 | 2 | 1 | 9 | 6 | +3 | 11 | Advance to knockout stage |
2 | Manchester United | 6 | 2 | 4 | 0 | 20 | 11 | +9 | 10 | |
3 | Barcelona | 6 | 2 | 2 | 2 | 11 | 9 | +2 | 8 | |
4 | Brøndby | 6 | 1 | 0 | 5 | 4 | 18 | −14 | 3 |
Manchester United | 3–3 | Barcelona |
---|---|---|
Giggs 16' Scholes 24' Beckham 63' |
Report | Anderson 47' Giovanni 59' (pen.) Luis Enrique 70' (pen.) |
Attendance: 53,601
Referee: Stefano Braschi (Italy)
Brøndby | 2–1 | Bayern Munich |
---|---|---|
Helmer 87' (o.g.) Ravn 89' |
Report | Babbel 76' |
Attendance: 30,378
Referee: László Vagner (Hungary)
Bayern Munich | 2–2 | Manchester United |
---|---|---|
Élber 11', 89' | Report | Yorke 30' Scholes 49' |
Attendance: 53,000[18]
Referee: Marc Batta (France)
Barcelona | 2–0 | Brøndby |
---|---|---|
Anderson 44', 85' | Report |
Attendance: 65,000[19]
Referee: Gerd Grabher (Austria)
Brøndby | 2–6 | Manchester United |
---|---|---|
Daugaard 35' Sand 90' |
Report | Giggs 2', 21' Cole 28' Keane 55' Yorke 60' Solskjær 62' |
Attendance: 40,315
Referee: Vítor Melo Pereira (Portugal)
Bayern Munich | 1–0 | Barcelona |
---|---|---|
Effenberg 45' | Report |
Attendance: 56,000
Referee: Anders Frisk (Sweden)
Barcelona | 1–2 | Bayern Munich |
---|---|---|
Giovanni 29' (pen.) | Report | Zickler 48' Salihamidžić 87' |
Attendance: 85,000[20]
Referee: Pierluigi Collina (Italy)
Manchester United | 5–0 | Brøndby |
---|---|---|
Beckham 7' Cole 12' P. Neville 16' Yorke 28' Scholes 63' |
Report |
Attendance: 53,250
Referee: Ľuboš Micheľ (Slovakia)
Barcelona | 3–3 | Manchester United |
---|---|---|
Anderson 1' Rivaldo 57', 73' |
Report | Yorke 25', 68' Cole 53' |
Attendance: 67,648
Referee: Günter Benkö (Austria)
Bayern Munich | 2–0 | Brøndby |
---|---|---|
Jancker 51' Basler 57' |
Report |
Attendance: 34,000
Referee: Oğuz Sarvan (Turkey)
Manchester United | 1–1 | Bayern Munich |
---|---|---|
Keane 43' | Report | Salihamidžić 55' |
Attendance: 54,434
Referee: Dick Jol (Netherlands)
Brøndby | 0–2 | Barcelona |
---|---|---|
Report | Figo 6' Rivaldo 36' |
Attendance: 40,892
Referee: Nikolai Levnikov (Russia)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Dynamo Kyiv | 6 | 3 | 2 | 1 | 11 | 7 | +4 | 11 | Advance to knockout stage |
2 | Lens | 6 | 2 | 2 | 2 | 5 | 6 | −1 | 8 | |
3 | Arsenal | 6 | 2 | 2 | 2 | 8 | 8 | 0 | 8 | |
4 | Panathinaikos | 6 | 2 | 0 | 4 | 6 | 9 | −3 | 6 |
Panathinaikos | 2–1 | Dynamo Kyiv |
---|---|---|
Mykland 56' Liberopoulos 69' |
Report | Rebrov 31' |
Attendance: 20,310
Referee: Vítor Melo Pereira (Portugal)
Lens | 1–1 | Arsenal |
---|---|---|
Vairelles 90+2' | Report | Overmars 51' |
Attendance: 33,371
Referee: Hellmut Krug (Germany)
Arsenal | 2–1 | Panathinaikos |
---|---|---|
Adams 62' Keown 75' |
Report | Mauro 87' |
Attendance: 73,454
Referee: Antonio López Nieto (Spain)
Dynamo Kyiv | 1–1 | Lens |
---|---|---|
Shevchenko 61' | Report | Vairelles 62' |
Attendance: 52,500[22]
Referee: Günter Benkö (Austria)
Arsenal | 1–1 | Dynamo Kyiv |
---|---|---|
Bergkamp 74' | Report | Rebrov 90+2' |
Attendance: 73,256
Referee: Ryszard Wójcik (Poland)
Lens | 1–0 | Panathinaikos |
---|---|---|
Eloi 80' | Report |
Attendance: 32,757
Referee: Dick Jol (Netherlands)
Dynamo Kyiv | 3–1 | Arsenal |
---|---|---|
Rebrov 26' (pen.) Holovko 61' Shevchenko 72' |
Report | Hughes 82' |
Attendance: 76,600
Referee: Piero Ceccarini (Italy)
Panathinaikos | 1–0 | Lens |
---|---|---|
Vokolos 53' | Report |
Attendance: 55,031
Referee: José García-Aranda (Spain)
Arsenal | 0–1 | Lens |
---|---|---|
Report | Debève 72' |
Attendance: 73,707
Referee: Anders Frisk (Sweden)
Dynamo Kyiv | 2–1 | Panathinaikos |
---|---|---|
Rebrov 72' Basinas 80' (o.g.) |
Report | Lagonikakis 36' |
Attendance: 46,000[23]
Referee: Hellmut Krug (Germany)
Panathinaikos | 1–3 | Arsenal |
---|---|---|
Sypniewski 74' | Report | Asanović 64' (o.g.) Anelka 80' Boa Morte 86' |
Attendance: 41,105
Referee: Stefano Braschi (Italy)
Lens | 1–3 | Dynamo Kyiv |
---|---|---|
Šmicer 78' | Report | Kaladze 60' Vashchuk 75' Shevchenko 85' |
Attendance: 39,423
Referee: Ľuboš Micheľ (Slovakia)
Pos | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|
1 | Kaiserslautern | 6 | 4 | 1 | 1 | 12 | 6 | +6 | 13 | Advance to knockout stage |
2 | Benfica | 6 | 2 | 2 | 2 | 8 | 9 | −1 | 8 | |
3 | PSV Eindhoven | 6 | 2 | 1 | 3 | 10 | 11 | −1 | 7 | |
4 | HJK | 6 | 1 | 2 | 3 | 8 | 12 | −4 | 5 |
PSV Eindhoven | 2–1 | HJK |
---|---|---|
Ooijer 57' Bruggink 90+3' |
Report | Kottila 32' |
Attendance: 14,460
Referee: Ľuboš Micheľ (Slovakia)
Kaiserslautern | 1–0 | Benfica |
---|---|---|
Wagner 41' | Report |
Attendance: 31,112
Referee: Pierluigi Collina (Italy)
Benfica | 2–1 | PSV Eindhoven |
---|---|---|
Nuno Gomes 47' João Pinto 76' |
Report | Rommedahl 70' |
Attendance: 45,000
Referee: Nikolai Levnikov (Russia)
HJK | 0–0 | Kaiserslautern |
---|---|---|
Report |
Attendance: 21,217
Referee: Leslie Irvine (Northern Ireland)
PSV Eindhoven | 1–2 | Kaiserslautern |
---|---|---|
Khokhlov 78' | Report | Riedl 67' Rische 81' |
Attendance: 20,500
Referee: Alain Sars (France)
HJK | 2–0 | Benfica |
---|---|---|
Lehkosuo 20' (pen.) Kottila 70' |
Report |
Attendance: 25,126
Referee: Václav Krondl (Czech Republic)
Kaiserslautern | 3–1 | PSV Eindhoven |
---|---|---|
Rische 68' Reich 77' Hristov 90' |
Report | Van Nistelrooy 18' |
Attendance: 31,444
Referee: David Elleray (England)
Benfica | 2–2 | HJK |
---|---|---|
Nuno Gomes 78' Calado 80' |
Report | Minto 5' (o.g.) Luiz Antônio 84' |
Attendance: 28,500
Referee: László Vagner (Hungary)
HJK | 1–3 | PSV Eindhoven |
---|---|---|
Lehkosuo 70' (pen.) | Report | Van Nistelrooy 30', 67', 82' (pen.) |
Attendance: 34,146
Referee: José García-Aranda (Spain)
Benfica | 2–1 | Kaiserslautern |
---|---|---|
Nuno Gomes 31' João Pinto 70' |
Report | Rische 90' |
Attendance: 15,000[24]
Referee: Paul Durkin (England)
PSV Eindhoven | 2–2 | Benfica |
---|---|---|
Khokhlov 41' Van Nistelrooy 89' |
Report | Nuno Gomes 47' (pen.), 64' |
Attendance: 17,900
Referee: Karl-Erik Nilsson (Sweden)
Kaiserslautern | 5–2 | HJK |
---|---|---|
Rösler 43', 61', 80' Marschall 49' Rische 85' |
Report | Ilola 29' Luiz Antônio 68' |
Attendance: 27,310[25]
Referee: Kim Milton Nielsen (Denmark)
Pos | Grp | Team | Pld | W | D | L | GF | GA | GD | Pts | Qualification |
---|---|---|---|---|---|---|---|---|---|---|---|
1 | C | Real Madrid | 6 | 4 | 0 | 2 | 17 | 8 | +9 | 12 | Advance to knockout stage |
2 | D | Manchester United | 6 | 2 | 4 | 0 | 20 | 11 | +9 | 10 | |
3 | B | Galatasaray | 6 | 2 | 2 | 2 | 8 | 8 | 0 | 8 | |
4 | F | Benfica | 6 | 2 | 2 | 2 | 8 | 9 | −1 | 8 | |
5 | E | Lens | 6 | 2 | 2 | 2 | 5 | 6 | −1 | 8 | |
6 | A | Croatia Zagreb | 6 | 2 | 2 | 2 | 5 | 7 | −2 | 8 |