Skip to content

Methodology

The numbers are only worth trusting if you can see how they're built. Here is the short version of each. Each one links to a full technical writeup.

How we test →

Where the ranges on GAR and the ratings boards come from. The checks a new input has to pass before we use it.

Home-grown expected goals (xG)

Our own model of how likely each shot is to become a goal. It is built from public play-by-play. It weighs where the shot came from, what kind of shot it was and the game situation. It never looks at the goalie. So it rates the shot, not who faced it.

Read the full method →

Transition-credit RAPM

A rating of a player's impact on the ice. It separates the player from teammates, opponents and how the coach used them. It also gives credit for moving the puck up the ice. That gives puck-moving defensemen their due. Small samples are pulled toward league average. That keeps a short stint from swinging the rating.

Read the full method →

Own-baseline finishing variance

Goals scored above what the chances were worth. Each player is compared with his own past seasons, not with the league. Buy-low marks a forward finishing well below his own norm with no injury to explain it. Sell-high marks one finishing well above it.

Read the full method →

Goals & Wins Above Replacement (GAR / WAR)

A skater's total value in goals, added up from seven parts. The parts are even-strength offense, even-strength defense, power play, penalty kill, penalties, faceoffs and finishing. WAR turns those goals into wins. Most parts are measured above a replacement or depth player. The power play and finishing are measured against league average.

Read the full method →

Wins Above Average (WAA / GAA)

The same seven parts as WAR, each measured against an average NHL regular instead of a replacement player. That makes it the easier way to compare two established stars. Five of the parts differ from WAR. In WAR, those five are measured above a replacement or depth player.

Read the full method →

Goalie value: GSAx, High-Danger GSAx & Above-Expected Starts

Goals saved above expected (GSAx) comes from our skater shot model. That model never knows who is in net. High-danger GSAx counts only the hardest shots (xG of 0.12 or more). Above-Expected Starts is the share of starts where the goalie matched or beat expectation. All three go back to 2009-10.

Read the full method →

Peer value

A player's value ranked within his role, not against the whole league. A role is something like top-six forward or second-pair defenseman. It ranks by season GAR (GSAx for goalies). Skaters need 20 games to be ranked. Goalies need 20 starts.

Read the full method →

Leverage & close-game scoring

How much of a player's offense came while the game was close. Each goal is graded by the score when it went in. So a tying goal counts as high leverage even if the game later became a blowout. An overtime goal always does. The card compares a player's close-game share with the league's. It does not repeat from season to season.

Read the full method →

Skill and luck scores

We are re-examining the skill score and the luck score. Neither is shown for now.

Read the full method →

Scoring pace & production trajectory

A player's recent value per 60 minutes, with the latest season counting most. It is ranked within position against every skater rated since 2010-11. It sums up recent seasons. On today's numbers, we have not yet scored it against what happened next.

Read the full method →

Situational & deployment metrics

The context around a player's numbers. It covers shot quality and play when leading or trailing. Puck luck flags on-ice luck. QoC and QoT show how strong his opponents and linemates were. The Shot-Control Index asks whether play tilts toward the other net with him on the ice, compared with his team. All of it describes the past. None of it is a betting signal.

Read the full method →

In testing and In validation

Some numbers carry a small label. In testing: We have not confirmed this number yet. Use it as a rough guide. In validation: This number did better than the one we showed before when we checked it on past seasons. We are still confirming it on new games.

Read the full method →

Historical coverage

Box-score stats, finishing and goalie numbers go back to 2009-10. GAR, WAR and RAPM start in 2010-11. That is the first season with shift charts. Earlier seasons show as not rated. WAR from older seasons is not on quite the same scale as recent ones. Compare players from similar seasons. Shot-control numbers are adjusted for zone starts from 2020-21 on. For 2019-20 and earlier, they are shown without that adjustment.