Using Strength Ratings to Compare Football Clubs

Methodology

The foundation of each football club’s strength rating is derived from their GxG and GAxGA ratios, introduced in my previous blog post. Here is a quick overview of how each club’s strength is calculated:

  • After each match, the team’s actual goals and expected goals are used to determine their GxG and GAxGA values.
  • These values are then adjusted based on the opponent’s strength and whether the match was played at home or away.
  • Lastly, an exponential moving average (EMA) is applied to these values to establish a solid baseline for each team’s true strength within its own league.

The next challenge I faced was comparing clubs from completely different leagues. This is where the clubelo.com ratings proved incredibly helpful. They provide Elo ratings for thousands of clubs, along with a league average. Using these averages, I’m able to account for the variations in overall league strength. For instance, the English Premier League stands out as the strongest, while Serie A, La Liga, and the Bundesliga are roughly the same strength.
Armed with this data, it was now possible to compare teams across different leagues and even simulate hypothetical matchups between them.

Strength Ratings

Determining how to present individual team strength ratings was a bit tricky. One initial idea was to follow Opta’s method, assigning the best team a rating of ‘100’ and adjusting other teams accordingly.

I also considered using a star-based system, similar to the ones in EA Sports’ FIFA, with 5 stars for top clubs and 4 stars for Europa League-level teams. However, this approach made it hard to distinguish between teams that shared the same star rating, so I set that idea aside.

Fifa Ratings
FIFA Team Rating

In the end, I decided to use Nate Silver’s “Soccer Power Index” (SPI) concept. The idea is to benchmark every team’s performance against an average team on neutral ground, then apply a Poisson distribution to determine how many points they would earn. By definition, this model shows how many points a club would score against this imaginary opponent. For example, a team with a strength rating of 80 would earn 80 percent of all the possible points against the baseline team.

One challenge remained: teams with strong defenses but weaker offenses – like Everton, Union Berlin, or Real Sociedad – ended up at a disadvantage with this method. They would often draw against the average opponent, while more offensively robust but defensively weaker teams might rack up wins (and losses), ultimately scoring more points on average. To fix this issue, I decided to take the midpoint of the offensive and defensive ratings to calculate the final strength rating, resulting in a fairer representation of each team’s true capabilities. With that change, it is now possible to show accurate strength ratings for each team across all leagues.

Below, you’ll find the strength ratings for the top 20 clubs. The offensive rating indicates how many goals a team is likely to score against the hypothetical average opponent, while the defensive rating shows the average number of goals they would concede, so a lower number is better:

Football Club Strength Ratings

Football Club Strength Ratings

