Tottenham Hotspur F.C. in European football

{{Short description|English club in European football}}

{{Use dmy dates|date=April 2022}}

{{infobox continental football

| continent = Europe

| title = Tottenham Hotspur F.C. in European football

| image = Feyenoord tegen Hotspur 1-3. Elftal Tottenham Hotspur, Bestanddeelnr 913-1290.jpg

| image_size =

| caption = Tottenham Hotspur squad prior to playing Feyenoord in the 1961–62 European Cup

| club = Tottenham Hotspur

| uefa cup = {{Collapsible list

|title=2

|1=1972

|2=1984}}

| cup winners' cup = {{Collapsible list

|title=1

|1=1963}}

| seasons played = 31

| first entry = 1961–62 European Cup

| last entry = 2024–25 UEFA Europa League

}}

Tottenham Hotspur Football Club became the first British club to win a major European competition, with the European Cup Winners' Cup in 1963. In 1972, they won the inaugural UEFA Cup and won the competition again in 1984. The team regularly qualified for European football in the 2010s, and were runners-up in the 2018–19 UEFA Champions League. Defender Steve Perryman is the club's most decorated player; winning two UEFA Cup titles.{{cite web |url=https://www.tottenhamhotspur.com/the-club/history/legends/steve-perryman/ |title=Legends: Steve Perryman |work=Tottenham Hotspur F.C. |accessdate=30 August 2021}} Striker Harry Kane holds the record for most goals with 45, and most appearances with 76. In September 2021, Kane became the first player to score a hat-trick in each of the Champions League, Europa League, and Europa Conference League.

Up until 2016, White Hart Lane served as the club's home venue for European home matches, which was temporarily replaced with Wembley Stadium the following season. Their first home match of the 2016–17 UEFA Champions League group stage saw the club's highest-ever record attendance of 85,011 for a European home match against Monaco.{{cite news |first=Phil |last=McNulty |title=Tottenham Hotspur 1-2 Monaco |url=https://www.bbc.co.uk/sport/football/37331296 |publisher=BBC Sport |date=14 September 2016 |access-date=30 September 2021 }} As of 2019, home games are played at the Tottenham Hotspur Stadium.{{cite news |url=https://www.tottenhamhotspur.com/news/2019/april/city-dispatched-in-first-champions-league-match-at-new-stadium/ |title=City dispatched in first Champions League match at new stadium |publisher=Tottenham Hotspur F.C. |date=9 April 2019 |accessdate=30 September 2021 }}

Summary

=By competition=

class="wikitable" style="text-align: center;"

! width="160"|Competition

! width="50"|Seasons

! width="50"|Titles

! width="50"|Pld

! width="50"|W

! width="50"|D

! width="50"|L

! width="50"|GF

! width="50"|GA

! width="50"|GD

! width="150"|Last season played

! width="75"|Best result

European Cup
UEFA Champions League

| 7

| 0

| 63

| 28

| 13

| 22

| 116

| 90

| +26

| 2022–23

| bgcolor=Silver|Finalists

UEFA Cup
UEFA Europa League

| 17

| 2

| 165

| 95

| 40

| 30

| 337

| 146

| +191

| 2024–25

| bgcolor=Gold|Winners

UEFA Europa Conference League

| 1

| 0

| 8

| 3

| 1

| 4

| 14

| 12

| +2

| 2021–22

| Group stage

UEFA Cup Winners' Cup

| 6

| 1

| 33

| 20

| 5

| 8

| 65

| 34

| +31

| 1991–92

| bgcolor=Gold|Winners

UEFA Intertoto Cup

| 1

| 0

| 4

| 1

| 0

| 3

| 3

| 13

| −10

| 1995

| Group stage

Total

!32

!3

!273

!147

!59

!67

!535

!305

!+230

!

!

Source: [https://web.archive.org/web/20130328155500/http://www.uefa.com/teamsandplayers/teams/club=1652/profile/history/index.html UEFA.com], Last updated on 17 April 2025.
Pld = Matches played; W = Matches won; D = Matches drawn; L = Matches lost; GF = Goals for; GA = Goals against. Defunct competitions indicated in italics.

=By home or away=

class="wikitable" style="text-align: center;"

! width="120"|Overall

! width="35"|Pld

! width="35"|W

! width="35"|D

! width="35"|L

! width="35"|GF

! width="35"|GA

! width="35"|GD

Home1 2

| 136

| 96

| 23

| 17

| 338

| 117

| +221

Away

| 137

| 52

| 36

| 49

| 197

| 177

| +20

Neutral

| 2

| 1

| 0

| 1

| 5

| 3

| +2

bgcolor=#EEEEEE

|Total

|275

|149

|59

|67

|540

|297

| +243

Last updated: 17 April 2025

1 Includes two 1995 Intertoto Cup matches against Lucerne and Östers where Tottenham played as hosts away from their home stadium, at The Goldstone Ground. They lost both matches and Tottenham was banned from UEFA European competitions for the following season, after fielding under-strength sides.{{cite news|url=https://www.independent.co.uk/sport/uefa-ban-stuns-spurs-and-wimbledon-1323815.html |title=Uefa ban stuns Spurs and Wimbledon |last=Shaw |first=Phil |date=13 January 1996 |work=The Independent |access-date=10 March 2011}}{{cite news|url=https://www.independent.co.uk/sport/premier-league-vetoes-the-intertoto-cup-1324474.html |title=Premier League vetoes the Intertoto Cup |date=17 January 1996 |work=The Independent |accessdate=10 March 2011}}

2 Tottenham’s final group stage match at home in the 2021–22 UEFA Europa Conference League against Rennes did not take place due to numerous positive COVID-19 tests in the Tottenham Hotspur squad. The UEFA Appeals Body declined Tottenham’s request to rearrange the game before the 31 December deadline, which meant they had forfeited the game, awarding a 3–0 win for Rennes.{{cite news|url= https://www.tottenhamhotspur.com/news/2021/december/uefa-statement/ |title=UEFA Statement |date=9 December 2021|publisher=Tottenham Hotspur F.C. |access-date=20 December 2021}}{{cite web|url=https://www.uefa.com/uefaconferenceleague/news/0270-14009a873227-d729fc1f988d-1000--tottenham-vs-rennes-forfeited/|title=Tottenham vs Rennes forfeited|website=UEFA |publisher=Union of European Football Associations|date=20 December 2021|access-date=20 December 2021}}

=By opponent=

Table correct as of match played 17 April 2025.

class="sortable wikitable" style="text-align:center;"
Opponent

! Played

! Won

! Lost

! Drawn

! For

! Against

! Difference

style="text-align:left;"| {{flagicon|DEN}} AaB110032+1
style="text-align:left;"| {{flagicon|SCO}} Aberdeen210152+3
style="text-align:left;"| {{flagicon|NED}} Ajax431094+5
style="text-align:left;"| {{flagicon|BEL}} Anderlecht5113660
style="text-align:left;"| {{flagicon|CYP}} Anorthosis Famagusta210172+5
style="text-align:left;"| {{flagicon|BEL}} Antwerp211021+1
style="text-align:left;"| {{flagicon|RUS}} Anzhi Makhachkala220061+5
style="text-align:left;"| {{flagicon|CYP}} APOEL220060+6
style="text-align:left;"| {{flagicon|GRE}} Asteras Tripolis220072+5
style="text-align:left;"| {{flagicon|ESP}} Atlético Madrid110051+4
style="text-align:left;"| {{flagicon|AUT}} Austria Wien210121+1
style="text-align:left;"| {{flagicon|NED}} AZ320142+2
style="text-align:left;"| {{flagicon|ESP}} Barcelona402247−3
style="text-align:left;"| {{flagicon|GER}} Bayer Leverkusen3111110
style="text-align:left;"| {{flagicon|GER}} Bayern Munich6141716−9
style="text-align:left;"| {{flagicon|POR}} Benfica412169−3
style="text-align:left;"| {{flagicon|TUR}} Beşiktaş311132+1
style="text-align:left;"| {{flagicon|CZE}} Bohemians Prague210131+2
style="text-align:left;"| {{flagicon|GER}} Borussia Dortmund6420107+3
style="text-align:left;"| {{flagicon|POR}} Braga4400154+11
style="text-align:left;"| {{flagicon|BEL}} Club Brugge321073+4
style="text-align:left;"| {{flagicon|NIR}} Coleraine220070+7
style="text-align:left;"| {{flagicon|RUS}} CSKA Moscow220041+3
style="text-align:left;"| {{flagicon|GER}} 1. FC Köln321059−4
style="text-align:left;"| {{flagicon|ROU}} Dinamo București110031+2
style="text-align:left;"| {{flagicon|GEO}} Dinamo Tbilisi4301142+12
style="text-align:left;"| {{flagicon|CRO}} Dinamo Zagreb321063+3
style="text-align:left;"| {{flagicon|UKR}} Dnipro Dnipropetrovsk211032+1
style="text-align:left;"| {{flagicon|IRL}} Drogheda United2200140+14
style="text-align:left;"| {{flagicon|CZE}} Dukla Prague211042+2
style="text-align:left;"| {{flagicon|IRL}} Dundalk210121+1
style="text-align:left;"| {{flagicon|SUI}} Basel2002440
style="text-align:left;"| {{flagicon|GER}} Eintracht Frankfurt632185+3
style="text-align:left;"| {{flagicon|SWE}} IF Elfsborg110030+3
style="text-align:left;"| {{flagicon|POR}} Porto210121+1
style="text-align:left;"| {{flagicon|HUN}} Ferencváros110021+1
style="text-align:left;"| {{flagicon|NED}} Feyenoord8323129+3
style="text-align:left;"| {{flagicon|ITA}} Fiorentina411254+1
style="text-align:left;"| {{flagicon|TUR}} Galatasaray100123−1
style="text-align:left;"| {{flagicon|BEL}} Gent201123−1
style="text-align:left;"| {{flagicon|ESP}} Getafe101012−1
style="text-align:left;"| {{flagicon|POL}} Górnik Zabrze2110105+5
style="text-align:left;"| {{flagicon|SUI}} Grasshopper220092+7
style="text-align:left;"| {{flagicon|CRO}} Hajduk Split6402106+4
style="text-align:left;"| {{flagicon|ISR}} Hapoel Tel Aviv110020+2
style="text-align:left;"| {{flagicon|SCO}} Heart of Midlothian210150+5
style="text-align:left;"| {{flagicon|GER}} TSG Hoffenheim110032+1
style="text-align:left;"| {{flagicon|ITA}} Inter Milan63301211+1
style="text-align:left;"| {{flagicon|ITA}} Juventus201134−1
style="text-align:left;"| {{flagicon|GER}} 1. FC Kaiserslautern211012−1
style="text-align:left;"| {{flagicon|ISL}} Keflavík2200151+14
style="text-align:left;"| {{flagicon|ITA}} Lazio2002000
style="text-align:left;"| {{flagicon|CYP}} AEL Limassol220051+4
style="text-align:left;"| {{flagicon|AUT}} LASK210163+3
style="text-align:left;"| {{flagicon|ENG}} Liverpool312024−2
style="text-align:left;"| {{flagicon|BUL}} Lokomotiv Plovdiv110021+1
style="text-align:left;"| {{flagicon|GDR}} Lokomotive Leipzig220041+3
style="text-align:left;"| {{flagicon|SUI}} Lucerne101002−2
style="text-align:left;"| {{flagicon|BUL}} Ludogorets Razgrad220071+6
style="text-align:left;"| {{flagicon|NOR}} Lyn2200123+9
style="text-align:left;"| {{flagicon|FRA}} Lyon421176+1
style="text-align:left;"| {{flagicon|ISR}} Maccabi Haifa110072+5
style="text-align:left;"| {{flagicon|ENG}} Manchester City2110440
style="text-align:left;"| {{flagicon|ENG}} Manchester United211034−1
style="text-align:left;"| {{flagicon|SVN}} Maribor210142+2
style="text-align:left;"| {{flagicon|FRA}} Marseille220041+3
style="text-align:left;"| {{flagicon|ITA}} Milan621343+1
style="text-align:left;"| {{flagicon|FRA}} Monaco412176+1
style="text-align:left;"| {{flagicon|SVN}} Mura211063+3
style="text-align:left;"| {{flagicon|FRA}} Nantes210110+1
style="text-align:left;"| {{flagicon|NED}} NEC110010+1
style="text-align:left;"| {{flagicon|SRB}} OFK Beograd220052+3
style="text-align:left;"| {{flagicon|GRE}} Olympiacos4211105+5
style="text-align:left;"| {{flagicon|SWE}} Östers IF101012−1
style="text-align:left;"| {{flagicon|POR}} Paços de Ferreira2110312
style="text-align:left;"| {{flagicon|GRE}} Panathinaikos210142+2
style="text-align:left;"| {{flagicon|GRE}} PAOK201112−1
style="text-align:left;"| {{flagicon|SRB}} Partizan210110+1
style="text-align:left;"| {{flagicon|NED}} PSV421154+1
style="text-align:left;"| {{flagicon|AZE}} Qarabağ330071+6
style="text-align:left;"| {{flagicon|SCO}} Rangers321095+4
style="text-align:left;"| {{flagicon|ROU}} Rapid București220050+5
style="text-align:left;"| {{flagicon|GER}} RB Leipzig202004−4
style="text-align:left;"| {{flagicon|ESP}} Real Madrid613248−4
style="text-align:left;"| {{flagicon|SRB}} Red Star Belgrade4310111+10
style="text-align:left;"| {{flagicon|FRA}} Rennes201125−3
style="text-align:left;"| {{flagicon|ITA}} Roma1001220
style="text-align:left;"| {{flagicon|RUS}} Rubin Kazan2110110
style="text-align:left;"| {{flagicon|SVN}} Rudar Velenje110021+1
style="text-align:left;"| {{flagicon|ESP}} Sevilla201134−1
style="text-align:left;"| {{flagicon|UKR}} Shakhtar Donetsk201113−2
style="text-align:left;"| {{flagicon|IRL}} Shamrock Rovers220071+6
style="text-align:left;"| {{flagicon|MDA}} Sheriff Tiraspol220041+3
style="text-align:left;"| {{flagicon|MKD}} Shkëndija110031+2
style="text-align:left;"| {{flagicon|CZE}} Slavia Prague430152+3
style="text-align:left;"| {{flagicon|SVK}} Slovan Bratislava211062+4
style="text-align:left;"| {{flagicon|RUS}} Spartak Moscow1001220
style="text-align:left;"| {{flagicon|POR}} Sporting CP201113-2
style="text-align:left;"| {{flagicon|AUT}} SV Stockerau220020+2
style="text-align:left;"| {{flagicon|NOR}} Tromsø220050+5
style="text-align:left;"| {{flagicon|NED}} Twente210174+3
style="text-align:left;"| {{flagicon|ITA}} Udinese101002−2
style="text-align:left;"| {{flagicon|ROU}} UTA Arad210131+2
style="text-align:left;"| {{flagicon|NED}} Vitesse2110330
style="text-align:left;"| {{flagicon|POR}} Vitória de Setúbal2110220
style="text-align:left;"| {{flagicon|GER}} Werder Bremen210152+3
style="text-align:left;"| {{flagicon|POL}} Wisła Kraków210132+1
style="text-align:left;"| {{flagicon|AUT}} Wolfsberger AC220081+7
style="text-align:left;"| {{flagicon|ENG}} Wolverhampton Wanderers210132+1
style="text-align:left;"| {{flagicon|SUI}} Young Boys211063+3
style="text-align:left;"| {{flagicon|MDA}} Zimbru Chișinău210130+3
class="sortbottom"

! Total

2331285254468242+226

European finals

  • Spurs' score listed first

class="wikitable"
Year

!Date

!Competition

!Opposing Team

!Score (*)

!Venue

!Manager

!Captain(s)

bgcolor=Gold|1963

| 15 May

| Cup Winners' Cup

| {{flagicon|ESP|1945}} Atlético Madrid

| {{center|5–1}}

| {{flagicon|NED}} De Kuip, Rotterdam

| {{flagicon|ENG}} Bill Nicholson

| {{flagicon|NIR}} Danny Blanchflower

bgcolor=Gold|1972

| 1st leg: 3 May
{{nowrap|2nd leg: 17 May}}

| UEFA Cup

| {{flagicon|ENG}} Wolverhampton Wanderers

| {{center|3–2 agg.}}

| {{flagicon|ENG}} Molineux Stadium, Wolverhampton
{{flagicon|ENG}} White Hart Lane, London

| {{flagicon|ENG}} Bill Nicholson

| {{flagicon|ENG}} Alan Mullery

bgcolor=Silver|1974

| 1st leg: 22 May
{{nowrap|2nd leg: 29 May}}

| UEFA Cup

| {{flagicon|NED}} Feyenoord

| {{center|2–4 agg.}}

| {{flagicon|ENG}} White Hart Lane, London
{{flagicon|NED}} De Kuip, Rotterdam

| {{flagicon|ENG}} Bill Nicholson

| {{flagicon|ENG}} Martin Peters

bgcolor=Gold|1984

| 1st leg: 9 May
{{nowrap|2nd leg: 23 May}}

| UEFA Cup

| {{flagicon|BEL}} Anderlecht

| {{center|2–2 agg.
(4–2 p.)}}

| {{flagicon|BEL}} Constant Vanden Stock, Brussels
{{flagicon|ENG}} White Hart Lane, London

| {{flagicon|ENG}} Keith Burkinshaw

| {{flagicon|ENG}} Steve Perryman
{{flagicon|ENG}} Graham Roberts

bgcolor=Silver|2019

| 1 June

| UEFA Champions League

| {{flagicon|ENG}} Liverpool

| {{center|0–2}}

| {{flagicon|ESP}} Wanda Metropolitano, Madrid

| {{flagicon|ARG}} Mauricio Pochettino

| {{flagicon|FRA}} Hugo Lloris

List of matches

class="wikitable"

! Season

! Competition

! Round

! Opponent

! Home

! Away

! Agg.

! Ref.

rowspan=4|1961–62

| rowspan=4|European Cup

| Preliminary round

| align="left" |{{flagicon|POL|1928}} Górnik Zabrze

| bgcolor="#ddffdd" style="text-align:center"|8–1

| bgcolor="#ffdddd" style="text-align:center"|2–4

| bgcolor="#ddffdd" style="text-align:center"|{{nowrap|10–5}}

| {{UEFA Champions League match report |id=61614 |title=Górnik Zabrze vs. Tottenham Hotspur |date=13 September 1961 |access-date=14 February 2023}}{{UEFA Champions League match report |id=61615 |title=Tottenham Hotspur vs. Górnik Zabrze |date=20 September 1961 |access-date=14 February 2023}}

First round

| align="left" |{{flagicon|NED}} Feyenoord

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|4–2

| {{UEFA Champions League match report |id=61630 |title=Feyenoord vs. Tottenham Hotspur |date=1 November 1961 |access-date=13 February 2023}}{{UEFA Champions League match report |id=61631 |title=Tottenham Hotspur vs. Feyenoord |date=15 November 1961 |access-date=13 February 2023}}

Quarter-finals

| align="left" |{{flagicon|TCH}} Dukla Prague

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|4–2

|

Semi-finals

| align="left" |{{flagicon|POR}} Benfica

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffdddd" style="text-align:center"|1–3

| bgcolor="#ffdddd" style="text-align:center"|3–4

|

rowspan=4|1962–63

| rowspan=4|Cup Winners' Cup

| First round

| align="left" |{{flagicon|SCO}} Rangers

| bgcolor="#ddffdd" style="text-align:center"|5–2

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ddffdd" style="text-align:center"|8–4

|

Quarter-finals

| align="left" |{{flagicon|TCH}} Slovan Bratislava

| bgcolor="#ddffdd" style="text-align:center"|6–0

| bgcolor="#ffdddd" style="text-align:center"|0–2

| bgcolor="#ddffdd" style="text-align:center"|6–2

|

Semi-finals

| align="left" |{{flagicon|YUG}} OFK Beograd

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|5–2

|

Final

| align="left" |{{flagicon|ESP|1945}} Atlético Madrid

| style="text-align:center"|N/A

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|5–1

|

1963–64

| Cup Winners' Cup

| Second round

| align="left" |{{flagicon|ENG}} Manchester United

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|1–4

| bgcolor="#ffdddd" style="text-align:center"|3–4

|

rowspan=2|1967–68

| rowspan=2|Cup Winners' Cup

| First round

| align="left" |{{flagicon|YUG}} Hajduk Split

| bgcolor="#ddffdd" style="text-align:center"|4–3

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|6–3

|

Second round

| align="left" |{{flagicon|FRA|variant=1794}} Lyon

| bgcolor="#ddffdd" style="text-align:center"|4–3

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffffdd" style="text-align:center"|4–4 (a)

|

rowspan=6|1971–72

| rowspan=6|UEFA Cup

| First round

| align="left" |{{flagicon|ISL}} Keflavík

| bgcolor="#ddffdd" style="text-align:center"|9–0

| bgcolor="#ddffdd" style="text-align:center"|6–1

| bgcolor="#ddffdd" style="text-align:center"|15–1

|

Second round

| align="left" |{{flagicon|FRA|variant=1794}} Nantes

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

|

Third round

| align="left" |{{flagicon|ROM|1965}} Rapid București

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|5–0

|

Quarter-finals

| align="left" |{{flagicon|ROM|1965}} UTA Arad

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|3–1

|

Semi-finals

| align="left" |{{flagicon|ITA}} Milan

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Final

| align="left" |{{flagicon|ENG}} Wolverhampton Wanderers

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

rowspan=5|1972–73

| rowspan=5|UEFA Cup

| First round

| align="left" |{{flagicon|NOR}} Lyn

| bgcolor="#ddffdd" style="text-align:center"|6–0

| bgcolor="#ddffdd" style="text-align:center"|6–3

| bgcolor="#ddffdd" style="text-align:center"|12–3

|

Second round

| align="left" |{{flagicon|GRE|1970}} Olympiacos

| bgcolor="#ddffdd" style="text-align:center"|4–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|4–1

|

Third round

| align="left" |{{flagicon|YUG}} Red Star Belgrade

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

|

Quarter-finals

| align="left" |{{flagicon|POR}} Vitória de Setúbal

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffffdd" style="text-align:center"|2–2 (a)

|

Semi-finals

| align="left" |{{flagicon|ENG}} Liverpool

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffffdd" style="text-align:center"|2–2 (a)

|

rowspan=6|1973–74

| rowspan=6|UEFA Cup

| First round

| align="left" |{{flagicon|SUI}} Grasshopper

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ddffdd" style="text-align:center"|5–1

| bgcolor="#ddffdd" style="text-align:center"|9–2

|

Second round

| align="left" |{{flagicon|SCO}} Aberdeen

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|5–2

|

Third round

| align="left" |{{flagicon|URS}} Dinamo Tbilisi

| bgcolor="#ddffdd" style="text-align:center"|5–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|6–2

|

Quarter-finals

| align="left" |{{flagicon|FRG}} 1. FC Köln

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|5–1

|

Semi-finals

| align="left" |{{flagicon|GDR}} Lokomotive Leipzig

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|4–1

|

Final

| align="left" |{{flagicon|NED}} Feyenoord

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffdddd" style="text-align:center"|0–2

| bgcolor="#ffdddd" style="text-align:center"|2–4

|

rowspan=4|1981–82

| rowspan=4|Cup Winners' Cup

| First round

| align="left" |{{flagicon|NED}} Ajax

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|6–1

|

Second round

| align="left" |{{flagicon|IRL}} Dundalk

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

|

Quarter-finals

| align="left" |{{flagicon|FRG}} Eintracht Frankfurt

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Semi-finals

| align="left" |{{flagicon|ESP}} Barcelona

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffdddd" style="text-align:center"|1–2

|

rowspan=2|1982–83

| rowspan=2|Cup Winners' Cup

| First round

| align="left" |{{flagicon|NIR}} Coleraine

| bgcolor="#ddffdd" style="text-align:center"|4–0

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|7–0

|

Second round

| align="left" |{{flagicon|FRG}} Bayern Munich

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|1–4

| bgcolor="#ffdddd" style="text-align:center"|2–5

|

rowspan=6|1983–84

| rowspan=6|UEFA Cup

| First round

| align="left" |{{flagicon|IRL}} Drogheda United

| bgcolor="#ddffdd" style="text-align:center"|8–0

| bgcolor="#ddffdd" style="text-align:center"|6–0

| bgcolor="#ddffdd" style="text-align:center"|14–0

|

Second round

| align="left" |{{flagicon|NED}} Feyenoord

| bgcolor="#ddffdd" style="text-align:center"|4–2

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|6–2

|

Third round

| align="left" |{{flagicon|FRG}} Bayern Munich

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

|

Quarter-finals

| align="left" |{{flagicon|AUT}} Austria Wien

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ddffdd" style="text-align:center"|4–2

|

Semi-finals

| align="left" |{{flagicon|YUG}} Hajduk Split

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffffdd" style="text-align:center"|2–2 (a)

|

Final

| align="left" |{{flagicon|BEL}} Anderlecht

| bgcolor="#ffffdd" style="text-align:center"|1–1 {{aet}}

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|2–2 (4–3 p)

|

rowspan=4|1984–85

| rowspan=4|UEFA Cup

| First round

| align="left" |{{flagicon|POR}} Braga

| bgcolor="#ddffdd" style="text-align:center"|6–0

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|9–0

|

Second round

| align="left" |{{flagicon|BEL}} Club Brugge

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ddffdd" style="text-align:center"|4–2

|

Third round

| align="left" |{{flagicon|TCH}} Bohemians Prague

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–1

|

Quarter-finals

| align="left" |{{flagicon|ESP}} Real Madrid

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

|

rowspan=4|1991–92

| rowspan=4|Cup Winners' Cup

| Qualifying round

| align="left" |{{flagicon|AUT}} SV Stockerau

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|2–0

|

First round

| align="left" |{{flagicon|YUG}} Hajduk Split

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

|

Second round

| align="left" |{{flagicon|POR}} Porto

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ddffdd" style="text-align:center"|3–1

|

Quarter-finals

| align="left" |{{flagicon|NED}} Feyenoord

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

|

rowspan=4|1995–96

| rowspan=4|UEFA Intertoto Cup

| rowspan=4|Group 2

| align="left" |{{flagicon|SUI}} Lucerne

| bgcolor="#ffdddd" style="text-align:center"|0–2

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|SLO}} Rudar Velenje

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|2–1

| –

|

align="left" |{{flagicon|SWE}} Östers IF

| bgcolor="#ffdddd" style="text-align:center"|1–2

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|GER}} 1. FC Köln

| style="text-align:center"|N/A

| bgcolor="#ffdddd" style="text-align:center"|0–8

| –

|

rowspan=2|1999–2000

| rowspan=2|UEFA Cup

| First round

| align="left" |{{flagicon|MDA}} Zimbru Chișinău

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ddffdd" style="text-align:center"|3–0

|

Second round

| align="left" |{{flagicon|GER}} 1. FC Kaiserslautern

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|0–2

| bgcolor="#ffdddd" style="text-align:center"|1–2

|

rowspan=8|2006–07

| rowspan=8|UEFA Cup

| First round

| align="left" |{{flagicon|CZE}} Slavia Prague

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|2–0

|

rowspan=4|Group B

| align="left" |{{flagicon|TUR}} Beşiktaş

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|2–0

| –

|

align="left" |{{flagicon|BEL}} Club Brugge

| bgcolor="#ddffdd" style="text-align:center"|3–1

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|GER}} Bayer Leverkusen

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|1–0

| –

|

align="left" |{{flagicon|ROM}} Dinamo București

| bgcolor="#ddffdd" style="text-align:center"|3–1

| style="text-align:center"|N/A

| –

|

Round of 32

| align="left" |{{flagicon|NED}} Feyenoord

| style="text-align:center"|N/A

| style="text-align:center"|N/A

| style="text-align:center"|Bye

|

Round of 16

| align="left" |{{flagicon|POR}} Braga

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ddffdd" style="text-align:center"|6–4

|

Quarter-finals

| align="left" |{{flagicon|ESP}} Sevilla

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffdddd" style="text-align:center"|3–4

|

rowspan=7|2007–08

| rowspan=7|UEFA Cup

| First round

| align="left" |{{flagicon|CYP}} Anorthosis Famagusta

| bgcolor="#ddffdd" style="text-align:center"|6–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|7–2

|

rowspan=4|Group G

| align="left" |{{flagicon|ESP}} Getafe

| bgcolor="#ffdddd" style="text-align:center"|1–2

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|ISR}} Hapoel Tel Aviv

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|2–0

| –

|

align="left" |{{flagicon|DEN}} AaB

| bgcolor="#ddffdd" style="text-align:center"|3–2

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|BEL}} Anderlecht

