Lowered Expectations: Shot Stopping and Model Design / by Harrison Crow

by @harrison_crow

Has it really already been a week? 

Well, if you’re at all familiar with this article you know what we’re about shots, shots, shots. It’s almost as if we starred in a LMFAO  video with Lil John 10 years ago and never quite got over it (we didn’t). The closer to the goal the shot is, the better. I know that sounds obvious but this is a very scientific process and is incredibly complicated

Thank god, we have this blog where we can unravel the deep seatedmysteries of expected goals and explain how we distill these goal scoring opportunities down into cold raw values which we’ve learned can now entirely explain the game of soccer.

Let’s get started.

#5 - Jozy Altidore, Toronto FC, 0.402 xG
Assisted By: Auro
Keeper: Clint Irwin
Result: Post

Here we go. 

A player receives the ball in a clearly advantageous spot. He shoots the ball from his advantageous spot towards the goal. It hits the post but... that doesn’t matter for the model. The easy calculation is 0.402 goals. Easy. Simple. See how easy it is to understand soccer? 

Okay, seriously Jozy Altidore makes a really good run here--the type of run I’m constantly waiting for my strikers to make in FIFA. And yeah, he finds a good bit of space at the top of the six yard box with separation. It turns out that our model calculates it just under a fifty-fifty chance but I’m sure you’re probably looking at this chance and coming away feeling like it had a better than fifty-fifty chance the model gave it.

This isn’t some special algebraic equation or trigonometry formula that you need a PhD in mathematics to understand. Simple and plain, the model is probably wrong here. The chance is probably better than what the model implies or values. 

The thing is, and while I feel like I repeat this a lot on this column it’s important to keep banging the drum, there are things our model just simply can’t and does not know. The average shooter in this situation isn’t A) in that much space so close to goal or B) have that large of a window to shoot into and C) have the space to make a clean strike on the ball that’s also uncontested (a direct result of both of the two previous points).

You can’t look at this shot and say realistically that you wouldn’t have expected Jozy to score in this situation. I was as stunned as you, dear reader, I watch a lot of shots and I re-watch more misses than goals. Maybe he gets a bit too much of the ball, got ahead of himself or, I don’t know, maybe put too much english on the ball. Whatever the reason, I think we, and I’ll guess Jozy too, can agree this is a better than 40% chance of becoming a goal.

I’ve already outlined three specific reasons as to why expected goals underrated this situation, but there are two sides to this story. Jozy still missed the shot and considering how things roll in life, we have to understand it just happens with or without cause. Jozy isn’t burying this shot even nine out of 10 times.

Realistically, even the great individuals in this game, and sports in general, have their ceilings. One thing expected goals reveals to us, in some rather frigid and uncomfortable transparency at times, is how fallible these heroes are at even the best of times.

One last, minor detail; I’ve watched this clip a hundred times. I’ve super zoomed it and I’ve held the monitor up to my face and all sorts of other absurd things. I’m 95% positive the individual providing the pass to Jozy is Michael Bradley and not, as the data source suggests, Auro. They got this one wrong, and it makes you wonder how frequently that really happens.

//Harrison note: 9/20 5:00 PST// - it turns out that it’s definitely Auro. Thanks to Jacob Beckett and Eric Walcott for their sleuthing. The shoes reveal all!

#4 - Jozy Altidore, Toronto FC, 0.491 xG
Assisted By: Alejandro Pozuelo
Keeper: Sean Johnson
Result: Saved

I’m not even 100% sure this is a shot. Maybe he gets a slight toe poke on it. Maybe. But the idea and the process is there, and that’s really what we want to focus on with shot events. It’s not a horrible shot and doesn’t really trouble Sean Johnson, but that doesn’t factor into the model, because the model is based on everything leading up to (not after) the shot.