PosTrendTeamStrengthOffenseDefenseLeague
1
Paris S-G Logo Paris S-GPSGPSG
89.73.250.55Ligue 1
2
Barcelona Logo BarcelonaBarcelonaBAR
88.63.290.62La Liga
3
Arsenal Logo ArsenalArsenalARS
87.72.500.46Premier League
4
Liverpool Logo LiverpoolLiverpoolLIV
87.22.730.52Premier League
5
Bayern Munich Logo Bayern MunichBayern MünchenFCB
87.22.830.55Bundesliga
6
Manchester City Logo Manchester CityManchester CityMCI
85.52.590.54Premier League
7
Real Madrid Logo Real MadridReal MadridRMA
83.82.690.64La Liga
8▲ 1
Atalanta Logo AtalantaAtalantaATA
83.82.690.64Serie A
9▼ 1
Inter Logo InterInterINT
83.52.520.59Serie A
10▲ 1
Atletico Madrid Logo Atletico MadridAtlético MadridATM
82.52.270.55La Liga
11▼ 1
Napoli Logo NapoliNapoliNAP
82.22.280.56Serie A
12
Newcastle Utd Logo Newcastle UtdNewcastle UnitedNEW
82.22.440.61Premier League
13▲ 1
Aston Villa Logo Aston VillaAston VillaAVL
81.62.300.59Premier League
14▼ 1
Dortmund Logo DortmundDortmundBVB
81.22.400.63Bundesliga
15
Chelsea Logo ChelseaChelseaCHE
80.42.260.61Premier League
16
Roma Logo RomaRomaROM
80.32.080.56Serie A
17
Milan Logo MilanMilanMIL
80.02.410.68Serie A
18
Leverkusen Logo LeverkusenLeverkusenB04
79.92.160.60Bundesliga
19
Benfica Logo BenficaBenficaBEN
79.72.430.70Liga Portugal
20▲ 1
Juventus Logo JuventusJuventusJUV
79.52.040.57Serie A
21▼ 1
Monaco Logo MonacoMonacoASM
79.52.290.65Ligue 1
22
Manchester Utd Logo Manchester UtdManchester UnitedMUN
79.42.230.64Premier League
23▲ 1
PSV Eindhoven Logo PSV EindhovenPSVPSV
79.32.510.76Eredivisie
24▼ 1
Crystal Palace Logo Crystal PalaceCrystal PalaceCRY
79.22.210.63Premier League
25▲ 1
Sporting CP Logo Sporting CPSporting CPSCP
78.92.260.66Liga Portugal
26▼ 1
Villarreal Logo VillarrealVillarrealVIL
78.82.440.75La Liga
27
Athletic Club Logo Athletic ClubAthletic ClubATH
78.51.910.56La Liga
28
Bournemouth Logo BournemouthBournemouthBOU
78.12.180.66Premier League
29
Lyon Logo LyonLyonOL
77.62.320.73Ligue 1
30
Lazio Logo LazioLazioLAZ
77.52.180.68Serie A
31
Tottenham Logo TottenhamTottenhamTOT
77.02.130.67Premier League
32
Bologna Logo BolognaBolognaBOL
76.82.090.67Serie A
33
Brighton Logo BrightonBrightonBHA
76.72.200.71Premier League
34
Eint Frankfurt Logo Eint FrankfurtFrankfurtSGE
76.32.030.66Bundesliga
35
Brentford Logo BrentfordBrentfordBRE
76.22.110.69Premier League
36▲ 1
Fiorentina Logo FiorentinaFiorentinaFIO
75.92.140.72Serie A
37▲ 3
Marseille Logo MarseilleMarseilleOM
75.72.060.69Ligue 1
38▲ 1
Lille Logo LilleLilleLIL
75.71.850.61Ligue 1
39▼ 1
Fulham Logo FulhamFulhamFUL
75.72.010.67Premier League
40▲ 1
Stuttgart Logo StuttgartVfB StuttgartVfB
75.42.150.74Bundesliga
41▲ 3
Nice Logo NiceNiceNIC
75.21.970.67Ligue 1
42▲ 1
Nott'ham Forest Logo Nott’ham ForestNottingham ForestNFO
75.01.880.64Premier League
43▲ 2
Celta Vigo Logo Celta VigoCelta VigoCEL
74.52.150.77La Liga
44▲ 3
RB Leipzig Logo RB LeipzigRB LeipzigRBL
74.52.090.74Bundesliga
45▲ 1
Everton Logo EvertonEvertonEVE
74.21.680.59Premier League
46▼ 10
Club Brugge Logo Club BruggeClub BruggeBRU
74.12.000.71Pro League
47▲ 1
Betis Logo BetisReal BetisBET
73.92.090.77La Liga
48▼ 6
Union SG Logo Union SGUnion St.GilloiseUSG
73.21.780.65Pro League
49
Rennes Logo RennesRennesREN
73.11.850.68Ligue 1
50
Mainz 05 Logo Mainz 05Mainz 05M05
72.61.870.70Bundesliga
51
Feyenoord Logo FeyenoordFeyenoordFEY
72.51.960.75Eredivisie
52
Wolves Logo WolvesWolvesWOL
71.71.850.72Premier League
53
Strasbourg Logo StrasbourgStrasbourgSTR
71.61.870.74Ligue 1
54
Toulouse Logo ToulouseToulouseTFC
71.41.740.68Ligue 1
55
West Ham Logo West HamWest Ham UnitedWHU
71.31.820.72Premier League
56
Como Logo ComoComoCOM
70.91.940.79Serie A
57
Freiburg Logo FreiburgFreiburgSCF
70.71.830.75Bundesliga
58▲ 1
Porto Logo PortoPortoPOR
70.61.760.71Liga Portugal
59▼ 1
Valencia Logo ValenciaValenciaVAL
70.41.790.73La Liga
60
Lens Logo LensLensRCL
70.01.660.69Ligue 1
61
Ajax Logo AjaxAjaxAJA
69.61.840.78Eredivisie
62▲ 1
Sevilla Logo SevillaSevillaSEV
69.41.740.74La Liga
63▼ 1
Wolfsburg Logo WolfsburgWolfsburgWOB
69.31.840.79Bundesliga
64
Celtic Logo CelticCelticCEL
69.21.850.80Scottish Premiership
65▼ 1
Werder Bremen Logo Werder BremenWerder BremenSVW
69.01.830.80Bundesliga
66▼ 1
AZ Alkmaar Logo AZ AlkmaarAZAZ
68.91.690.73Eredivisie
67▼ 1
Osasuna Logo OsasunaOsasunaOSA
68.81.790.78La Liga
68
Alaves Logo AlavesDeportivo AlavesALA
68.61.570.69La Liga
69▲ 2
Brest Logo BrestBrestBRE
68.51.750.77Ligue 1
70▼ 1
Rayo Vallecano Logo Rayo VallecanoRayo VallecanoRAY
68.31.700.75La Liga
71▼ 1
Genoa Logo GenoaGenoaGEN
68.31.690.75Serie A
72
Leeds United Logo Leeds UnitedLeeds UnitedLEE
68.11.900.88Premier League
73
Torino Logo TorinoTorinoTOR
68.01.560.70Serie A
74▲ 2
Real Sociedad Logo Real SociedadReal SociedadRSO
68.01.630.73La Liga
75▼ 1
Gladbach Logo GladbachGladbachBMG
67.91.910.89Bundesliga
76▼ 1
Braga Logo BragaBragaBRA
67.51.770.82Liga Portugal
77▼ 10
Genk Logo GenkGenkGEN
67.01.680.78Pro League
78▼ 1
Girona Logo GironaGironaGIR
66.91.650.77La Liga
79
Hoffenheim Logo HoffenheimHoffenheimTSG
66.81.820.87Bundesliga
80▼ 2
Getafe Logo GetafeGetafeGET
66.51.550.73La Liga
81▼ 1
Utrecht Logo UtrechtUtrechtUTR
66.31.730.84Eredivisie
82
Parma Logo ParmaParmaPAR
65.81.790.89Serie A
83▲ 1
Sunderland Logo SunderlandSunderlandSUN
65.81.770.88Premier League
84▼ 1
Cagliari Logo CagliariCagliariCAG
65.71.730.86Serie A
85▲ 1
Espanyol Logo EspanyolEspanyolESP
65.71.650.81La Liga
86▼ 1
Vitoria Logo VitoriaVitóriaVSC
65.61.600.78Liga Portugal
87▲ 1
Levante Logo LevanteLevanteLEV
65.61.720.85La Liga
88▼ 1
Mallorca Logo MallorcaMallorcaMLL
65.51.480.72La Liga
89
Burnley Logo BurnleyBurnleyBUR
65.41.710.86Premier League
90
Auxerre Logo AuxerreAuxerreAJA
65.11.640.82Ligue 1
91
Augsburg Logo AugsburgAugsburgFCA
64.71.470.74Bundesliga
92
Union Berlin Logo Union BerlinUnion BerlinFCU
64.61.520.77Bundesliga
93
St. Pauli Logo St. PauliSt. PauliSTP
64.41.430.73Bundesliga
94
Udinese Logo UdineseUdineseUDI
63.71.640.87Serie A
95▲ 1
Anderlecht Logo AnderlechtAnderlechtRSC
63.11.530.82Pro League
96▼ 1
Nantes Logo NantesNantesNAN
62.81.530.83Ligue 1
97
Charleroi Logo CharleroiSporting CharleroiCHA
62.21.540.85Pro League
98
Twente Logo TwenteTwenteTWE
61.81.550.87Eredivisie
99▲ 1
Sassuolo Logo SassuoloSassuoloSAS
61.51.500.85Serie A
100▲ 4
Westerlo Logo WesterloWesterloWES
61.41.731.04Pro League
101
Lecce Logo LecceLecceLEC
61.31.460.84Serie A
102
Le Havre Logo Le HavreLe HavreHAC
61.11.600.93Ligue 1
103▲ 2
Lorient Logo LorientLorientLOR
61.11.570.91Ligue 1
104▼ 1
Heidenheim Logo HeidenheimHeidenheimFCH
61.01.460.84Bundesliga
105▲ 1
Go Ahead Eag Logo Go Ahead EagGo Ahead EaglesGAE
60.91.610.95Eredivisie
106▲ 1
Famalicao Logo FamalicaoFamalicãoFAM
60.81.570.92Liga Portugal
107▼ 26
Basel Logo BaselBaselFCB
60.71.590.95Swiss Super League
108▲ 1
Koln Logo Koln1. FC KölnFCK
60.71.380.80Bundesliga
109▲ 1
Pisa Logo PisaPisaPIS
60.61.520.90Serie A
110▲ 4
Metz Logo MetzMetzMET
60.51.530.90Ligue 1
111▲ 2
Cremonese Logo CremoneseCremoneseCRE
60.41.410.83Serie A
112
NEC Nijmegen Logo NEC NijmegenN.E.C. NijmengenNEC
60.41.520.90Eredivisie
113▼ 5
RB Salzburg Logo RB SalzburgRB SalzburgRBS
60.11.641.01AUT Bundesliga
114▲ 1
Oviedo Logo OviedoReal OviedoOVI
60.01.520.91La Liga
115▼ 16
Mechelen Logo MechelenKV MechelenKVM
59.91.600.98Pro League
116▲ 1
Santa Clara Logo Santa ClaraSanta ClaraSCL
59.61.390.84Liga Portugal
117▲ 2
Elche Logo ElcheElcheELC
59.51.380.84La Liga
118▲ 1
Rangers Logo RangersRangersRAN
59.51.590.99Scottish Premiership
119▼ 1
Hellas Verona Logo Hellas VeronaVeronaVER
59.51.450.88Serie A
120
Hamburger SV Logo Hamburger SVHamburger SVHSV
59.31.510.93Bundesliga
121▼ 10
Sturm Graz Logo Sturm GrazSturm GrazSTU
58.81.490.94AUT Bundesliga
122▼ 1
Sparta R'dam Logo Sparta R’damSparta RotterdamSPA
58.61.380.87Eredivisie
123▲ 5
Cercle Brugge Logo Cercle BruggeCercle BruggeCER
58.41.500.96Pro League
124▼ 2
Antwerp Logo AntwerpRoyal AntwerpROY
58.31.470.94Pro League
125
Paris FC Logo Paris FCParis FCPAR
58.21.520.98Ligue 1
126▼ 2
Arouca Logo AroucaAroucaARO
58.21.500.96Liga Portugal
127▼ 1
Estoril Logo EstorilEstorilEST
57.81.621.10Liga Portugal
128▼ 12
Wolfsberger AC Logo Wolfsberger ACWolfsberger ACWAC
57.21.511.01AUT Bundesliga
129▼ 2
Austria Wien Logo Austria WienAustria WienFAK
56.61.400.94AUT Bundesliga
130▲ 5
Rapid Wien Logo Rapid WienRapid WienSCR
56.51.400.95AUT Bundesliga
131▼ 2
Angers Logo AngersAngersSCO
56.21.300.89Ligue 1
132▼ 2
Sint-Truiden Logo Sint-TruidenSt.TruidenTRU
55.31.441.03Pro League
133
Heerenveen Logo HeerenveenHeerenveenHEE
55.11.320.94Eredivisie
134▼ 3
Moreirense Logo MoreirenseMoreirenseMOR
55.11.320.93Liga Portugal
135▼ 3
Rio Ave Logo Rio AveRio AveRIO
55.01.461.06Liga Portugal
136▼ 2
Gent Logo GentGentKAA
54.81.401.02Pro League
137
Gil Vicente FC Logo Gil Vicente FCGil Vicente FCGIL
54.61.280.92Liga Portugal
138▼ 15
LASK Logo LASKLASKASK
54.51.310.94AUT Bundesliga
139
Zwolle Logo ZwollePEC ZwollePEC
54.41.360.99Eredivisie
140▼ 2
Casa Pia Logo Casa PiaCasa PiaCSP
54.41.340.98Liga Portugal
141▲ 1
Dender Logo DenderDenderDEN
53.51.441.11Pro League
142▼ 1
Groningen Logo GroningenGroningenGRO
53.31.290.97Eredivisie
143▲ 1
Lausanne-Sport Logo Lausanne-SportLausanneLAU
53.21.321.01Swiss Super League
144▼ 8
Young Boys Logo Young BoysYoung BoysBSC
52.91.341.03Swiss Super League
145▼ 2
Standard Liege Logo Standard LiegeStandard LiegeLIE
52.91.200.92Pro League
146▲ 1
Hibernian Logo HibernianHibernianHIB
52.51.311.02Scottish Premiership
147▼ 7
Servette FC Logo Servette FCServetteSER
51.71.331.07Swiss Super League
148▼ 3
Fortuna Sittard Logo Fortuna SittardFortuna SittardFOR
51.61.220.97Eredivisie
149▼ 3
OH Leuven Logo OH LeuvenOH LeuvenOHL
51.31.271.03Pro League
150
Lugano Logo LuganoLuganoLUG
51.31.291.05Swiss Super League
151▼ 4
Heracles Almelo Logo Heracles AlmeloHeracles AlmeloHER
50.81.341.12Eredivisie
152
Zurich Logo ZurichFC ZürichFCZ
50.81.271.05Swiss Super League
153▼ 5
Nacional Logo NacionalNacionalNAC
50.81.291.07Liga Portugal
154▼ 5
Luzern Logo LuzernLuzernLUZ
50.71.351.14Swiss Super League
155▼ 1
Hearts Logo HeartsHeartsHEA
50.51.211.00Scottish Premiership
156▼ 5
Zulte Waregem Logo Zulte WaregemZulte WaregemZUL
50.31.281.08Pro League
157▼ 4
Excelsior Logo ExcelsiorExcelsiorEXC
49.41.191.02Eredivisie
158▼ 4
NAC Breda Logo NAC BredaNAC BredaNAC
49.01.241.09Eredivisie
159▲ 11
St.Gallen Logo St.GallenSt. GallenSTG
48.71.231.10Swiss Super League
160▼ 1
St Mirren Logo St MirrenSt MirrenMIR
48.21.221.10Scottish Premiership
161▼ 4
Telstar Logo TelstarTelstarTEL
48.01.181.07Eredivisie
162▲ 2
Blau-Wei Linz Logo Blau-Wei LinzBlau Weiß LinzBWL
47.71.231.13AUT Bundesliga
163▼ 7
Hartberg Logo HartbergHartbergHTB
47.61.201.10AUT Bundesliga
164▼ 4
Tondela Logo TondelaTondelaTON
47.41.181.10Liga Portugal
165▼ 7
Estrela Logo EstrelaEstrelaEST
47.41.081.00Liga Portugal
166▼ 7
Alverca Logo AlvercaAlvercaALV
47.41.201.11Liga Portugal
167▼ 6
La Louviere Logo La LouviereRAAL La LouviereRAA
47.21.171.09Pro League
168▼ 1
Aberdeen Logo AberdeenAberdeenABE
45.81.161.14Scottish Premiership
169
Kilmarnock Logo KilmarnockKilmarnockKIL
45.31.111.10Scottish Premiership
170▼ 7
Volendam Logo VolendamVolendamVOL
45.11.151.15Eredivisie
171▼ 5
Sion Logo SionSionSIO
44.21.101.13Swiss Super League
172▼ 7
AVS Futebol Logo AVS FutebolAVS FutebolAVS
43.71.141.21Liga Portugal
173▼ 4
Thun Logo ThunThunTHU
43.51.161.25Swiss Super League
174▼ 12
FC Winterthur Logo FC WinterthurWinterthurFCW
43.51.151.23Swiss Super League
175▼ 20
Grasshopper Logo GrasshopperGrasshopperGRA
42.81.031.11Swiss Super League
176▼ 2
Dundee Logo DundeeDundeeDUN
42.11.211.41Scottish Premiership
177▼ 10
WSG Tirol Logo WSG TirolWSG TirolWSG
42.11.131.28AUT Bundesliga
178▼ 2
Dundee United Logo Dundee UnitedDundee UnitedDUN
41.81.061.19Scottish Premiership
179▼ 11
Grazer AK Logo Grazer AKGrazer AKGAK
41.61.131.29AUT Bundesliga
180▼ 8
Ried Logo RiedRiedSVR
40.30.971.15AUT Bundesliga
181▼ 2
Motherwell Logo MotherwellMotherwellMOT
40.31.081.29Scottish Premiership
182▼ 11
SCR Altach Logo SCR AltachAltachALT
38.61.021.29AUT Bundesliga
183
Falkirk Logo FalkirkFalkirkFAL
36.11.001.40Scottish Premiership
184
Livingston Logo LivingstonLivingstonLIV
34.90.931.34Scottish Premiership