Being an avid Oilers fan and recently being introduced to Rob Vollman’s Stat Shot, I became interested in the world of hockey analytics. At the beginning of the book he goes into the theory behind the numbers but not necessary the math. For me, it’s a bit hard to believe the numbers unless I truly break it down and understand the math behind it. So I decided to turn to google to try to find some example calculations or someone to break down the math. Surprisingly enough, it’s hard to find any sample calculations online even for something like Goals Versus Threshold (GVT), which was invented in 2009 by Tom Awad of Hockey Prospectus. Yes, that is almost been a decade ago! Maybe these people try to keep it a semi-secret so they can run beautiful charts and eventually become GM’s of NHL teams. I don’t know for sure, but I know I’m going to try to break down numbers the best I can so everyone can understand and even make their own calculations.

My goal is NOT to find some new magical catch all formula to determine the next Stanley Cup Winner but to break down well known formulas in the hockey analytic world for everyone to understand. I think this is important for leagues that are just starting to collect data or for people to run their own hockey analytic theories.

Lets get right into it.

How to Calculate Offensive Goal vs Threshold.

Before we get into numbers I just want to talk about the name Goals Versus Threshold (GVT) for a bit. To me this is a bit of an odd name because it seems like it only accounts for goals, but really it accounts for assists and goals, as you will see later. So how about the “vs threshold” part? It’s saying that it’s a number calculated compared to a threshold player. For example; let’s say a player like Draisaitl goes down for the rest of the seasons for the Oilers (god forbid). Who’s going to have step it up? Probably guys like Lucic, Maroon and Kassian. So what’s the difference between having Draisaitl on the line and not having Drasaitl on the line? how much can the replacement players like Lucic, Maroon and Kassian step it up? what’s the measurable difference? GVT tries to answer these question quantitively to truly understand the value of a player like Draisaitl or any other player’s GVT.

Threshold can be measured two ways, in comparison to your team or the league because there’s really two ways to replace a player. To move players around on your team and pull up a farm team player or to acquire a player somewhere around the league. So it’s important to make sure your threshold number is correct and you are not comparing a player’s team GVT vs a player’s league GVT.

So this is the first formula. This might not be naturally intuitive because we’re usually caught up by traditional stats where 1 point is equal to 1 goal or 1 assist. In real life this is not the case. It’s pretty obvious that 1 goal is more valuable than an assist but how much more? Well someone ran the numbers and found that for every 1 goal there is usually around 1.7 assist. For example: if the Oilers score 10 goals over a couple games there is usually 17 assists to go along with it.

So from this logic we can say that a goal is 1.7 times more valuable than an assist. But it says 1.5 in the equation you say. Well that’s because Tom Awad decided that using 1.7 is underestimating the value of an assist a bit and decided to use 1.5 to undervalue the worth of a goal which is turn values the assist higher. I’m not going to argue with someone who’s much more experienced in this field. So we’re going to use 1.5. Using that formula we can move onto the next part.

These two formulas assign a value to each goal or assist on a team or the league, depending on which threshold you choose to compare a player to. The x value can be t=team, l=league, or i=individual depending on what your comparison reference point is. The numerator is what we talked about in the previous example. A goal is worth 1.5 an assist so it gets 1.5 the value and 1 assist is just worth 1 assist. The denominator is the total value of both assist and goals. Together the numerator and denominator assign a theoretical value to every goal and every assist.

In my example we’re going to use Oilers goals as of January 3 2017 of the 2016-2017 season. Gt will be 178, because we’ve scored 178 goals, and At will be 108 because we have 108 assists in total. We use a value of t because we’re using the team as a reference point.

Now that we have a relative value of each goal lets determine the threshold number for Oilers forwards so we have something to compare to. The reason why I say forwards is forwards and defensemen are valued quite differently. So in our example, we’re only going to look at forwards.

So this formula might seem a bit complicated at first but I promise it is not. It is just assigning a goal value and an assist value for all goals and assists for each forward on the team and then dividing by the number of minutes they’ve played. This is just to make sure we’re comparing apples to apples in terms of points production. For example; a guy like Tyler Pitlick who can put up 8 goals and 3 assists with like a total of say 10 minutes on the ice is theoretically more valuable than McDavid who puts up 14 goals and 29 assists in say 200 minutes of ice time because if we gave Tyler Pitlick 200 minutes of ice time he would have 160 goals and 60 points. Again, this is just an example to stress my point. Pitlick is good, he’s not that good, though.