| style="text-align:center"|N/A

| bgcolor="#ffffdd" style="text-align:center"|1–1

| –

|

Round of 32

| align="left" |{{flagicon|CZE}} Slavia Prague

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Round of 16

| align="left" |{{flagicon|NED}} PSV Eindhoven

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|1–0 {{aet}}

| bgcolor="#ffffdd" style="text-align:center"|1–1 (5–6 p)

|

rowspan=6|2008–09

| rowspan=6|UEFA Cup

| First round

| align="left" |{{flagicon|POL}} Wisła Kraków

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

rowspan=4|Group D

| align="left" |{{flagicon|ITA}} Udinese

| style="text-align:center"|N/A

| bgcolor="#ffdddd" style="text-align:center"|0–2

| –

|

align="left" |{{flagicon|CRO}} Dinamo Zagreb

| bgcolor="#ddffdd" style="text-align:center"|4–0

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|NED}} NEC

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|1–0

| –

|

align="left" |{{flagicon|RUS}} Spartak Moscow

| bgcolor="#ffffdd" style="text-align:center"|2–2

| style="text-align:center"|N/A

| –

|

Round of 32

| align="left" |{{flagicon|UKR}} Shakhtar Donetsk

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|0–2

| bgcolor="#ffdddd" style="text-align:center"|1–3