Expected goals doesn’t give a hoot if the shot is hit hard or soft. It doesn’t matter that the defense is on his hip. It doesn’t even really care about the angle of the pass. What it cares about is that it was done with his right foot, at the top of the six yard box and that it wasn’t a cross. Despite the fact that Jozy is a bit further away, the fact that this is coded as a “through ball” (FOR STATE SENATE 2020*) which increases its value a bit further.

Teams can look beautiful in their build up and chance creation, but expected goals gives us the actual product, the consistency, and even the moments we frequently disregard if we’re only focused on the final score. We throw them out because the effort was subpar, the execution lacked finesse or the result was poor. But it’s exactly those rejected events which we wish to stockpile and build around.

The Chicago Fire sit second on expected goals created this season are a prime example of those rejected events. The thing is, they aren’t overly crafty, they aren’t stylish, and sometimes they’re a bit drab tactically. They’ve had plenty of bad moments on both sides of the ball this year and despite all of that, they're showing enough consistency in this aspect that we can know there is something to it all.

I might be crazy, but I tend to think Chicago might just be an early candidate to be the Philadelphia of 2020 and if they can finally rebuild their defense they are going to be extremely tough.

*If you don’t understand this joke, you’re probably not a weekly reader (yet!) and should go back to last week's issue where I came out in support of a major political candidate.

#3 - Josef Martinez, Atlanta United FC, 0.603 xG
Assisted By: Hector Villalba
Keeper: Eloy Room
Result: Miss

Josef Martinez, blah blah blah, he’s great, blah blah blah. 

Technically this pass by Hector Villalba is considered to be a cross.It falls in the “cross but not a cross because it’s not stupid category” (please don’t unfund us ‘Big Through Ball, we still support you). It’s so magnificent and perfectly picked out that I don’t know if it’s just because he hit it too hard for Gressel, or because he was anticipating the parallel run by Martinez. 

What I love most about it is that the cross takes a skip. It’s predicated upon process, and at the time that Villalba strikes the ball there is no one in the 18 yard box, let alone near the six. He sends in a leading pass with the expectation that they are going to try and create a high leverage opportunity

There are two Columbus defenders, but neither are getting to that ball before Atlanta’s attackers, which makes this pass itself a brilliant pass. The five probabilities with this pass at the time, as I see them, are as follows:

  1. Martinez gets to the ball, creates a shot

  2. Ball doesn’t have enough weight, Gressel gets a headed effort.

  3. Ball goes out of bounds

  4. Columbus clears the ball for a corner.

  5. Gressel or Martinez earn a penalty.

This was a bit of one and a bit of three. The ball had a bit too much weight but Martinez still managed to get a foot on it and direct it at the goal at a tough angle.

Let’s talk about Villalba for a moment. He’s a guy that’s had a quiet season in the aftermath of the Atlanta makeover. He’s really a very capable attacker that doesn’t quite create or play the way that new head coach Frank deBoer values in his approach or style. The stats bear that out.

In 2018, in just under 2,000 minutes Villalba was an attacker supreme and probably in the top five of the best wide attacking players in Major League Soccer


However, following up last season we can see some categories dip while some others hold steady. Some of this is due to a drop in form. But with just over 800 minutes, that may be a result of small sample size and a change in how he’s been (under) utilized tactically.


I am interested to see how his future in Atlanta plays out. He’s only 25 and there were rumors Club America was kicking his tires this past offseason. Yet, it’s clear head coach Frank deBoer has issues with starlet winger Gonzalo Martinez and his level of defensive effort. If only there was a way of replacing Pity’s attacking production while keeping someone on the field that could double as a defensive presence out wide...

Player Min Shots G xG KeyP A xA xG+xA
Hector Villalba 5514 3.20 0.37 0.33 1.48 0.31 0.25 0.57
Gonzalo Martinez 1932 3.53 0.15 0.31 2.48 0.3 0.29 0.60

If only...

#2 - Jonathan Osorio, Toronto FC, 0.648 xG
Assisted By: Jozy Altidore
Keeper: Clint Irwin
Result: Saved