OTV, this one is a bit confusing and has been assigned a value of 0.75. There is some argument in Rob Vollman’s Stat Shot about what the number should be but we know for sure it should be somewhere between 0.58 (Alan Ryder) and 0.75 (Tom Awad) depending on who you talk to. This number is saying that a replacement level player is roughly 75% of the teams average. So if we calculate the average player value of our team and we say our average is roughly the same production value as Mark Letestu. If Maroon goes down for the rest of the seasons we should be able to get 75% a Mark Letestu to replace Maroon for the rest of the season.

So let’s run the numbers. To save myself from writing a huge long formula I’m going to do an excel spreadsheet to save me and everyone else from going insane.

Rk Player Pos Gf Af MPf Gf × GVt +Af × Avt 1 Connor McDavid C 14 29 804 15.857 2 Leon Draisaitl C 14 19 683 12.687 3 Milan Lucic LW 10 16 688 9.832 4 Jordan Eberle RW 8 17 675 9.197 5 Ryan Nugent-Hopkins C 7 11 680 6.819 6 Patrick Maroon LW 11 6 589 7.138 7 Mark Letestu C 7 10 497 6.502 10 Tyler Pitlick RW 8 3 308 4.759 11 Zack Kassian RW 2 7 412 3.171 12 Jesse Puljujarvi RW 1 7 302 2.695 13 Benoit Pouliot LW 5 2 480 3.014 14 Drake Caggiula LW 2 4 262 2.220 19 Anton Slepyshev LW 2 2 168 1.586 20 Matt Hendricks LW 1 2 168 1.110 21 Anton Lander C 1 2 164 1.110 25 Taylor Beck LW 0 0 18 0 Total 6898 87.697

Now that we have a comparison value we can finally run GVT for every player on the team. We can finally move to the next and final formula.

Again, I’m going to use excel to save myself from writing a whole formula for every single player. One thing I have to calculate out is the GVi value and the AVi value which is specific for every player. TOCf will be taken from the calculation above.

Rk Player Pos Gf Af MPf GVi AVi FGVT 1 Connor McDavid C 14 29 804 0.420 0.280 13.233 2 Leon Draisaitl C 14 19 683 0.525 0.350 13.348 3 Milan Lucic LW 10 16 688 0.484 0.323 9.344 4 Jordan Eberle RW 8 17 675 0.414 0.276 7.356 5 Ryan Nugent-Hopkins C 7 11 680 0.488 0.326 6.351 6 Patrick Maroon LW 11 6 589 0.733 0.489 10.438 7 Mark Letestu C 7 10 497 0.512 0.341 6.526 10 Tyler Pitlick RW 8 3 308 0.800 0.533 7.706 11 Zack Kassian RW 2 7 412 0.300 0.200 1.607 12 Jesse Puljujarvi RW 1 7 302 0.176 0.118 0.712 13 Benoit Pouliot LW 5 2 480 0.789 0.526 4.542 14 Drake Caggiula LW 2 4 262 0.429 0.286 1.750 19 Anton Slepyshev LW 2 2 168 0.600 0.400 1.840 20 Matt Hendricks LW 1 2 168 0.429 0.286 0.840 21 Anton Lander C 1 2 164 0.429 0.286 0.844 25 Taylor Beck LW 0 0 18 0.000 0.000 0.000

So what does this Forward Goal vs Threshold (FGVT) all mean? Well up to this point in the season Connor Mcdavid has provided around 13 extra goals compared to if we didn’t have him and Tyler Pitlick has provided an extra 7/8 goals compared to if we didn’t have him. This sounds super weird in theory because it doesn’t look like Connor McDavid is that much better than Pitlick but if you look at the time on ice it is easy to see that that Connor McDavid has more than twice as many minutes as Pitlick and Pitlick has put up more goal in a shorter amount of time. These numbers are not saying put Pitlick on for more time (well because he’s injured). It is saying Pitlick is playing a super efficient game and can put up points in a short amount of time. Again, it’s important to say that threshold number is the comparison to the replacement level on our TEAM and NOT the league.

Incorporating the 3-1 rule (From Stat Shot), which states that for every 3 goals you get 1 point in the standings. We can say that if we’re out of the playoffs by 2 points at the end of the season, it’s because Tyler Pitlick wasn’t playing the remainder of the season. Just joking, there’s a lot more variables in play.

References:

http://www.hockeyprospectus.com/puck/article.php?articleid=236

http://www.allaboutthejersey.com/2014/8/8/5978425/catch-all-statistics-part-i-gvt-versus-point-shares

http://www.hockey-reference.com/teams/EDM/2017.html

Updates: thanks morehockeystats on r/hockeystats for reviewing some of my work. Some of the calculations were using the wrong variables. It should be all fixed now though. Thanks!