|

rowspan=6|2010–11

| rowspan=6|UEFA Champions League

| Play-off round

| align="left" |{{flagicon|SUI}} Young Boys

| bgcolor="#ddffdd" style="text-align:center"|4–0

| bgcolor="#ffdddd" style="text-align:center"|2–3

| bgcolor="#ddffdd" style="text-align:center"|6–3

|

rowspan=3|Group A

| align="left" |{{flagicon|GER}} Werder Bremen

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffffdd" style="text-align:center"|2–2

| –

|

align="left" |{{flagicon|NED}} Twente

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ffffdd" style="text-align:center"|3–3

| –

|

align="left" |{{flagicon|ITA}} Inter Milan

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ffdddd" style="text-align:center"|3–4

| –

|

Round of 16

| align="left" |{{flagicon|ITA}} Milan

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

|

Quarter-finals

| align="left" |{{flagicon|ESP}} Real Madrid

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffdddd" style="text-align:center"|0–4

| bgcolor="#ffdddd" style="text-align:center"|0–5

|

rowspan=4|2011–12

| rowspan=4|UEFA Europa League

| Play-off round

| align="left" |{{flagicon|SCO}} Heart of Midlothian

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ddffdd" style="text-align:center"|5–0

| bgcolor="#ddffdd" style="text-align:center"|5–0