I often wonder how much stock to put into the shot-stopping ability of a keeper. A team puts an average of five shots on target per game. This represents at least five opportunities for a keeper to influence the expected goal difference of a game. That might not seem like much when packed into a 90 minute game. But when you distill it down to the fact that the average keeper sees almost twice as many shots on frame than the average attacker creates, you can start to see how important it is.

There are a lot of other elements that come into play for evaluating keepers, and the evolution of tactics, especially pressing, has changed Keepers’ influence on the buildup and made them more techincal players than they had been historically (how my heart yearns for another chance at a young 20-something year old Nick Rimando). 

This specific chance is a bit difficult to break down. I don’t know who defensively owns the responsibility of the chance being created. I think it’s Keegan Rosenberry or perhaps you might question if Clint Irwin had bad positioning prior to the cross. What I know is that the Jozy Altidore put that cross just a hair behind Jonathan Osorio, and Irwin can only make himself as big as possible (which is exactly what you’re supposed to do). He makes the save and it’s a huge moment in the game for Colorado, and regardless of other circumstances,the model tells us that when a shot is taken from that location there’s a better than 60% chance that it winds up in the goal.

I’ve preached process rather than results this whole article and I’m not trying to change my tune now. But goalkeeping is such a complex and weird art that it’s hard to pick apart foot placement, how quickly Irwin moves, or whether he took a good first step, but we know it’s a good save and how valuable it is to both his team and the present game state.

Keeper xG Shots >0.50 faced Saved %
Matt Turner 29 17 58.6%
Clint Irwin 12 6 50.0%
Brian Rowe 32 15 46.8%
Brad Guzan 29 13 44.8%
Steve Clark 19 8 42.1%
Maxime Crepeau 31 11 35.5%
Spencer Richey 38 12 31.6%
Bill Hamid 32 10 31.3%
Joe Willis 34 10 29.4%
David Ousted 17 5 29.4%

And here is where we take it back to process. If Irwin is continuing to get these types of saves, if he’s continuing to miraculously put a hand on shots that have better than 50% chance to go in, there might be something there. 

This is where I’m at with young New England goalkeeper, Matt Turner. He without a doubt makes mistakes. Some time bad ones on shots he shouldn’t be making mistakes. It’s why he doesn’t always pass the eye test in single games. But what really stands out to me is how consistently he saves high-leverage opportunities.

his isn’t to take away from Irwin, an underrated keeper for years who has been something of a quiet journeyman and done a great job. But it’s a difficult process to evaluate a single event with keepers and instead I look for repeatable events. xG can help us spot the signal in the noise.

#1 - Rolf Feltscher, Los Angeles Galaxy, 0.820 xG
Assisted By: #N/A
Keeper: Clint Irwin
Result: Miss

I really don’t want to go into whether this was a PK and if the LA Galaxy don’t get calls, or any of that. Every team gets and misses calls. Sometimes a lot one year and sometimes less others.

The only thing worth talking about here is the fact that Emil Cuello absolutely shoots the moon with this cross. I’m not sure if you can have a can of corn in soccer but that’s EXACTLY what this is. It’s a long high fly ball to left field for an easy out that doesn’t move the runners, when the batter should be trying to drive something the opposite way.

Yes, it’s hard to break down a defense that sits in deep with a lead late in a game and you’re on the road. The average road team this year has created all of 3.0 expected goals after the 80th and only 0.50 xG off of crosses this year. When I say crossing is futile and largely a waste, I don’t say it without cause. 

This season there have been a grand total of nine road goals scored after the 80th minute off of 125 shots from ... well, A LOT of freaking crosses (4,934 to be exact). That’s good for 7% conversion rate from the shot when the xG model says there should have been closer to 12. The success rate for crosses after the 80th minute has been barely two percent, so it might be time for teams to try something different. Just a suggestion.

But the best remedy is to stop trailing before the 80th minute. I know that seems like a “duh” thought, but my friend and, if he would be so kind to lower himself to my level, peer, Eliot McKinley tweeted this earlier this week.

