Goalimpact is a rather complicated algorithm. Because we want to use it commercially, we don't publish its exact functions and to the readers it is more or less a black box. To shed some light on how it is working, we calculated the current month's update twice. In the second run, we added a single game, the 2:3 victory of Manchester City at Swansea. Comparing the first with the second run allows us to show the impact of this one game on all players in the database. Before the analysis starts, here the lineups.
The flow of action in that game was:
At first glance, the change is how it was expected Manchester's players increased their score, while Swansea's players didn't fare that good. Interestingly, the City players didn't all change by the same amount. There is more than one reason why this is the case.
The influence of the game on the players' Goalimpact can be larger than for those players that played the whole match. Some observations
The table looks a bit like the first table in reverse. Every Swansea player that did not take part in the defeat saw his score increase, while all players of City that didn't win lost points. But the size of these changes is small compared to the size of the change of involved players.
Some of the players are what you'd expect intuitively. Former opponents or team mates from the Premier League or the Champions League. But some of the names that changed are less obvious. The interaction of all the scores is so complex that a specific movement is not only a black box to the reader but also to us. We would need to research the link between those players and the players of Swansea vs. Manchester City. They must have met. Somewhere, somehow. Directly or indirectly.
Even though these changes are minor, they are not neglectable. A single came has little influence on the players that did not play, but there are many more games that a player did not play in then that he played in, so the entire effect is substantial. That is the prime reason why we try to collect as many data as we can. More sometimes is more.
Swansea City
Player | Goalimpact | Peak GI | Age | National Team | No. Games | No. Minutes |
Gerhard Tremmel | 64.4 | 64.4 | 35.2 | 290 | 26900 | |
Chico | 104.9 | 106.7 | 26.8 | Spanien [U21] | 154 | 12822 |
Ashley Williams | 106.3 | 111.4 | 29.3 | Wales | 293 | 27142 |
Àngel Rangel | 102.8 | 116.8 | 31.2 | 236 | 20807 | |
Ben Davies | 92.8 | 118.4 | 20.7 | Wales | 73 | 6426 |
Jonjo Shelvey | 100.8 | 117.5 | 21.8 | England [U21] | 158 | 10158 |
Pablo Hernández | 115.2 | 119.9 | 28.8 | Spanien | 242 | 16224 |
Wayne Routledge | 100.6 | 105.4 | 29.0 | England [U21] | 356 | 25665 |
Jonathan de Guzmán | 105.8 | 106.4 | 26.3 | Niederlande | 261 | 21103 |
Cañas | 102.2 | 103.5 | 26.6 | 94 | 6600 | |
Wilfried Bony | 128.3 | 130.9 | 25.1 | Elfenbeinküste | 190 | 14894 |
Bench | ||||||
Roland Lamah | 100.3 | 100.3 | 26.0 | Belgien | 204 | 12903 |
Pozuelo | 97.1 | 111.2 | 22.3 | 61 | 3326 | |
Gregor Zabret | 88.8 | 88.8 | 18.4 | Slowenien [U19] | 17 | 1581 |
Jordi Amat | 100.8 | 117.9 | 21.8 | Spanien [U21] | 102 | 8618 |
Neil Taylor | 111.4 | 114.5 | 24.9 | Wales | 97 | 8037 |
Dwight Tiendalli | 102.6 | 107.0 | 28.2 | Niederlande [U21] | 228 | 18301 |
Álvaro | 100.1 | 112.2 | 22.7 | Spanien [U21] | 131 | 6357 |
Manchester City
Player | Goalimpact | Peak GI | Age | National Team | No. Games | No. Minutes |
Joe Hart | 126.9 | 126.9 | 26.7 | England | 303 | 28260 |
Vincent Kompany | 132.1 | 135.8 | 27.8 | Belgien | 340 | 29439 |
Aleksandar Kolarov | 108.5 | 112.9 | 28.2 | Serbien | 237 | 18103 |
Matija Nastasic | 101.8 | 126.8 | 20.8 | Serbien [U21] | 88 | 7755 |
Pablo Zabaleta | 128.2 | 133.1 | 29.0 | Argentinien | 384 | 31986 |
Samir Nasri | 127.1 | 128.2 | 26.5 | Frankreich | 404 | 28892 |
Jesús Navas | 135.3 | 139.6 | 28.1 | Spanien | 414 | 33832 |
Fernandinho | 141.6 | 146.2 | 28.7 | 242 | 20295 | |
Yaya Touré | 133.6 | 143.7 | 30.7 | Elfenbeinküste | 385 | 32359 |
Álvaro Negredo | 114.4 | 118.9 | 28.3 | Spanien | 287 | 20549 |
Edin Džeko | 130.9 | 134.8 | 27.8 | Bosnien-Herzegowina | 314 | 23402 |
Bench | ||||||
James Milner | 113.9 | 118.2 | 28.0 | England | 489 | 35240 |
Javi García | 121.7 | 123.6 | 26.9 | Spanien [U21] | 218 | 16043 |
Jack Rodwell | 94.9 | 106.3 | 22.8 | England [U21] | 137 | 8028 |
Costel Pantilimon | 110.6 | 110.6 | 26.9 | Rumänien | 125 | 11524 |
Joleon Lescott | 131.6 | 147.0 | 31.4 | England | 407 | 36586 |
Gaël Clichy | 153.6 | 158.1 | 28.4 | Frankreich | 364 | 30709 |
Dedryk Boyata | 95.2 | 105.3 | 23.1 | Belgien [U21] | 58 | 4012 |
The flow of action in that game was:
Minute | ||
Lamah for Hernandez | 9 | |
14 | 0:1 Fernandinho | |
1:1 Bony | 45 | |
58 | 1:2 Yaya Toure | |
59 | Garcia for Negredo | |
66 | 1:3 Kolarov | |
68 | Milner for Nasri | |
Pozuelo for Shelvey | 81 | |
90 | Rodwell for Navas | |
2:3 Bony | 91 | |
Players that played the full game
Here is the change in Goalimpact of all players that played the full game. They had a goal difference of 2:3 or 3:2 depending on the team they played for. We expect players of Manchester City to improve and Swansea players to drop in Goalimpact.Diff Goalimpact | Absolute Diff | Player | Team |
0.21 | 0.21 | Aleksandar Kolarov | Manchester City |
0.19 | 0.19 | Vincent Kompany | Manchester City |
0.19 | 0.19 | Matija Nastasic | Manchester City |
0.19 | 0.19 | Pablo Zabaleta | Manchester City |
0.19 | 0.19 | Yaya Touré | Manchester City |
0.18 | 0.18 | Fernandinho | Manchester City |
0.17 | 0.17 | Edin Džeko | Manchester City |
0.16 | 0.16 | Joe Hart | Manchester City |
0.01 | 0.01 | Gerhard Tremmel | Swansea City |
-0.09 | 0.09 | Wayne Routledge | Swansea City |
-0.12 | 0.12 | Jonathan de Guzmán | Swansea City |
-0.15 | 0.15 | Ashley Williams | Swansea City |
-0.16 | 0.16 | Àngel Rangel | Swansea City |
-0.17 | 0.17 | Chico | Swansea City |
-0.20 | 0.20 | Wilfried Bony | Swansea City |
-0.20 | 0.20 | Cañas | Swansea City |
-0.22 | 0.22 | Ben Davies | Swansea City |
At first glance, the change is how it was expected Manchester's players increased their score, while Swansea's players didn't fare that good. Interestingly, the City players didn't all change by the same amount. There is more than one reason why this is the case.
- The score of each player is based on all observed minutes. The number of minutes prior to this games wasn't the same for all players and hence the weight of the additional information of the Swansea game is different for every player. We expect players with few past observations to move, on average, more. That said, the bulk of the players changed about the same amount just in opposing directions for the two teams.
- Additionally, the rating of each player changed and, in turn, the results of the past games are re-assessed based on the new information. Therefore, we find second order changes in the scores. In case of Tremmel the second order changes apparently even out-weighted the first order change as his score slightly increased despite the defeat.
- Although Bony scored two goals, that didn't help him a bit in Goalimpact terms. Scoring and conceding are attributed to all players of the team equally. Playing selfish (not implying that Bony did) doesn't pay off. You can't game the score to improve your personal assessment at the expense of the team easily.
Players that played only a part of the game
The algorithm works minute-by-minute. Therefore it takes substitutions into account and players may have had a different goal difference than the final score of the match during their time on the field. Here is what happened.
Diff Goalimpact | Player | Team |
0.46 | Jesús Navas | Manchester City |
0.43 | Samir Nasri | Manchester City |
0.42 | Pozuelo | Swansea City |
0.19 | Álvaro Negredo | Manchester City |
0.03 | Pablo Hernández | Swansea City |
-0.03 | Javi García | Manchester City |
-0.18 | Roland Lamah | Swansea City |
-0.25 | James Milner | Manchester City |
-0.29 | Jack Rodwell | Manchester City |
-0.45 | Jonjo Shelvey | Swansea City |
The influence of the game on the players' Goalimpact can be larger than for those players that played the whole match. Some observations
- Navas and Nasri won the match 3:1 during their field time and hence saw the largest increases. The same in reverse happened to Shelvey who, as only player, lost 1:3.
- City's Rodwell and Milner actually saw dropping Goalimpact as they the goal difference was negative while they were on the pitch. Conversely, Swansea's Pozuelo gained despite his team losing because he achieved a positive goal difference.
Players of the teams that did not play
As the Goalimpact of all players that played changed, their new assessment of strength is used to value the other team members. Remember that a players performance is adjusted by both the skill of the team mates and the opposition. Here are the teams' players that did not play.Diff Goalimpact | Player | Team |
0.03 | Leon Britton | Swansea City |
0.03 | Nathan Dyer | Swansea City |
0.02 | Garry Monk | Swansea City |
0.02 | Michel Vorm | Swansea City |
0.02 | Michu | Swansea City |
0.01 | Jordi Amat | Swansea City |
0.01 | Neil Taylor | Swansea City |
-0.01 | Martín Demichelis | Manchester City |
-0.01 | Costel Pantilimon | Manchester City |
-0.01 | Dedryk Boyata | Manchester City |
-0.03 | Kun Agüero | Manchester City |
-0.03 | Micah Richards | Manchester City |
-0.04 | Gaël Clichy | Manchester City |
-0.04 | Joleon Lescott | Manchester City |
-0.05 | David Silva | Manchester City |
The table looks a bit like the first table in reverse. Every Swansea player that did not take part in the defeat saw his score increase, while all players of City that didn't win lost points. But the size of these changes is small compared to the size of the change of involved players.
Players from other teams
With the change of the Goalimpact of the players, the Goalimpacts of all their opponents change, too, because their performance is corrected for the rating of the opposition. Some players of other clubs may have been former City or Swansea players and hence change like the team members that did not play. In total 2985 players changed their rating by more than 0.01. But only few 0.02 or more. Here is the list of them.Diff Goalimpact | Player | Team |
0.03 | Edgar Davids | Barnet FC |
0.03 | Javier Zanetti | Inter |
0.03 | Kevin Phillips | Crystal Palace |
0.03 | Ryan Giggs | Manchester United |
0.02 | Mark Gower | Charlton Athletic |
0.02 | Bart Goor | KFC Dessel Sport |
0.02 | Óli Johannesen | TB Tvöroyri |
0.02 | Dutra | Yokohama F. Marinos |
0.02 | Carlos Galván | Universidad Cesar Vallejo |
0.02 | Rolando Schiavi | Shanghai Shenhua |
0.02 | Lars Kleiven | Elverum Fotball |
0.02 | Ian Goodison | Tranmere Rovers |
0.02 | Kristian Bergström | Atvidabergs FF |
0.02 | Tero Taipale | Kuopion PS |
0.02 | Hernando Patiño | Deportes Quindio |
0.02 | Tibor Dombi | Debreceni VSC |
-0.02 | Julien Escudé | Besiktas |
-0.02 | Frederic Kanouté | Beijing Guoan FC |
-0.02 | Ivan Rakitic | Sevilla FC |
-0.02 | Mario Balotelli | AC Milan |
-0.02 | Luis Fabiano | Sao Paulo FC |
-0.02 | Nigel de Jong | AC Milan |
-0.02 | Kolo Touré | Liverpool FC |
-0.02 | Adriano | FC Barcelona |
-0.02 | Diego Perotti | Sevilla FC |
-0.03 | Carlos Tévez | Juventus |
-0.03 | Federico Fazio | Sevilla FC |
-0.03 | Fernando Navarro | Sevilla FC |
-0.04 | Gareth Barry | Everton FC |
Some of the players are what you'd expect intuitively. Former opponents or team mates from the Premier League or the Champions League. But some of the names that changed are less obvious. The interaction of all the scores is so complex that a specific movement is not only a black box to the reader but also to us. We would need to research the link between those players and the players of Swansea vs. Manchester City. They must have met. Somewhere, somehow. Directly or indirectly.
Even though these changes are minor, they are not neglectable. A single came has little influence on the players that did not play, but there are many more games that a player did not play in then that he played in, so the entire effect is substantial. That is the prime reason why we try to collect as many data as we can. More sometimes is more.