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. 12:
Premier League: Week 12
Manchester City’s goalkeeper Ederson
Ranking | Player Name | Team | Games Played | Saves | Goals Against | xG Prevented/90 Min |
---|---|---|---|---|---|---|
1 | Ederson | Manchester City | 10 | 29 | 18 | 0.42 |
2 | Adrian | Liverpool | 7 | 11 | 6 | 0.37 |
3 | Bernd Leno | Arsenal | 12 | 48 | 17 | 0.26 |
4 | David de Gea | Manchester United | 12 | 33 | 12 | 0.23 |
5 | Kasper Schmeichel | Leicester City | 12 | 32 | 8 | 0.22 |
6 | Vicente Guaita | Crystal Palace | 10 | 25 | 12 | 0.21 |
7 | Aaron Ramsdale | Bournemouth | 12 | 41 | 15 | 0.13 |
8 | Jordan Pickford | Everton | 12 | 29 | 18 | 0.05 |
9 | Lukasz Fabianski | West Ham | 7 | 20 | 8 | 0.05 |
10 | Mathew Ryan | Brighton & Hove Albion | 12 | 43 | 17 | 0.03 |
11 | Martin Dubravka | Newcastle United | 12 | 37 | 18 | 0.00 |
12 | Hugo Lloris | Tottehnam | 7 | 30 | 8 | -0.10 |
13 | Nick Pope | Burnley | 12 | 36 | 18 | -0.10 |
14 | Kepa | Chelsea | 12 | 17 | 17 | -0.12 |
15 | Dean Henderson | Sheffield United | 12 | 33 | 9 | -0.13 |
16 | Tom Heaton | Aston Villa | 11 | 33 | 18 | -0.13 |
17 | Rui Patricio | Wolverhampton | 12 | 31 | 15 | -0.15 |
18 | Ben Foster | Watform | 12 | 41 | 23 | -0.16 |
19 | Angus Gunn | Southampton | 10 | 30 | 25 | -0.54 |
20 | Tim Krul | Norwich City | 10 | 39 | 21 | -0.56 |
Bundesliga: Week 11
Moenchengladbach’s goalkeeper Yann Sommer
Rank | Player Name | Team | Games Played | Saves | Goals Against | xG Prevented/90 Min |
---|---|---|---|---|---|---|
1 | Yann Sommer | Monchengladbach | 11 | 40 | 11 | 0.47 |
2 | Kevin Trapp | Eintracht Frankfurt | 6 | 19 | 8 | 0.36 |
3 | Peter Gulacsi | RB Leipzig | 11 | 34 | 12 | 0.33 |
4 | Pavao Pervan | VfL Wolfsburg | 8 | 30 | 8 | 0.27 |
5 | Lukas Hradecky | Bayer Leverkusen | 11 | 25 | 15 | 0.17 |
6 | Manuel Neuer | Bayern Munich | 11 | 31 | 16 | 0.16 |
7 | Alexander Nubel | Schalke 04 | 11 | 27 | 14 | 0.14 |
8 | Roman Burki | Borussia Dortmund | 8 | 13 | 14 | 0.12 |
9 | Rafal Gikiewicz | Union Berlin | 11 | 45 | 17 | 0.12 |
10 | Jiri Pavlenka | Werder Bremen | 11 | 35 | 24 | 0.06 |
11 | Rune Jarstein | Hertha BSC | 11 | 37 | 21 | -0.02 |
12 | Oliver Baumann | 1899 Hoffenheim | 11 | 30 | 14 | -0.04 |
13 | Zack Steffen | Fortuna DŸsseldorf | 11 | 40 | 19 | -0.13 |
14 | Alexander Schwolow | SC Freiburg | 8 | 20 | 8 | -0.21 |
15 | Robin Zentner | Mainz 05 | 8 | 35 | 18 | -0.24 |
16 | Timo Horn | 1. FC Koln | 11 | 23 | 23 | -0.42 |
17 | Tomas Koubek | FC Augsburg | 11 | 31 | 24 | -0.50 |
18 | Jannik Huth | SC Paderborn 07 | 6 | 16 | 17 | -0.66 |
Ligue 1: Week 13
Rennes’ goalkeeper Edouard Mendy
Rank | Player Name | Team | Games Played | Saves | Goals Against | xG Prevented/90 Min |
---|---|---|---|---|---|---|
1 | Edouard Mendy | Stade Rennais | 8 | 25 | 8 | 0.39 |
2 | Predrag Rajkovic | Stade de Reims | 13 | 31 | 6 | 0.31 |
3 | Geronimo Rulli | Montpellier | 12 | 40 | 9 | 0.29 |
4 | Keylor Navas | PSG | 8 | 14 | 5 | 0.27 |
5 | Mike Maignan | Lille | 13 | 27 | 13 | 0.16 |
6 | Steve Mandanda | Marseille | 13 | 41 | 17 | 0.13 |
7 | Benoit Costil | Bordeaux | 13 | 31 | 15 | 0.12 |
8 | Anthony Lopes | Olympique Lyonnais | 13 | 34 | 13 | 0.09 |
9 | Regis Gurtner | Amiens SC | 13 | 40 | 20 | 0.04 |
10 | Matz Sels | Strasbourg | 13 | 38 | 14 | -0.02 |
11 | Walter Benitez | OGC Nice | 11 | 46 | 17 | -0.03 |
12 | Alban Lafont | Nantes | 13 | 28 | 12 | -0.03 |
13 | Stephane Ruffier | St-Etienne | 10 | 30 | 16 | -0.08 |
14 | Alfred Gomis | Dijon FCO | 9 | 37 | 7 | -0.08 |
15 | Gautier Larsonneur | Brest | 12 | 43 | 13 | -0.10 |
16 | Benjamin Lecomte | Monaco | 13 | 36 | 22 | -0.13 |
17 | Baptiste Reynet | Toulouse | 13 | 38 | 25 | -0.28 |
18 | Alexandre Oukidja | Metz | 13 | 40 | 18 | -0.28 |
19 | Paul Bernardoni | Nimes Olympique | 9 | 21 | 10 | -0.33 |
20 | Ludovic Butelle | Angers | 13 | 26 | 16 | -0.43 |
La Liga: Week 13
Rank | Player Name | Team | Games Played | Saves | Goals Against | xG Prevented/90 Min |
---|---|---|---|---|---|---|
1 | Unai Simon | Athletic Bilbao | 11 | 58 | 16 | 0.49 |
2 | Sergio Asenjo | Villarreal | 10 | 28 | 11 | 0.33 |
3 | Jan Oblak | Atletico Madrio | 12 | 21 | 8 | 0.29 |
4 | Joel Robles | Real Betis | 11 | 41 | 16 | 0.18 |
5 | Aitor Fernandez | Levante | 12 | 58 | 16 | 0.17 |
6 | Miguel Angel Moya | Real Sociedad | 7 | 24 | 9 | 0.11 |
7 | Manuel Reina | RCD Mallorca | 12 | 37 | 16 | 0.10 |
8 | Tomas Vaclik | Sevilla | 12 | 28 | 14 | 0.08 |
9 | Fernando Pacheco | Alaves | 10 | 28 | 15 | 0.07 |
10 | Thibaut Courtois | Real Madrid | 10 | 15 | 7 | 0.05 |
11 | Jordi Masip | Valladolid | 13 | 38 | 17 | 0.05 |
12 | Ruben Blanco | Celta Vigo | 13 | 43 | 19 | 0.03 |
13 | Juan Soriano | Leganes | 7 | 17 | 14 | 0.02 |
14 | Jasper Cillessen | Valencia | 11 | 29 | 12 | 0.02 |
15 | Marc-Andre ter Stegen | Barcelona | 12 | 23 | 15 | -0.07 |
16 | Diego Lopez | Espanyol | 12 | 29 | 23 | -0.11 |
17 | Rui Silva | Granada | 13 | 36 | 17 | -0.11 |
18 | Ruben | Osasuna | 12 | 20 | 13 | -0.11 |
19 | David Soria | Getafe CF | 12 | 26 | 15 | -0.22 |
20 | Marko Dmitrovic | Eibar | 13 | 22 | 21 | -0.44 |
21 | Ivan Cuellar | Leganes | 6 | 11 | 8 | -0.92 |
Serie A: Week 11
Rank | Player Name | Team | Games Played | Saves | Goals Against | xG Prevented/90 Min |
---|---|---|---|---|---|---|
1 | Wojciech Szczesny | Juventus FC | 8 | 34 | 6 | 0.57 |
2 | Robin Olsen | Cagliari | 11 | 42 | 11 | 0.53 |
3 | Jesse Joronen | Brescia | 10 | 41 | 18 | 0.17 |
4 | Luigi Sepe | Parma | 12 | 50 | 15 | 0.15 |
5 | Thomas Strakosha | SS Lazio | 12 | 46 | 13 | 0.15 |
6 | Pau Lopez | AS Roma | 12 | 37 | 14 | 0.14 |
7 | Salvatore Sirigu | Torino FC | 12 | 53 | 17 | 0.13 |
8 | Marco Silvestri | Verona | 12 | 42 | 11 | 0.04 |
9 | Alex Meret | SSC Napoli | 8 | 42 | 12 | 0.03 |
10 | Etrit Berisha | SPAL | 12 | 53 | 18 | 0.02 |
11 | Ionut Radu | Genoa | 12 | 48 | 26 | -0.01 |
12 | Samir Handanovic | Inter Milan | 12 | 28 | 12 | -0.02 |
13 | Gianluigi Donnarumma | AC Milan | 11 | 35 | 15 | -0.07 |
14 | Bartlomiej Dragowski | ACF Fiorentina | 12 | 33 | 19 | -0.08 |
15 | Emil Audero | Sampdoria | 12 | 42 | 19 | -0.17 |
16 | Andrea Consigli | Sassuolo | 11 | 36 | 21 | -0.25 |
17 | Gabriel | Lecce | 12 | 50 | 25 | -0.25 |
18 | Pierluigi Gollini | Atalanta | 11 | 28 | 17 | -0.31 |
19 | Juan Musso | Udinese | 12 | 40 | 18 | -0.35 |
20 | Lukasz Skorupski | Bologna | 12 | 40 | 20 | -0.42 |