|

rowspan=3|Group A

| align="left" |{{flagicon|GRE}} PAOK

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffffdd" style="text-align:center"|0–0

| –

|

align="left" |{{flagicon|RUS}} Rubin Kazan

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| –

|

align="left" |{{flagicon|IRL}} Shamrock Rovers

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|4–0

| –

|

rowspan=6|2012–13

| rowspan=6|UEFA Europa League

| rowspan=3|Group J

| align="left" |{{flagicon|ITA}} Lazio

| bgcolor="#ffffdd" style="text-align:center"|0–0

| bgcolor="#ffffdd" style="text-align:center"|0–0

| –

|

align="left" |{{flagicon|GRE}} Panathinaikos

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–1

| –

|

align="left" |{{flagicon|SLO}} Maribor

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–1

| –

|

Round of 32

| align="left" |{{flagicon|FRA}} Lyon

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Round of 16

| align="left" |{{flagicon|ITA}} Inter Milan

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffdddd" style="text-align:center"|1–4 {{aet}}

| bgcolor="#ffffdd" style="text-align:center"|4–4 (a)

|

Quarter-finals

| align="left" |{{flagicon|SUI}} Basel

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffffdd" style="text-align:center"|2–2 {{aet}}

| bgcolor="#ffffdd" style="text-align:center"|4–4 (1–4 p)

