clock menu more-arrow no yes mobile

Filed under:

Introducing the Newest Advanced Stat: Colesi

It's a debate as old as the advanced stats movement itself. How important is shot blocking? I've set out to answer that question more definitively than it's ever been before. Will I enlighten the masses? Will I change the very way we look at hockey? Why am I asking you all these questions?

Richard Wolowicz/Getty Images

I spent the last month working on this Google Spreadsheet. You can look at it here.

What's This About Then?

Back in November, Sportsnet published an article "The incredibly overrated Kris Russell". The article claimed that then-Calgary Flames defenceman Kris Russell is overrated. Incredibly even. Naturally, debate sprung forth in the comments section about the merits of blocking shots. It's the usual talking points, "it proves defensive responsibility," and "it proves more opportunities for the other team," nothing new here at all. I made several comments there, and one thing I had planned on posting in those comments was the percentage of his Corsi against Russell had blocked. I did the math in a percentage calculator, and then it donned on me. I have absolutely no data to compare to. Is his number pretty good? Or is it atrocious? Fast forward to the end of the 2015/16 regular season, and it's finally time for me to get that data. This is the end result.

What Is This Supposed To Accomplish?

Anyone who knows anything about advanced stats is that raw Corsi and Fenwick totals are limited in their usefulness by the fact that any two players can play vastly different amounts of time. As a result, when we talk about those numbers, we use either percentages, in order to see what share of the total shot attempts a player's team is generating with that player on the ice, or CorsiFor or CorsiAgainst Per60, in order to account for how playing more or less time than another player can inflate or deflate shot totals. There doesn't really exist a rate stat for blocked shots. The NHL has a blocks per game stat under their "Real Time Stats", and some have suggested Blocks per Minute or Blocks per 60 as rate stats, but there is a problem with that. Whether we're counting blocks per season, game played, 60 minutes of TOI, or single minutes of TOI, there's still no accounting for opportunity, the amount of shot attempts being taken. I sought to remedy the above problems by recording shot blocks as a percent of a player's total shot attempts against. I'm going to call the stat Colesi.

rimshot rim shot eye roll drums

Note, that because the NHL website doesn't filter blocked shots by situation (5v5, etc.), all the stats I used were for "All Situations". All shots are taken into account, regardless of score, time remaining in games, or number of skaters. Although generally forwards block far fewer shots than defencemen do, making this number pretty inaccurate for forwards, I still included them for completeness' sake.

What Data Did I Use?

For each skater who actually saw NHL ice, from Erik Karlsson and his 2375:55, to the 0:47 of James Wisniewski, 899 in all, I tabulated each player's number of Games Played, total Blocked Shots, Corsi Against, and Blocked Shot Percentage, as well as their position, and the team they were under contract with when the season ended. Some players have asterisks next to their name. It just means the team they're listed under is the one they were under contract with when the season ended, but they played all of their NHL games this season for a different team (eg. Jared Cowen played all his games this season before being traded to Toronto, so he is listed as a Maple Leaf and has an asterisk next to his name).

Did I Find What I Was Looking For?

Not exactly. I definitely found that certain players were more efficient at blocking shots than others, I just found that it amounts to very little. Firstly, there are only three players who blocked at least 20% of the shot attempts taken against them. They have eight games played between them. They blocked 50%, 30%, and 25%, respectively. The next-highest percentage is 18.65, a really low percentage. By the time you get to anyone that played anywhere near an actual NHL season rather than just a few callups, you get Kris Russell, who blocked a paltry 13.66% of the shot attempts taken against him in 62 games. That is our standard of excellence.


It is important to block shots. Neither I, nor anyone else, dispute that fact, have ever disputed that fact, or ever will dispute that fact. Anyone who says otherwise is either clueless or an anti-stats person making a straw-man argument. That being said. It is also cold hard fact that every shot blocked is still a shot attempt taken by an opposing player, most likely the result of bad play, and an event a team needs to have to do less to remain competitive. To add to that is the fact that, aside from a smattering of prospects or career minor-leaguers on brief injury callups, nobody is blocking a significant percentage of shots. Even the most prolific shot blockers fall very short of the still-low 20%. The total percentage of all shot attempts that get blocked is only 25.44%.  That's 34,734 blocked out of 136,530 overall. Blocking shots is an important skill for an NHL player to have, but this just shows how it's quantifiably not enough for a player who only does it to be considered NHL-calibre.


I don't have a website like war-on-ice to use to efficiently tabulate my data. Instead, I use a Google Spreadsheet, and I gotta say it is not an elegant solution. To make it as easy as possible to use my spreadsheet, here is how to sort data:

  1. Firstly, highlight all of the columns, except for the first one. The first one is each player's rank in whichever category you're sorting by, so you have to not highlight so it doesn't rearrange with the rest of the data. The rest need to be highlighted because the data in each cell of a row corresponds to the cells it's adjacent to on either side.
  2. With the rest of the columns highlighted, select the "Data" tab. Under "Data" there is an option that says "Sort range." Click that option.
  3. You will be given a dialog box that allows you to choose which column you want to sort by. Click the check box that reads "Data has header row". Now the options will be labelled by which data is in the column you're sorting by (Player Name, Team, etc.).
  4. Choose which column you want to sort by. Choose A->Z for alphabetical order, and Z->A for reverse alphabetical order. If you're sorting by a column with numbers in it, choose Z->A for most to fewest and A->Z for fewest to most. In the case of Corsi Against, I recommend going fewest to most as the better number is the lower one.
  5. It's optional, but I recommend further sorting for tie-breakers. In the same dialog box as above, there is an option "Add another sort column". Click on this, and select a column and whether to sort A->Z and fewest to most or Z->A and most to fewest. You can do this for each column. The recommended way I'd read players' Colesi numbers is to sort first by Colesi Z->A, then Blocked Shots Z->A, then Corsi Against A->Z.

Again, sorry it's not a more user-friendly interface like the actual advanced stats websites. I'm not computer-literate enough to do that. I barely understand spreadsheet software. Anyway, tell me what you think of this whole thing. I'm eager to hear what you guys think!

Credits - I wouldn't touch this site's data on shot attempts on stuff, but it seems perfectly reasonable to use this site to gather shot blocking data. - I was surprised to find the stats I've been using only have per60 stats for Corsi and Fenwick. I was relieved to find that War-on-ice also lists the raw numbers. - I don't trust myself to do the math to get the block percentages and get correct results, so I plugged all my data into this percentage calculator to ensure I got the right numbers.

There were a couple of players who, for whatever reason, didn't have their stats listed on War-on-ice, so I converted their total TOI to hours using's Time to Decimal Calculator, got their CA60 from, and multiplied them to get their total Corsi Against, rounded to two decimal places.