To create the league rankings, we take all shots faced by all goalkeepers to date in their league. We learn a set of embeddings that captures the different skillsets of a goalkeeper, which we can then swap in order to simulate their performance.
This gives us the total number of goals each goalkeeper would have been expected to concede (xG) if they faced every shot. To make this more interpretable, we first standardise the xG’s from a season total to per game, and then take this from the league average.
This final value is the number of xG’s a goalkeeper would have either prevented or conceded compared to the league average. So without further ado, here are Stats Perform’s goalkeeper rankings for Nov. 27:
Premier League: Week 14
Ranking | Player Name | Team | Games Played | xG Prevented/90 Min |
---|---|---|---|---|
1 | Adrian | Liverpool | 7 | 0.36 |
2 | Ederson | Manchester City | 11 | 0.34 |
3 | Kasper Schmeichel | Leicester City | 13 | 0.20 |
4 | Bernd Leno | Arsenal | 13 | 0.18 |
5 | David de Gea | Manchester United | 13 | 0.18 |
6 | Alisson | Liverpool | 6 | 0.16 |
7 | Paulo Gazzaniga | Tottenham | 6 | 0.15 |
8 | Aaron Ramsdale | Bournemouth | 13 | 0.12 |
9 | Vicente Guaita | Crystal Palace | 11 | 0.10 |
10 | Mathew Ryan | Brighton & Hove Albion | 13 | 0.06 |
11 | Lukasz Fabianski | West Ham | 7 | 0.04 |
12 | Roberto | West Ham | 6 | 0.01 |
13 | Tom Heaton | Aston Villa | 12 | -0.02 |
14 | Jordan Pickford | Everton | 13 | -0.02 |
15 | Nick Pope | Burnley | 13 | -0.06 |
16 | Martin Dubravka | Newcastle United | 13 | -0.07 |
17 | Hugo Lloris | Tottenham | 7 | -0.09 |
18 | Rui Patricio | Wolverhampton | 13 | -0.12 |
19 | Dean Henderson | Sheffield United | 12 | -0.14 |
20 | Kepa | Chelsea | 13 | -0.22 |
21 | Ben Foster | Watform | 13 | -0.26 |
22 | Tim Krul | Norwich City | 11 | -0.37 |
23 | Angus Gunn | Southampton | 10 | -0.54 |
Bundesliga: Week 13
Ranking | Player Name | Team | Games Played | xG Prevented/90 Min |
---|---|---|---|---|
1 | Yann Sommer | Monchengladbach | 12 | 0.45 |
2 | Kevin Trapp | Eintracht Frankfurt | 6 | 0.37 |
3 | Peter Gulacsi | RB Leipzig | 12 | 0.32 |
4 | Alexander Nubel | Schalke 04 | 12 | 0.19 |
5 | Lukas Hradecky | Bayer Leverkusen | 12 | 0.18 |
6 | Pavao Pervan | VfL Wolfsburg | 8 | 0.17 |
7 | Leopold Zingerle | SC Paderborn 07 | 6 | 0.16 |
8 | Manuel Neuer | Bayern Munich | 12 | 0.15 |
9 | Rafal Gikiewicz | Union Berlin | 12 | 0.15 |
10 | Roman Burki | Borussia Dortmund | 9 | 0.07 |
11 | Jiri Pavlenka | Werder Bremen | 12 | -2.21 |
12 | Rune Jarstein | Hertha BSC | 12 | -0.03 |
13 | Robin Zentner | Mainz 05 | 9 | -0.12 |
14 | Oliver Baumann | 1899 Hoffenheim | 12 | -0.14 |
15 | Zack Steffen | Fortuna Dusseldorf | 12 | -0.20 |
16 | Alexander Schwolow | SC Freiburg | 8 | -0.22 |
17 | Timo Horn | FC Koln | 12 | -0.32 |
18 | Tomas Koubek | FC Augsburg | 12 | -0.51 |
19 | Jannik Huth | SC Paderborn 07 | 6 | -0.68 |
Ligue 1: Week 15
Ranking | Player Name | Team | Games Played | xG Prevented/90 Min |
---|---|---|---|---|
1 | Geronimo Rulli | Montpellier | 13 | 0.33 |
2 | Predrag Rajkovic | Stade de Reims | 14 | 0.30 |
3 | Keylor Navas | PSG | 9 | 0.24 |
4 | Edouard Mendy | Stade Rennais | 9 | 0.24 |
5 | Benoit Costil | Bordeaux | 14 | 0.18 |
6 | Mike Maignan | Lille | 14 | 0.13 |
7 | Steve Mandanda | Marseille | 14 | 0.11 |
8 | Anthony Lopes | Olympique Lyonnais | 14 | 0.09 |
9 | Walter Benitez | OGC | 12 | 0.00 |
10 | Matz Sels | Strasbourg | 14 | -0.02 |
11 | Alfred Gomis | Dijon FCO | 10 | -0.04 |
12 | Regis Gurtner | Amiens SC | 14 | -0.06 |
13 | Benjamin Lecomte | Monaco | 14 | -0.06 |
14 | Gautier Larsonneur | Brest | 13 | -0.07 |
15 | Stephane Ruffier | St-Etienne | 11 | -0.12 |
16 | Alban Lafont | Nantes | 14 | -0.13 |
17 | Alexandre Oukidja | Metz | 14 | -0.18 |
18 | Paul Bernardoni | Nimes Olympique | 10 | -0.25 |
19 | Baptiste Reynet | Toulouse | 14 | -0.31 |
20 | Ludovic Butelle | Angers | 14 | -0.38 |
La Liga: Week 15
Ranking | Player Name | Team | Games Played | xG Prevented/90 Min |
---|---|---|---|---|
1 | Unai Simon | Athletic Bilbao | 13 | 0.45 |
2 | Sergio Asenjo | Villarreal | 11 | 0.29 |
3 | Jan Oblak | Atletico Madrid | 14 | 0.26 |
4 | Aitor Fernandez | Levante | 14 | 0.16 |
5 | Manuel Reina | RCD Mallorca | 13 | 0.16 |
6 | Tomas Vaclik | Sevilla | 14 | 0.14 |
7 | Miguel Angel Moya | Real Sociedad | 7 | 0.10 |
8 | Joel Robles | Real Betis | 13 | 0.09 |
9 | Fernando Pacheco | Alaves | 11 | 0.06 |
10 | Jasper Cillessen | Valencia | 12 | 0.03 |
11 | Ruben Blanco | Celta Vigo | 13 | 0.02 |
12 | Jordi Masip | Valladolid | 14 | 0.01 |
13 | Thibaut Courtois | Real Madrid | 11 | 0.01 |
14 | Marc-Andre ter Stegen | Barcelona | 13 | 0.01 |
15 | Ruben | Osasuna | 13 | -0.04 |
16 | Rui Silva | Granada | 14 | -0.20 |
17 | Diego Lopez | Espanyol | 14 | -0.20 |
18 | David Soria | Getafe CF | 14 | -0.21 |
19 | Marko Dmitrovic | Eibar | 14 | -0.34 |
20 | Ivan Cuellar | CD Leganes | 7 | -0.79 |
Serie A: Week 13
Ranking | Player Name | Team | Games Played | xG Prevented/90 Min |
---|---|---|---|---|
1 | Robin Olsen | Cagliari | 12 | 0.53 |
2 | Wojciech Szczesny | Juventus FC | 9 | 0.53 |
3 | Pau Lopez | AS Roma | 13 | 0.19 |
4 | Thomas Strakosha | SS Lazio | 13 | 0.13 |
5 | Marco Silvestri | Verona | 13 | 0.12 |
6 | Luigi Sepe | Parma | 13 | 0.11 |
7 | Jesse Joronen | Brescia | 11 | 0.09 |
8 | Samir Handanovic | Inter Milan | 13 | 0.03 |
9 | Ionut Radu | Genoa | 13 | 0.02 |
10 | Salvatore Sirigu | Torino FC | 13 | 0.02 |
11 | Bartlomiej Dragowski | ACF Fiorentina | 13 | -0.00 |
12 | Etrit Berisha | SPAL | 13 | -0.01 |
13 | Alex Meret | SSC Napoli | 9 | -0.02 |
14 | Gianluigi Donnarumma | AC Milan | 12 | -0.06 |
15 | Emil Audero | Sampdoria | 13 | -0.11 |
16 | Juan Musso | Udinese | 13 | -0.20 |
17 | Gabriel | Lecce | 13 | -0.24 |
18 | Andrea Consigli | Sassuolo | 12 | -0.26 |
19 | Pierluigi Gollini | Atalanta | 12 | -0.43 |
20 | Lukasz Skorupski | Bologna | 13 | -0.44 |