|

rowspan=6|2013–14

| rowspan=6|UEFA Europa League

| Play-off round

| align="left" |{{flagicon|GEO}} Dinamo Tbilisi

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|5–0

| bgcolor="#ddffdd" style="text-align:center"|8–0

|

rowspan=3|Group K

| align="left" |{{flagicon|RUS}} Anzhi Makhachkala

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ddffdd" style="text-align:center"|2–0

| –

|

align="left" |{{flagicon|MDA}} Sheriff Tiraspol

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|2–0

| –

|

align="left" |{{flagicon|NOR}} Tromsø

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|2–0

| –

|

Round of 32

| align="left" |{{flagicon|UKR}} Dnipro Dnipropetrovsk

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Round of 16

| align="left" |{{flagicon|POR}} Benfica

| bgcolor="#ffdddd" style="text-align:center"|1–3

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffdddd" style="text-align:center"|3–5

|

rowspan=5|2014–15

| rowspan=5|UEFA Europa League

| Play-off round

| align="left" |{{flagicon|CYP}} AEL Limassol

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ddffdd" style="text-align:center"|5–1

|

rowspan=3|Group C

| align="left" |{{flagicon|TUR}} Beşiktaş

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| –

|

align="left" |{{flagicon|SRB}} Partizan

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffffdd" style="text-align:center"|0–0

