Here's a list of parameters the machine learning algorithm is looking on to determine xG:

  • Location of the shot
  • Location of the assist
  • Foot or head
  • Assist type
  • Was there a dribble of a field player or a goalkeeper immediately before the shot?
  • Is it coming from a set piece
  • Was the shot a counterattack or did it happen in a transition?
  • Tagger's assessment of the danger of the shot

These parameters (plus a few technical ones) are used to train the xG model on the historical wyscout data and predict the probability of the shot being scored for any shot.

At the moment there are no additional constraints for the shots in the same sequence. So a sequence of shots in short succession could theoretically yield an xG value of > 1. Currently they are considered to be different shots and all xG values are calculated at the shot level.