2019-20 Club Football
The completed 2019-20 season: the club power ranking and UEFA country coefficients, the European and continental competitions with qualifying, group, league-phase and knockout results, every final domestic table across the confederations, and every cup final.
700 clubs ranked · 105 leagues · 18 cup finals
Club power ranking
Score = 0.65 form + 0.35 five-year pedigree + current-season coefficient, less a losing-record penalty. Filter by country (ordered by coefficient rank), or switch to the country coefficient table or the transfer money.
Show all 100 rows
European & continental competitions
Champions League2020UEFAWinner: Bayern Munich
Qualifying47▾
Europa League2020UEFAWinner: Sevilla FC
Qualifying181▾
Copa Libertadores / Copa Sudamericana2 competitions
Qualifying22▾
Other competitions6 competitions
Final domestic tables
Against expectation
Match points earned minus expected, over the season.
How this is measured
Every match in these leagues is scored against a pre-game probability, and a club's surplus is the match points it took (a win 1, a draw 0.5) minus the points that model expected of it. Zero is a club that finished exactly where its results said it should.
Surplus is comparable within a league and only loosely across leagues, because league size and era differ.
2019-20 covers 6 leagues: Primera División (Spain), Serie A (Italy), Bundesliga (Germany), Ligue 1 (France), Eredivisie (Netherlands), English top flight (England). A club whose season the ledger does not carry has no figure here, and none is guessed.
Historical results compiled by James Curley, github.com/jalapic/engsoccerdata
Historical results compiled by James Curley, github.com/jalapic/engsoccerdata
Spain
La Liga2020Tier 1
Show all 20 rows
Segunda División2020Tier 2
Show all 22 rows
Primera División RFEF2020Tier 3
Show all 20 rows
Show all 20 rows
Show all 20 rows
Show all 20 rows
England
Premier League2020Tier 1
Show all 20 rows
Championship2020Tier 2
Show all 24 rows
League One2020Tier 3
Show all 24 rows
League Two2020Tier 4
Show all 24 rows
National League2020Tier 5
Show all 24 rows
Germany
Bundesliga2020Tier 1
Show all 18 rows
2. Bundesliga2020Tier 2
Show all 18 rows
3. Liga2020Tier 3
Show all 20 rows
Italy
Serie A2020Tier 1
Show all 20 rows
Serie B2020Tier 2
Show all 20 rows
Serie C2020Tier 3
Show all 20 rows
Show all 20 rows
Show all 20 rows
France
Ligue 12020Tier 1
Show all 20 rows
2019-20 is a partial season: abandoned at the COVID-19 shutdown, 279 of 380 played. Its surplus covers only the matches that were played.
Ligue 22020Tier 2
Show all 20 rows
National 12020Tier 3
Show all 18 rows
Portugal
Primeira Liga2020Tier 1
Show all 18 rows
Segunda Liga2020Tier 2
Show all 18 rows
Netherlands
Eredivisie2020Tier 1
Show all 18 rows
2019-20 is a partial season: voided at the COVID-19 shutdown, 232 of 306 played. Its surplus covers only the matches that were played.
Eerste Divisie2020Tier 2
Show all 20 rows
Tweede Divisie2020Tier 3
Show all 18 rows
Scotland
Premiership2020Tier 1
Championship2020Tier 2
League One2020Tier 3
League Two2020Tier 4
Squad value: Player valuations from Transfermarkt via github.com/dcaribou/transfermarkt-datasets (CC0)
Cup competitions
Show all 20 cups
Club power ranking: 0.65 opponent- & stage-weighted quality per match + 0.35 pedigree + current-season coefficient, less a losing-record penalty. Country coefficients are the full 5-year UEFA window.