| –

|

align="left" |{{flagicon|GRE}} Asteras Tripolis

| bgcolor="#ddffdd" style="text-align:center"|5–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

| –

|

Round of 32

| align="left" |{{flagicon|ITA}} Fiorentina

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|0–2

| bgcolor="#ffdddd" style="text-align:center"|1–3

|

rowspan=5|2015–16

| rowspan=5|UEFA Europa League

| rowspan=3|Group J

| align="left" |{{flagicon|BEL}} Anderlecht

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffdddd" style="text-align:center"|1–2

| –

|

align="left" |{{flagicon|FRA}} Monaco

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| –

|

align="left" |{{flagicon|AZE}} Qarabağ

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|1–0

| –

|

Round of 32

| align="left" |{{flagicon|ITA}} Fiorentina

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|4–1

|

Round of 16

| align="left" |{{flagicon|GER}} Borussia Dortmund

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffdddd" style="text-align:center"|0–3

| bgcolor="#ffdddd" style="text-align:center"|1–5

|

rowspan=4|2016–17

| rowspan=3|UEFA Champions League

| rowspan=3|Group E

| align="left" |{{flagicon|FRA}} Monaco

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffdddd" style="text-align:center"|1–2

| –

|

align="left" |{{flagicon|RUS}} CSKA Moscow

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|1–0

