Champions League Player Predictability
How predictable is each Champions League player? Before every match our models publish a full probability distribution for how many shots and shots on target each player will take. This board compares those distributions with what actually happened across the 2024-25 campaign, for every player who started at least 8 matches, a full league phase. The score measures how much closer our distributions get than a baseline that knows only the player's position and his expected minutes. Higher means easier to call in advance.
| # | Player | Role | Club | Starts | Score | Shots skill | On target skill | Scorer skill | Shots / match |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Kenan Bajrić | Defender | S. Bratislava | 8 | +82.6 ±2.7 | +70.1% | +95.1% | +90.6% | 0.00 |
| 2 | Florentino | Midfielder | Benfica | 9 | +75.8 ±4.5 | +63.1% | +88.4% | +76.2% | 0.11 |
| 3 | Tomás Araújo | Defender | Benfica | 11 | +71.9 ±5.4 | +70.2% | +73.7% | +51.6% | 0.00 |
| 4 | Bafodé Diakité | Defender | Lille | 9 | +63.5 ±5.3 | +44.4% | +82.5% | +46.7% | 0.00 |
| 5 | Joaquin Seys | Midfielder | Club Brugge | 9 | +62.5 ±7.3 | +60.5% | +64.6% | +72.7% | 0.00 |
| 6 | Willian Pacho | Defender | Paris | 16 | +60.6 ±10.8 | +48.4% | +72.9% | +19.0% | 0.06 |
| 7 | Valeriy Bondar | Defender | Shakhtar | 8 | +51.7 ±20.4 | +16.6% | +86.8% | +85.4% | 0.25 |
| 8 | Auston Trusty | Defender | Celtic | 8 | +45.9 ±12.5 | +17.0% | +74.9% | +37.8% | 0.25 |
| 9 | Erling Haaland | Forward | Man City | 9 | +44.3 ±16.0 | +41.5% | +47.2% | +29.4% | 4.22 |
| 10 | William Saliba | Defender | Arsenal | 11 | +41.7 ±12.1 | +10.5% | +72.8% | +10.8% | 0.18 |
| 11 | Marten de Roon | Midfielder | Atalanta | 10 | +41.1 ±18.0 | +45.1% | +37.0% | +44.9% | 0.40 |
| 12 | Alessandro Bastoni | Defender | Inter | 12 | +40.1 ±4.9 | -1.0% | +81.2% | +68.6% | 0.33 |
| 13 | Alejandro Balde | Defender | Barcelona | 9 | +38.2 ±5.2 | -1.7% | +78.0% | +63.0% | 0.22 |
| 14 | Jamal Musiala | Midfielder | Bayern München | 9 | +36.2 ±10.2 | +44.1% | +28.3% | +6.7% | 3.22 |
| 15 | Boubacar Kamara | Midfielder | Aston Villa | 8 | +35.4 ±23.8 | +47.8% | +23.0% | +70.7% | 0.25 |
| 16 | Ousmane Diomande | Defender | Sporting CP | 9 | +34.3 ±9.1 | +0.0% | +68.7% | +9.9% | 0.22 |
| 17 | Isak Hien | Defender | Atalanta | 8 | +33.9 ±6.7 | -3.8% | +71.5% | -46.2% | 0.50 |
| 18 | Florian Wirtz | Midfielder | Leverkusen | 9 | +32.9 ±6.8 | +29.9% | +35.9% | +36.6% | 2.89 |
| 19 | Michael Olise | Midfielder | Bayern München | 13 | +32.8 ±10.0 | +49.6% | +15.9% | +6.2% | 3.08 |
| 20 | Callum McGregor | Midfielder | Celtic | 10 | +32.0 ±10.6 | +41.0% | +23.0% | +43.3% | 0.40 |
| 21 | Benjamin André | Midfielder | Lille | 9 | +30.8 ±24.7 | +28.6% | +32.9% | +77.3% | 0.56 |
| 22 | Martin Vitík | Defender | Sparta Praha | 8 | +29.7 ±8.0 | -2.6% | +62.0% | +28.6% | 0.50 |
| 23 | Frenkie de Jong | Midfielder | Barcelona | 8 | +25.6 ±14.6 | +8.3% | +42.9% | +35.9% | 0.12 |
| 24 | Greg Taylor | Defender | Celtic | 8 | +25.6 ±16.7 | +16.7% | +34.4% | +5.7% | 0.12 |
| 25 | Lamine Camara | Midfielder | Monaco | 9 | +24.7 ±10.2 | +0.9% | +48.5% | -1.6% | 0.67 |
| 26 | David Strelec | Forward | S. Bratislava | 8 | +23.6 ±16.9 | +25.8% | +21.3% | -4.2% | 1.12 |
| 27 | Achraf Hakimi | Defender | Paris | 17 | +23.3 ±5.7 | +24.4% | +22.1% | +5.3% | 2.12 |
| 28 | Alejandro Grimaldo | Defender | Leverkusen | 10 | +23.3 ±6.1 | +30.6% | +15.9% | +11.8% | 2.30 |
| 29 | Jeremie Frimpong | Defender | Leverkusen | 9 | +22.8 ±18.9 | +25.2% | +20.3% | -603.4% | 1.44 |
| 30 | Konrad Laimer | Midfielder | Bayern München | 10 | +22.2 ±11.4 | +20.3% | +24.2% | +3.9% | 0.40 |
| 31 | Raphinha | Forward | Barcelona | 14 | +21.3 ±6.3 | +30.9% | +11.7% | +7.3% | 3.71 |
| 32 | Kylian Mbappé | Forward | Real Madrid | 12 | +20.2 ±15.8 | +16.9% | +23.5% | -3.7% | 3.67 |
| 33 | Davide Zappacosta | Defender | Atalanta | 8 | +19.9 ±8.1 | +35.1% | +4.6% | -45.5% | 2.38 |
| 34 | Reo Hatate | Defender | Celtic | 9 | +19.5 ±7.8 | +22.2% | +16.8% | -3.8% | 2.00 |
| 35 | Vinícius Júnior | Forward | Real Madrid | 12 | +19.2 ±8.0 | +18.7% | +19.7% | +4.5% | 3.50 |
| 36 | Serhou Guirassy | Forward | B. Dortmund | 11 | +17.3 ±9.0 | +12.8% | +21.9% | +8.7% | 3.09 |
| 37 | Ismael Saibari | Midfielder | PSV | 8 | +17.0 ±12.2 | +28.0% | +6.0% | -4.7% | 2.38 |
| 38 | Mykola Matviyenko | Defender | Shakhtar | 8 | +16.1 ±15.4 | -0.6% | +32.8% | -13.0% | 0.38 |
| 39 | Stefan de Vrij | Defender | Inter | 8 | +16.1 ±12.6 | -1.6% | +33.8% | -52.0% | 0.25 |
| 40 | Tijjani Reijnders | Midfielder | Milan | 10 | +15.9 ±11.1 | +17.6% | +14.3% | -14.3% | 2.00 |
| 41 | Guus Til | Midfielder | PSV | 8 | +15.6 ±8.6 | +17.9% | +13.2% | +57.6% | 1.38 |
| 42 | Mario Pašalić | Midfielder | Atalanta | 8 | +15.3 ±8.6 | +11.7% | +18.9% | +16.1% | 2.00 |
| 43 | Harry Kane | Forward | Bayern München | 13 | +15.0 ±14.0 | +12.1% | +18.0% | +9.9% | 3.77 |
| 44 | Pedri | Midfielder | Barcelona | 13 | +15.0 ±9.2 | +15.6% | +14.4% | +50.3% | 0.46 |
| 45 | Henrikh Mkhitaryan | Midfielder | Inter | 10 | +14.7 ±5.8 | +17.1% | +12.2% | -90.8% | 1.20 |
| 46 | Hans Vanaken | Midfielder | Club Brugge | 12 | +14.6 ±16.2 | +16.3% | +12.8% | -0.9% | 0.67 |
| 47 | Ramy Bensebaini | Defender | B. Dortmund | 8 | +13.9 ±8.0 | +20.2% | +7.6% | +9.4% | 1.00 |
| 48 | Morten Hjulmand | Midfielder | Sporting CP | 9 | +13.8 ±22.8 | +21.9% | +5.8% | +73.0% | 0.56 |
| 49 | Ousmane Dembélé | Forward | Paris | 13 | +13.5 ±7.5 | +22.0% | +5.0% | -14.1% | 4.54 |
| 50 | Hakan Çalhanoğlu | Midfielder | Inter | 11 | +13.4 ±7.6 | +11.2% | +15.5% | +20.2% | 1.82 |
| 51 | Aurélien Tchouaméni | Midfielder | Real Madrid | 10 | +13.0 ±7.7 | +10.8% | +15.2% | +59.8% | 0.60 |
| 52 | Ferran Jutglà | Forward | Club Brugge | 11 | +13.0 ±10.3 | +17.2% | +8.9% | -6.7% | 1.27 |
| 53 | Lamine Yamal | Forward | Barcelona | 13 | +12.6 ±4.9 | +18.1% | +7.0% | -5.9% | 4.00 |
| 54 | Mohamed Salah | Forward | Liverpool | 9 | +12.5 ±20.2 | +24.3% | +0.7% | +20.2% | 3.22 |
| 55 | Johan Bakayoko | Forward | PSV | 9 | +11.7 ±10.2 | +18.5% | +4.9% | -4.3% | 2.78 |
| 56 | Theo Hernández | Defender | Milan | 10 | +11.5 ±10.2 | +27.6% | -4.5% | +51.9% | 1.70 |
| 57 | Robert Lewandowski | Forward | Barcelona | 12 | +11.4 ±11.7 | +6.2% | +16.7% | +25.4% | 2.67 |
| 58 | Leon Goretzka | Midfielder | Bayern München | 9 | +11.0 ±13.3 | +12.9% | +9.1% | -90.2% | 1.56 |
| 59 | Exequiel Palacios | Midfielder | Leverkusen | 8 | +10.8 ±6.6 | +12.7% | +8.9% | +7.5% | 1.12 |
| 60 | Ardon Jashari | Midfielder | Club Brugge | 11 | +10.3 ±18.5 | +13.9% | +6.6% | +73.2% | 0.73 |
| 61 | Antoine Griezmann | Forward | Atleti | 9 | +10.2 ±6.5 | +9.2% | +11.2% | +23.2% | 1.89 |
| 62 | Nico Schlotterbeck | Defender | B. Dortmund | 12 | +10.1 ±4.5 | +12.6% | +7.7% | +53.9% | 0.83 |
| 63 | Joel Ordoñez | Defender | Club Brugge | 11 | +10.0 ±15.3 | +23.0% | -2.9% | +77.0% | 0.18 |
| 64 | Rade Krunić | Midfielder | Crvena Zvezda | 8 | +9.3 ±22.3 | +13.5% | +5.2% | -2.6% | 0.75 |
| 65 | Ferland Mendy | Defender | Real Madrid | 11 | +9.0 ±19.9 | +18.0% | +0.0% | +49.5% | 0.18 |
| 66 | Rodrygo | Forward | Real Madrid | 10 | +8.8 ±15.3 | +13.8% | +3.7% | +16.5% | 2.40 |
| 67 | Karim Adeyemi | Forward | B. Dortmund | 9 | +8.7 ±10.8 | +7.4% | +10.0% | +10.4% | 2.67 |
| 68 | Berat Djimsiti | Defender | Atalanta | 8 | +8.1 ±8.6 | +9.8% | +6.4% | +0.5% | 0.38 |
| 69 | Maghnes Akliouche | Midfielder | Monaco | 10 | +8.0 ±4.4 | +10.3% | +5.7% | +8.1% | 1.90 |
| 70 | Sead Kolašinac | Defender | Atalanta | 9 | +8.0 ±5.6 | +10.6% | +5.4% | +0.6% | 0.67 |
| 71 | Vangelis Pavlidis | Forward | Benfica | 10 | +8.0 ±6.2 | +2.0% | +14.1% | +1.2% | 2.90 |
| 72 | Cesar Blackman | Defender | S. Bratislava | 8 | +7.3 ±14.2 | -6.9% | +21.4% | +19.8% | 0.50 |
| 73 | Breel Embolo | Forward | Monaco | 10 | +7.2 ±8.4 | +4.4% | +10.0% | +25.2% | 1.90 |
| 74 | Bradley Barcola | Forward | Paris | 14 | +7.0 ±6.5 | +6.5% | +7.4% | +5.9% | 1.93 |
| 75 | Kaan Kairinen | Midfielder | Sparta Praha | 8 | +6.8 ±21.8 | +28.4% | -14.8% | -6.8% | 0.62 |
| 76 | Martin Baturina | Midfielder | GNK Dinamo | 8 | +6.8 ±7.9 | +7.7% | +5.8% | -0.7% | 1.50 |
| 77 | Luuk de Jong | Forward | PSV | 10 | +6.7 ±4.7 | +6.2% | +7.2% | -1.6% | 2.40 |
| 78 | Enzo Millot | Midfielder | Stuttgart | 8 | +6.2 ±10.6 | +11.4% | +1.1% | +9.9% | 2.50 |
| 79 | Francisco Trincão | Forward | Sporting CP | 9 | +6.0 ±17.0 | -0.9% | +12.9% | +67.3% | 1.89 |
| 80 | Nuno Mendes | Defender | Paris | 16 | +5.9 ±4.7 | +8.1% | +3.8% | +11.4% | 0.94 |
| 81 | Christian Pulišić | Forward | Milan | 8 | +5.7 ±6.5 | +7.1% | +4.3% | +8.7% | 1.88 |
| 82 | Igor Paixão | Forward | Feyenoord | 11 | +5.4 ±8.3 | +1.9% | +8.9% | +4.4% | 2.00 |
| 83 | Lautaro Martínez | Forward | Inter | 10 | +4.8 ±15.2 | -6.4% | +15.9% | +24.7% | 1.90 |
| 84 | Oscar Gloukh | Midfielder | Salzburg | 8 | +4.5 ±8.0 | +5.4% | +3.6% | +18.9% | 1.12 |
| 85 | Charles De Ketelaere | Forward | Atalanta | 8 | +4.4 ±12.9 | +7.3% | +1.5% | +14.0% | 1.88 |
| 86 | Alphonso Davies | Midfielder | Bayern München | 8 | +4.3 ±7.0 | +5.3% | +3.3% | -6.1% | 0.88 |
| 87 | Vanderson | Defender | Monaco | 9 | +4.2 ±9.7 | +7.7% | +0.6% | +38.4% | 0.56 |
| 88 | Thomas Beelen | Defender | Feyenoord | 8 | +3.9 ±20.9 | +14.8% | -7.0% | +83.4% | 0.25 |
| 89 | Vitinha | Midfielder | Paris | 16 | +3.9 ±5.2 | +5.5% | +2.4% | +9.8% | 1.38 |
| 90 | William Bøving | Midfielder | Sturm Graz | 8 | +3.8 ±9.7 | +0.6% | +6.9% | -31.4% | 0.88 |
| 91 | Antonio Rüdiger | Defender | Real Madrid | 13 | +3.6 ±7.3 | +6.4% | +0.8% | +2.2% | 0.62 |
| 92 | José María Giménez | Defender | Atleti | 8 | +3.6 ±7.3 | +8.0% | -0.8% | -1.1% | 0.75 |
| 93 | Edimilson Fernandes | Midfielder | Brest | 8 | +3.2 ±14.1 | +4.3% | +2.1% | -1.0% | 0.75 |
| 94 | Arne Engels | Midfielder | Celtic | 9 | +3.1 ±7.3 | +8.2% | -1.9% | +4.6% | 1.22 |
| 95 | Hugo Magnetti | Midfielder | Brest | 8 | +3.1 ±5.7 | +1.5% | +4.8% | +10.6% | 1.12 |
| 96 | Denzel Dumfries | Defender | Inter | 11 | +2.9 ±17.4 | +14.1% | -8.4% | -5.0% | 1.09 |
| 97 | Granit Xhaka | Midfielder | Leverkusen | 9 | +2.9 ±8.4 | +8.5% | -2.7% | +17.9% | 1.11 |
| 98 | Timi Max Elšnik | Midfielder | Crvena Zvezda | 8 | +2.6 ±8.3 | +12.7% | -7.6% | +29.2% | 0.75 |
| 99 | Fabián Ruiz | Midfielder | Paris | 14 | +2.5 ±6.3 | +10.9% | -5.9% | -3.7% | 1.07 |
| 100 | Kerem Aktürkoğlu | Forward | Benfica | 10 | +2.3 ±6.8 | +2.6% | +1.9% | +9.0% | 1.70 |
| 101 | John McGinn | Midfielder | Aston Villa | 9 | +2.0 ±9.4 | +4.2% | -0.1% | +4.1% | 1.44 |
| 102 | Julián Alvarez | Forward | Atleti | 9 | +2.0 ±9.9 | +2.4% | +1.7% | +16.0% | 2.11 |
| 103 | Willi Orbán | Defender | Leipzig | 8 | +1.8 ±8.2 | +2.2% | +1.5% | -142.5% | 0.88 |
| 104 | Brandon Mechele | Defender | Club Brugge | 12 | +1.7 ±17.8 | +2.8% | +0.6% | +81.1% | 0.42 |
| 105 | Angelo Stiller | Midfielder | Stuttgart | 8 | +1.4 ±9.0 | +3.1% | -0.3% | +12.1% | 1.12 |
| 106 | Minjae Kim | Defender | Bayern München | 13 | +1.4 ±9.7 | +7.4% | -4.6% | -5.9% | 0.23 |
| 107 | Joshua Kimmich | Midfielder | Bayern München | 14 | +1.1 ±9.1 | -0.7% | +2.8% | -29.3% | 1.29 |
| 108 | Marcel Sabitzer | Midfielder | B. Dortmund | 10 | +0.8 ±17.9 | +14.0% | -12.3% | -74.4% | 1.60 |
| 109 | Declan Rice | Midfielder | Arsenal | 12 | +0.6 ±4.9 | +2.3% | -1.2% | +15.2% | 1.50 |
| 110 | Ollie Watkins | Forward | Aston Villa | 8 | +0.5 ±5.3 | +2.0% | -1.0% | +18.8% | 1.75 |
| 111 | Thomas Partey | Midfielder | Arsenal | 11 | +0.5 ±9.5 | +8.6% | -7.6% | +49.9% | 0.36 |
| 112 | Gabriel | Defender | Arsenal | 9 | +0.0 ±6.4 | +10.1% | -10.0% | -6.5% | 1.11 |
| 113 | Martin Ødegaard | Midfielder | Arsenal | 9 | -0.1 ±8.7 | +1.9% | -2.1% | +13.6% | 1.33 |
| 114 | Orkun Kökçü | Midfielder | Benfica | 12 | -0.1 ±6.5 | -1.2% | +0.9% | +2.9% | 1.58 |
| 115 | Marcos Llorente | Midfielder | Atleti | 8 | -0.3 ±11.5 | +0.7% | -1.3% | -3.0% | 1.25 |
| 116 | Rodrigo De Paul | Midfielder | Atleti | 10 | -0.3 ±8.9 | +5.8% | -6.5% | +7.6% | 0.60 |
| 117 | Maxim De Cuyper | Midfielder | Club Brugge | 12 | -0.5 ±15.4 | -1.1% | -0.0% | +1.9% | 1.00 |
| 118 | Benjamin Pavard | Defender | Inter | 11 | -0.6 ±8.9 | +2.7% | -3.9% | -3.5% | 0.45 |
| 119 | Iñigo Martínez | Defender | Barcelona | 11 | -0.8 ±7.0 | +4.8% | -6.4% | +1.7% | 0.27 |
| 120 | Thilo Kehrer | Defender | Monaco | 9 | -1.4 ±5.6 | -1.5% | -1.2% | -4.5% | 0.56 |
| 121 | Dayot Upamecano | Defender | Bayern München | 11 | -1.6 ±6.5 | -1.4% | -1.7% | +69.0% | 0.64 |
| 122 | Pau Cubarsí | Defender | Barcelona | 12 | -1.7 ±8.8 | -0.6% | -2.8% | +50.9% | 0.25 |
| 123 | Ryan Flamingo | Defender | PSV | 9 | -1.8 ±6.5 | -1.9% | -1.8% | +4.6% | 0.78 |
| 124 | Youri Tielemans | Midfielder | Aston Villa | 12 | -2.0 ±4.9 | -0.8% | -3.1% | -6.5% | 1.33 |
| 125 | Youssouf Fofana | Midfielder | Milan | 9 | -2.3 ±8.1 | -3.3% | -1.4% | +32.4% | 1.44 |
| 126 | Gabriel Martinelli | Forward | Arsenal | 11 | -2.4 ±6.0 | -7.2% | +2.4% | -12.4% | 1.82 |
| 127 | Federico Valverde | Midfielder | Real Madrid | 14 | -2.6 ±13.5 | -24.7% | +19.4% | +33.9% | 0.93 |
| 128 | Jonathan David | Forward | Lille | 8 | -2.7 ±15.6 | +3.1% | -8.5% | -16.5% | 2.12 |
| 129 | António Silva | Defender | Benfica | 8 | -3.0 ±7.9 | -2.2% | -3.9% | -35.7% | 0.62 |
| 130 | Guram Kashia | Defender | S. Bratislava | 8 | -3.0 ±15.8 | +1.2% | -7.1% | +68.8% | 0.38 |
| 131 | Fredrik Aursnes | Midfielder | Benfica | 11 | -3.1 ±12.4 | -0.5% | -5.7% | +64.4% | 1.18 |
| 132 | Marcus Thuram | Forward | Inter | 11 | -3.1 ±8.1 | -7.7% | +1.5% | +7.1% | 1.73 |
| 133 | Mauro Júnior | Defender | PSV | 9 | -3.1 ±9.1 | -7.2% | +1.0% | -22.2% | 0.67 |
| 134 | Antoni Milambo | Midfielder | Feyenoord | 9 | -3.2 ±9.5 | -3.1% | -3.3% | -8.6% | 1.22 |
| 135 | Daizen Maeda | Forward | Celtic | 9 | -3.2 ±14.4 | +1.5% | -7.9% | -10.5% | 1.56 |
| 136 | Nicolò Barella | Midfielder | Inter | 11 | -3.2 ±10.7 | -11.2% | +4.8% | -21.3% | 1.09 |
| 137 | Raphael Onyedika | Midfielder | Club Brugge | 11 | -3.2 ±18.6 | -2.4% | -4.0% | -5.9% | 0.91 |
| 138 | Julian Ryerson | Defender | B. Dortmund | 11 | -3.4 ±5.6 | -1.8% | -5.1% | +58.2% | 0.45 |
| 139 | Rafael Leão | Forward | Milan | 9 | -3.4 ±11.3 | -9.5% | +2.8% | +27.2% | 1.67 |
| 140 | Alistair Johnston | Defender | Celtic | 10 | -3.8 ±15.0 | +4.0% | -11.6% | +58.5% | 0.30 |
| 141 | Olivier Boscagli | Defender | PSV | 10 | -3.9 ±11.7 | -3.6% | -4.1% | +83.9% | 0.90 |
| 142 | Francesco Acerbi | Defender | Inter | 8 | -4.1 ±5.4 | -6.6% | -1.5% | -3.8% | 0.62 |
| 143 | Álvaro Carreras | Defender | Benfica | 10 | -4.3 ±7.5 | -6.9% | -1.6% | +38.5% | 0.80 |
| 144 | Loïs Openda | Forward | Leipzig | 8 | -4.4 ±11.9 | -5.5% | -3.3% | -13.2% | 2.38 |
| 145 | Jonathan Tah | Defender | Leverkusen | 10 | -4.5 ±10.2 | -5.5% | -3.6% | +78.5% | 0.40 |
| 146 | João Neves | Midfielder | Paris | 16 | -4.8 ±5.8 | -10.4% | +0.9% | -2.3% | 1.38 |
| 147 | Jude Bellingham | Midfielder | Real Madrid | 13 | -5.1 ±12.6 | -1.8% | -8.4% | -10.1% | 1.54 |
| 148 | Marquinhos | Defender | Paris | 16 | -5.3 ±4.8 | -5.7% | -5.0% | -92.8% | 0.56 |
| 149 | Bukayo Saka | Forward | Arsenal | 9 | -5.6 ±6.6 | -15.2% | +3.9% | +3.2% | 2.78 |
| 150 | Ezri Konsa | Defender | Aston Villa | 10 | -5.6 ±11.1 | -6.4% | -4.8% | -4.2% | 0.40 |
| 151 | Morgan Rogers | Forward | Aston Villa | 11 | -6.0 ±6.6 | -6.4% | -5.5% | +1.5% | 2.09 |
| 152 | Christos Tzolis | Forward | Club Brugge | 11 | -6.4 ±6.4 | -7.0% | -5.8% | +23.9% | 2.18 |
| 153 | Jurriën Timber | Defender | Arsenal | 9 | -6.4 ±11.7 | -7.2% | -5.6% | -1.8% | 0.44 |
| 154 | Joško Gvardiol | Defender | Man City | 9 | -6.8 ±13.2 | -4.7% | -9.0% | -572.6% | 0.67 |
| 155 | Piero Hincapié | Defender | Leverkusen | 9 | -6.8 ±3.9 | -6.0% | -7.5% | -2.7% | 0.56 |
| 156 | Nasser Djiga | Defender | Crvena Zvezda | 8 | -6.9 ±15.1 | -7.5% | -6.2% | -4.1% | 0.50 |
| 157 | Nicolás Otamendi | Defender | Benfica | 12 | -6.9 ±5.8 | -6.9% | -6.9% | -4.8% | 0.67 |
| 158 | Dávid Hancko | Defender | Feyenoord | 12 | -7.0 ±7.0 | +0.2% | -14.2% | -6.8% | 1.17 |
| 159 | Lucas Digne | Defender | Aston Villa | 8 | -7.0 ±6.7 | -6.0% | -8.0% | -2.4% | 0.50 |
| 160 | Jules Koundé | Defender | Barcelona | 13 | -7.1 ±11.3 | -2.4% | -11.9% | +34.1% | 0.31 |
| 161 | Emre Can | Defender | B. Dortmund | 10 | -7.3 ±8.1 | -11.6% | -3.1% | +2.2% | 0.50 |
| 162 | Amadou Haidara | Midfielder | Leipzig | 8 | -7.5 ±6.6 | -7.3% | -7.8% | +9.7% | 0.62 |
| 163 | Mikel Merino | Midfielder | Arsenal | 9 | -8.1 ±10.1 | -9.8% | -6.5% | +0.6% | 1.22 |
| 164 | Brendan Chardonnet | Defender | Brest | 8 | -8.5 ±18.8 | -7.5% | -9.6% | +55.6% | 0.25 |
| 165 | Mahdi Camara | Midfielder | Brest | 9 | -9.4 ±9.8 | -9.8% | -9.0% | -8.8% | 1.11 |
| 166 | Noa Lang | Forward | PSV | 8 | -9.7 ±5.5 | -13.6% | -5.8% | -23.1% | 2.12 |
| 167 | Pascal Gross | Midfielder | B. Dortmund | 10 | -10.2 ±10.4 | -11.8% | -8.6% | -13.1% | 0.80 |
| 168 | Jamie Gittens | Midfielder | B. Dortmund | 11 | -11.5 ±20.0 | -1.8% | -21.3% | -20.3% | 1.82 |
| 169 | Youngwoo Seol | Defender | Crvena Zvezda | 8 | -11.7 ±11.7 | -13.8% | -9.7% | +71.7% | 0.62 |
| 170 | Nicolas Kühn | Midfielder | Celtic | 10 | -13.5 ±12.1 | -10.4% | -16.6% | -13.2% | 0.90 |
| 171 | Virgil van Dijk | Defender | Liverpool | 9 | -13.8 ±15.6 | -16.9% | -10.6% | -5.5% | 0.44 |
| 172 | Georgiy Sudakov | Midfielder | Shakhtar | 8 | -14.2 ±10.7 | -23.1% | -5.4% | +5.9% | 1.50 |
| 173 | Federico Gatti | Defender | Juventus | 8 | -14.7 ±21.9 | -1.4% | -27.9% | -479.8% | 0.38 |
| 174 | Éderson | Midfielder | Atalanta | 8 | -15.2 ±7.7 | -16.3% | -14.0% | -14.7% | 1.12 |
| 175 | Jakub Kiwior | Defender | Arsenal | 8 | -17.5 ±8.2 | -25.2% | -9.8% | -2.8% | 0.38 |
| 176 | Julian Brandt | Midfielder | B. Dortmund | 11 | -22.7 ±16.5 | -14.2% | -31.2% | -88.7% | 1.18 |
| 177 | Bernardo Silva | Midfielder | Man City | 9 | -41.2 ±21.9 | -39.7% | -42.7% | -282.9% | 0.78 |
| 178 | Alexsandro | Defender | Lille | 10 | -41.9 ±18.1 | +6.2% | -89.9% | +48.9% | 0.60 |
| 179 | Ryan Gravenberch | Midfielder | Liverpool | 9 | -58.8 ±14.6 | +5.1% | -122.8% | +16.8% | 0.11 |
| 180 | Manuel Akanji | Defender | Man City | 8 | -87.5 ±29.6 | -22.1% | -152.9% | -554.8% | 0.38 |
| 181 | Anatoliy Trubin | Goalkeeper | Benfica | 12 | saves only | - | - | +85.4% | 3.4 saves |
| 182 | David Raya | Goalkeeper | Arsenal | 13 | saves only | - | - | +44.8% | 2.5 saves |
| 183 | Dmytro Riznyk | Goalkeeper | Shakhtar | 8 | saves only | - | - | +75.8% | 4.6 saves |
| 184 | Dominik Takáč | Goalkeeper | S. Bratislava | 8 | saves only | - | - | +77.2% | 5.0 saves |
| 185 | Ederson | Goalkeeper | Man City | 8 | saves only | - | - | +80.6% | 3.2 saves |
| 186 | Emiliano Martínez | Goalkeeper | Aston Villa | 11 | saves only | - | - | +72.3% | 4.1 saves |
| 187 | Franco Israel | Goalkeeper | Sporting CP | 8 | saves only | - | - | +70.3% | 3.5 saves |
| 188 | Gianluigi Donnarumma | Goalkeeper | Paris | 15 | saves only | - | - | +77.0% | 2.6 saves |
| 189 | Gregor Kobel | Goalkeeper | B. Dortmund | 13 | saves only | - | - | +72.0% | 3.1 saves |
| 190 | Jan Oblak | Goalkeeper | Atleti | 10 | saves only | - | - | +90.1% | 3.2 saves |
| 191 | Kasper Schmeichel | Goalkeeper | Celtic | 9 | saves only | - | - | +80.6% | 4.4 saves |
| 192 | Lucas Chevalier | Goalkeeper | Lille | 10 | saves only | - | - | +49.8% | 3.1 saves |
| 193 | Manuel Neuer | Goalkeeper | Bayern München | 10 | saves only | - | - | +72.6% | 1.0 saves |
| 194 | Marco Bizot | Goalkeeper | Brest | 8 | saves only | - | - | +88.3% | 3.4 saves |
| 195 | Marco Carnesecchi | Goalkeeper | Atalanta | 9 | saves only | - | - | -100.8% | 1.6 saves |
| 196 | Mike Maignan | Goalkeeper | Milan | 10 | saves only | - | - | +75.9% | 3.9 saves |
| 197 | Peter Vindahl | Goalkeeper | Sparta Praha | 8 | saves only | - | - | +83.0% | 5.1 saves |
| 198 | Radosław Majecki | Goalkeeper | Monaco | 8 | saves only | - | - | +37.3% | 3.9 saves |
| 199 | Simon Mignolet | Goalkeeper | Club Brugge | 12 | saves only | - | - | +95.0% | 3.0 saves |
| 200 | Thibaut Courtois | Goalkeeper | Real Madrid | 12 | saves only | - | - | +86.6% | 4.3 saves |
| 201 | Timon Wellenreuther | Goalkeeper | Feyenoord | 10 | saves only | - | - | +80.6% | 4.1 saves |
| 202 | Walter Benítez | Goalkeeper | PSV | 11 | saves only | - | - | +85.3% | 3.7 saves |
| 203 | Yann Sommer | Goalkeeper | Inter | 14 | saves only | - | - | +76.3% | 3.9 saves |
Starts = matches started. Skill = how much lower our CRPS is than the baseline's on the same matches, in percent, so positive means the model wins. The smaller number next to the score is one standard error. Goalkeepers take no shots, so they carry no score and are measured on saves on their own pages. Tap any column header to sort.
How the score works, and how to read it
A high score does not mean a better player. It means a player whose output our models can call match by match. The score compares two forecasters on the matches a player started: our model, which publishes a full probability distribution for his shots and shots on target once the team sheet is out, and a baseline that knows only his position and how long he is expected to be on the pitch. We measure both with CRPS, a standard score for probabilistic forecasts, and report how much better the model is, in percent. So the score really answers one question: how much does knowing WHO he is add on top of knowing WHAT he plays.
Read the score with the standard error next to it. The skill is a ratio of two small numbers, and it is much noisier for players who barely shoot: across this holdout the spread of the score is roughly three times wider for players under 0.2 shots a match than for those above 1.2. That is why the shots-per-match column sits on this board. A defender at the top of the table is usually a defender our model correctly expects to shoot almost never, which is a real win, but it is not the same measurement as a striker at the top.
The anytime-scorer skill is published alongside and deliberately kept out of the score. On a base rate of a few percent, a single season is too thin to separate players. Everything here is season level and aggregate: these pages report the accuracy of our own forecasts, not a match-by-match statistics feed.
Club title odds and the full league-phase board live on the Champions League simulations page, and how the models work on the methodology page.