Away teams who need points on the road need to be taking their subs earlier and trying to take more of the game sooner. This week’s Dallas at Seattle is a prime example.

FCD Touches and shots after the 80th minute vs Seattle.

FCD Touches and shots after the 80th minute vs Seattle.

Coach Luchi Gonzalez waited until the 74th minute before he made his first sub and while the game ended with almost 10 minutes of extra time, despite having an additional player advantage for the last 14 minutes, they still were unable to create one single shot from open play (they did create a set piece shot worth 0.0283 and a free-kick shot worth 0.0543). 

There was almost an invisible wall around the top of the 18 yard box for Seattle and I’m not sure I get it. It was clear FC Dallas was working out of a low block, but getting on the break means more than fewer passes, touches and shots. It means you should also be dealing with fewer defenders and your shots should look better than this whether you’re playing for a draw on the road or not.

 Bottom line: the worst time to need a goal in this game is late, and traditional idea of just lobbing a ball into the box and praying is a mostly terrible strategy. Until teams figure out a better way to create chances, I suggest teams sub sooner and become more aggressive earlier on the road.

Lofty Expectations:  Cristian Penilla, New England Revolution, 0.028 xG
Assisted By: Carles Gil
Keeper: Brian Rowe
Result: Goal

Worst xGA per game by season since 2011
Team Season Games ShtF ShtA xGF xGA xGD
MIN 2017 34 9.9 16.5 1.09 1.88 -0.78
NER 2019 30 12.5 14.7 1.37 1.83 -0.46
SJE 2018 34 12.9 15.2 1.30 1.79 -0.49
NYC 2015 34 13.0 14.9 1.24 1.79 -0.55
COL 2019 31 14.2 15.6 1.43 1.77 -0.34
ORL 2018 34 12.9 14.2 1.25 1.77 -0.52
VAN 2019 31 10.5 20.2 0.92 1.70 -0.79
CIN 2019 30 10.4 14.4 0.99 1.69 -0.70
MIN 2018 34 11.2 16.1 1.34 1.68 -0.34
COL 2018 34 11.0 15.4 1.03 1.67 -0.63

I’m not sure how much I can really articulate to you that I hate this play. It’s not that this pass is garbage or the run ill timed. It’s all rather delightfully succinct and nearly perfect. What I hate about it is that it bailed New England out of yet another garbage game in that they’re defense got let off the hook.

They’re literally going to be one of the worst defensive playoff teams in modern MLS history and yet they’ll still compete and it’s frustrating and down right exhausting because things like this continue to just happen for them.

But.they’re probably loads better since dropping Brad Friedel, right? Well...

Sadly, they’re actually and unbelievably worse. That’s mostly due to the fact their defense is just an abysmal train wreck wrapped in a dumpster fire and held together with duct tape, some sort of lacrosse glue, and Matt Turner who turns out is exceptional. Who knew?

It stinks to see a team that has a terrible process get rewarded, but it’s sports and that happens. Maybe things will improve for them as an organization. Or... maybe Bruce Arena is just going to Bruce Arena.

One more thing relevant to this shot is that Opta gave this a near 14% chance of becoming a goal, rather than just under 3% our model gave it. “Why is that?” you might ask. Well, it’s simple, and the answer is ‘Big Chances’.

Big Chance is defined by Opta as “a situation where a player should reasonably be expected to score, usually in a one-on-one scenario or from very close range.” It’s a specific field in the event catalog which the individual coding the event can see the event and say “hey that looks like the model isn’t seeing things it should be (like being on a break with the keeper out of their net) and as a result they can increase the value of the shot.

This has, you might imagine, created a stir of discussion on whether to include ‘Big Chances’ in a model or not. We do not, and yet, there are many others which do. It all comes down to how you want your model to behave. If you wish to read about it, I wrote all about it and included some details on Mark Taylor’s article here. If you wish to skip all of that fluff and read someone super intelligent on the subject, such as Mark Taylor’s article, just go there.

See you next week!