| –

|

align="left" |{{flagicon|GER}} Bayer Leverkusen

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffffdd" style="text-align:center"|0–0

| –

|

UEFA Europa League

| Round of 32

| align="left" |{{flagicon|BEL}} Gent

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffdddd" style="text-align:center"|2–3

|

rowspan=4|2017–18

| rowspan=4|UEFA Champions League

| rowspan=3|Group H

| align="left" |{{flagicon|ESP}} Real Madrid

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ffffdd" style="text-align:center"|1–1

| –

|

align="left" |{{flagicon|GER}} Borussia Dortmund

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ddffdd" style="text-align:center"|2–1

| –

|

align="left" |{{flagicon|CYP}} APOEL

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|3–0

| –

|

Round of 16

| align="left" | {{flagicon|ITA}} Juventus

| bgcolor="#ffdddd" style="text-align:center"|1–2

| bgcolor="#ffffdd" style="text-align:center"|2–2

| bgcolor="#ffdddd" style="text-align:center"|3–4

|

rowspan=7|2018–19

| rowspan=7|UEFA Champions League

| rowspan=3|Group B

| align="left" |{{flagicon|ITA}} Inter Milan

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|1–2

| –

|

align="left" |{{flagicon|ESP}} Barcelona

| bgcolor="#ffdddd" style="text-align:center"|2–4

| bgcolor="#ffffdd" style="text-align:center"|1–1

| –

|

align="left" |{{flagicon|NED}} PSV Eindhoven

| bgcolor="#ddffdd" style="text-align:center"|2–1

| bgcolor="#ffffdd" style="text-align:center"|2–2

| –

|

Round of 16

| align="left" |{{flagicon|GER}} Borussia Dortmund

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|4–0

|

Quarter-finals

| align="left" |{{flagicon|ENG}} Manchester City

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ffdddd" style="text-align:center"|3–4

| bgcolor="#ffffdd" style="text-align:center"|4–4 (a)

|

Semi-finals

| align="left" |{{flagicon|NED}} Ajax

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ffffdd" style="text-align:center"|3–3 (a)

|

Final

| align="left" |{{flagicon|ENG}} Liverpool

| style="text-align:center"|N/A

| style="text-align:center"|N/A

| bgcolor="#ffdddd" style="text-align:center"|0–2

|

rowspan=4|2019–20

| rowspan=4|UEFA Champions League

| rowspan=3|Group B

| align="left" |{{flagicon|GRE}} Olympiacos

| bgcolor="#ddffdd" style="text-align:center"|4–2

| bgcolor="#ffffdd" style="text-align:center"|2–2

| –

|

align="left" |{{flagicon|GER}} Bayern Munich

| bgcolor="#ffdddd" style="text-align:center"|2–7

| bgcolor="#ffdddd" style="text-align:center"|1–3

| –

|

align="left" |{{flagicon|SRB}} Red Star Belgrade

| bgcolor="#ddffdd" style="text-align:center"|5–0

| bgcolor="#ddffdd" style="text-align:center"|4–0

| –

|

Round of 16

| align="left" |{{flagicon|GER}} RB Leipzig

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ffdddd" style="text-align:center"|0–3

| bgcolor="#ffdddd" style="text-align:center"|0–4

|

rowspan=8| 2020–21

| rowspan=8| UEFA Europa League

| Second qualifying round

| align="left" |{{flagicon|BUL}} Lokomotiv Plovdiv

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|2–1

| style="text-align:center"|N/A

|

Third qualifying round

| align="left" |{{flagicon|MKD}} Shkëndija

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|3–1

| style="text-align:center"|N/A

|

Play-off round

| align="left" |{{flagicon|ISR}} Maccabi Haifa

| bgcolor="#ddffdd" style="text-align:center"|7–2

| style="text-align:center"|N/A

| style="text-align:center"|N/A

|

rowspan=3|Group J

| align="left" |{{flagicon|BUL}} Ludogorets Razgrad

| bgcolor="#ddffdd" style="text-align:center"|4–0

| bgcolor="#ddffdd" style="text-align:center"|3–1

| –

|

align="left" |{{flagicon|AUT}} LASK

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffffdd" style="text-align:center"|3–3

| –

|

align="left" |{{flagicon|BEL}} Antwerp

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| –

|

Round of 32

| align="left" |{{flagicon|AUT}} Wolfsberger AC

