Expected Assists: analysing chance creation

Following on from my article on Expected Goals, I have had vast amounts of interest in the whole concept. It’s been a brilliant response to quite frankly a slightly controversial method of analysis. Of those positive questions, some have centred around how we can apply similar concepts to analysing a player’s involvement in chance creation.

With that in mind, I will present two metrics that analysts use to monitor a player’s involvement in the build-up play of chances. The key here is the word “chances” - as in efforts on goal - not goals themselves. As someone who is looking for the underlying reasons or numbers behind a player’s performance I am not interested if my midfielder has 5 assists. That’s great information on a very basic level and you may hear pundits quoting assists for midfielders all the time. I’m a lot more interested in how any player in a team contributes to “chances” or efforts on goal.

Why? Simple really, it is not the passing player’s fault if the recipient of that pass doesn’t convert it into a goal. As an analyst looking for players who are integral to our attacking play, or as an recruitment analyst looking for players who create lots but don’t always get the “actual” assists, I want to be able to find those players. In this first article we will be looking at Expected Assists, also known as xA.

Expected Assists – Let’s dive in

xA (Expected Assists) simply gives credit to a player for creating a chance that leads to an effort on goal. The value given to the “expected assist” is based on the quality of the chance created, which is all taken from the expected goals model discussed in the previous article.

My model is quite basic: I simply assign the xG value of the effort at goal to the player who sets up the chance. Nice and simple. We use the expected values because player A could make 15 key passes (pass that leads to an effort on goal) and player B may make 10 key passes. If I were to ask you who is more creative of the 2, you’re going to say Player A right? However, what if 10 of those 15 key passes from Player A were simply laying the ball off to someone 30 yards out from goal, and Player B’s 10 key passes were actually from through balls that put a striker in on goal. Now who is more creative? Player B of course, and his xA total would show this.

Still unsure what the hell I am talking about? Let’s take a look at some Sheffield United examples.

Example 1 – Enda Stevens vs Cardiff 17/18

Example 1.gif

First up we have a memorable game from last season: the Blades at home to Cardiff. I won’t go into the game too much (damn Warnock) but here we see a cross from Enda Stevens met by Clayton Donaldson.

The cross is nearly perfect for Donaldson in terms of its positioning and Donaldson connects well with the ball, but hits the post on a chance most would fully expect to be nestling in the back of the net.

Because it was a miss, Enda’s great movement and cross to setup the chance will go unrecognised. He will register a “key pass” as his cross setup a shot, however, is that enough? In analytical terms, no. This chance is a high % chance for a goal and therefore Stevens’ deserves more credit.

Using my xG model this chance gets valued at 0.68 (68% of the time this ends in a goal). Very high for my xG model. Therefore Enda Stevens is also credited with 0.68 xA.  

Example 2 Chris Basham vs Bolton 18/19

Example 2.gif

 This one shows the Blades away at Bolton recently this season. Here we see HMS Bash (all credit to “DEM BLADES” for that one!) steaming down the right, beating his man and pulling back brilliantly for Sharp to set up a chance.

In my xG model this is not a high-quality chance due to location, type of assist and mainly the defensive pressure. The xG value for this attempt is 0.24, a 24% chance that this should be a goal. As described above this means Chris Basham also gets 0.24 added to his xA score for the game despite not getting an actual assist. More than deserved I’d argue! 

Example 3 – Ben Woodburn vs Norwich 18/19

Example 3.gif

Final example here shows an excellent cross by Ben Woodburn to Leon Clarke against Norwich earlier this season. I’m going to level with all here, I’d completely forgot this chance existed after this game ended! Therein lies the beauty of xG and xA.

When we review the game it appeared Ben Woodburn had a pretty average game; however what we can find when we review is he actually set up a pretty damn good chance but without getting the credit for it. This chance missed by Leon Clarke comes out at a value of 0.43. To highlight further how valuable xA can be, let’s compare this chance to the actual assist Oliver Norwood gave for the corner. That assist from Norwood comes out at 0.11, 11% of the time that header from that position goes in. As you can see Woodburn’s created chance is rated much more likely of a goal than Norwood’s corner. This is exactly why we use xA, it allows us to quantify how good a chance was.

How can we use xA?

Now we know what xA is and have seen examples, the question next is how can we use it in analytics. Answer? Very easily.

Let’s again look at the Blades only. If we take the total of all of our player’s xA values and divide them by the amount of games played so far (to give a fair comparison), here is our xA leaderboard sorted by xA per game:

table 1.png

In the table above we can see that in terms of xA per game played, Oli Norwood is top of the charts. No surprise to any Blades here. Quick note here, to find the most creative players as the season progresses we would filter out any set piece to leave only open play passes and crosses - this would bring Norwood’s xA down by quite a significant amount at the moment as his creativity is mainly coming from set piece delivery.

Probably the most interesting result if Keiron Freeman in at 2nd for xA per game. Last season with George Baldock at RWB, Baldock finished 6th overall in the team for xA per game. Freeman is clearly far more creative so far and has a much higher attacking output which is proving hugely fruitful for the Blades this season. What you can see from this table is that Key Passes, while an interesting statistics, do not provide a good picture of good chance creation, this is exactly why we use expected assists.

Final one – who’s the best in the division so far?

Ok, so we know what xA is, and we have seen how we can use it to analyse players. Now let us look at the league as a whole.

table 2.png

Again this table is showing set piece xA at this point. I’ll be updating the xA database weekly and after 10 games I’ll look to provide an open play version and divide the players by per 90 played rather than per game (game can include appearance minutes that aren’t a full 90 mins played, a sub appearance or being subbed off). I won’t break down the table by discussing the players as due to the tiny sample size this will change quite a lot as the season progresses, but some very interesting names in that top 30 for xA per game.


I hope this goes some way to explaining what xA is and why it’s important to use it. Last season Enda Stevens finished the Blades 17/18 season with only 4 assists, yet his xA was 7.8. With the expected level of finishing Stevens would have been expected to hit 8 assists, this would have made a huge difference to where he sat in terms of attacking output from wing backs and I feel gone some way to defending his performance levels. We always have to look at the underlying numbers behind performance, to determine if a player is actually performing as they should be and what is influencing those performance numbers.

This article was written with the aid of StrataData, which is property of Stratagem Technologies. StrataData powers the StrataBet Sports Trading Platform. (www.stratagem.co), (https://app.stratabet.com), (https://stratatips.co)

Jay SocikComment