| bgcolor="#ddffdd" style="text-align:center"|4–0

| bgcolor="#ddffdd" style="text-align:center"|4–1

| bgcolor="#ddffdd" style="text-align:center"|8–1

|

Round of 16

| align="left" |{{flagicon|CRO}} Dinamo Zagreb

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ffdddd" style="text-align:center"|0–3 {{aet}}

| bgcolor="#ffdddd" style="text-align:center"|2–3

|

rowspan=4| 2021–22

| rowspan=4| UEFA Europa Conference League

| Play-off round

| align="left" |{{flagicon|POR}} Paços de Ferreira

| bgcolor="#ddffdd" style="text-align:center"|3–0

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|3–1

|

rowspan="3"|Group G

| align="left" |{{flagicon|FRA}} Rennes

| bgcolor="#ffdddd" style="text-align:center"|0–3 (awd.)

| bgcolor="#ffffdd" style="text-align:center"|2–2

| –

|

align="left" |{{flagicon|NED}} Vitesse

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ffdddd" style="text-align:center"|0–1

| –

|

align="left" |{{flagicon|SVN}} Mura

| bgcolor="#ddffdd" style="text-align:center"|5–1

| bgcolor="#ffdddd" style="text-align:center"|1–2

| –

|

rowspan=4|2022–23

| rowspan=4|UEFA Champions League

| rowspan=3|Group D

| align="left" |{{flagicon|FRA}} Marseille

| bgcolor="#ddffdd" style="text-align:center"|2–0

| bgcolor="#ddffdd" style="text-align:center"|2–1

| –

| {{UEFA Champions League match report |id=2035648 |title=Tottenham Hotspur v Marseille |date=7 September 2022 |access-date=14 February 2023}}{{UEFA Champions League match report |id=2035728 |title=Marseille v Tottenham Hotspur |date=1 November 2022 |access-date=14 February 2023}}

align="left" |{{flagicon|POR}} Sporting CP

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ffdddd" style="text-align:center"|0–2

| –

| {{UEFA Champions League match report |id=2035663 |title=Sporting CP v Tottenham Hotspur |date=13 September 2022 |access-date=14 February 2023}}{{UEFA Champions League match report |id=2035711 |title=Tottenham Hotspur v Sporting CP |date=26 October 2022 |access-date=14 February 2023}}

align="left" |{{flagicon|GER}} Eintracht Frankfurt

| bgcolor="#ddffdd" style="text-align:center"|3–2

| bgcolor="#ffffdd" style="text-align:center"|0–0

| –

| {{UEFA Champions League match report |id=2035680 |title=Eintracht Frankfurt v Tottenham Hotspur |date=4 October 2022 |access-date=14 February 2023}}{{UEFA Champions League match report |id=2035695 |title=Tottenham Hotspur v Eintracht Frankfurt |date=12 October 2022 |access-date=14 February 2023}}

Round of 16

| align="left" |{{flagicon|ITA}} Milan

| bgcolor="ffffdd" style="text-align:center"|0–0

| bgcolor="ffdddd" style="text-align:center"|0–1

| bgcolor="ffdddd" style="text-align:center"|0–1

| {{UEFA Champions League match report |id=2036582 |title=Milan vs. Tottenham Hotspur |date=14 February 2023 |access-date=14 February 2023}}{{UEFA Champions League match report |id=2036592 |title=Tottenham Hotspur vs. Milan |date=8 March 2023 |access-date=14 February 2023}}

rowspan=11|2024–25

| rowspan=11|UEFA Europa League

| rowspan=8|League phase

| align="left" |{{flagicon|AZE}} Qarabağ

| bgcolor="#ddffdd" style="text-align:center"|3–0

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|HUN}} Ferencváros

| style="text-align:center"|N/A

| bgcolor="#ddffdd" style="text-align:center"|2–1

| –

|

align="left" |{{flagicon|NED}} AZ

|bgcolor="#ddffdd" style="text-align:center"|1–0

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|TUR}} Galatasaray

| style="text-align:center"|N/A

| bgcolor="ffdddd" style="text-align:center"|2–3

| –

|

align="left" |{{flagicon|ITA}} Roma

| bgcolor="#ffffdd" style="text-align:center"|2–2

| style="text-align:center"|N/A

| –

|

align="left" |{{flagicon|SCO}} Rangers

| style="text-align:center"|N/A

| bgcolor="#ffffdd" style="text-align:center"|1–1

| –

|

align="left" |{{flagicon|GER}} TSG Hoffenheim

| style="text-align:center"|N/A

|bgcolor="#ddffdd" style="text-align:center"|3–2

| –

|

align="left" |{{flagicon|SWE}} IF Elfsborg

|bgcolor="#ddffdd" style="text-align:center"|3–0

| style="text-align:center"|N/A

| –

|

Round of 16

| align="left" |{{flagicon|NED}} AZ

| bgcolor="#ddffdd" style="text-align:center"|3–1

| bgcolor="#ffdddd" style="text-align:center"|0–1

| bgcolor="#ddffdd" style="text-align:center"|3–2

|

Quarter-finals

| align="left" |{{flagicon|GER}} Eintracht Frankfurt

| bgcolor="#ffffdd" style="text-align:center"|1–1

| bgcolor="#ddffdd" style="text-align:center"|1–0

| bgcolor="#ddffdd" style="text-align:center"|2–1

|

Semi-finals

| align="left" |{{flagicon|NOR}} Bodø/Glimt

| style="text-align:center"|2024–25 UEFA_Europa League knockout phase#Tottenham Hotspur v Bodø/Glimt

| style="text-align:center"|2024–25 UEFA Europa League knockout phase#Bodø/Glimt v Tottenham Hotspur

| style="text-align:center"|

|

Last updated: 17 April 2025
Note: Tottenham score always listed first.

References

{{reflist}}