Analytics reference

Stats Glossary

A plain-language guide to every advanced stat shown on the site

← Back to analytics explorer

How to read this glossary

The Concourse calculates these stats from worker-provided NHL game, season, and tracking records. Each entry explains the inputs the site receives and the calculation it performs; where the worker contract does not expose a model's internal features, we do not guess at them.

Stats are grouped by the question they answer: overall performance, control of play, chance quality, deployment, scoring rates, or goaltending. Use this page whenever an abbreviation or rating needs more context.

The Concourse Rating

Concourse Rating

skaters & goalies

A 0–100 summary of a player's season. Each input is converted to a percentile, so a score of 80 means the player rated at or above about 80% of the comparison pool on the blended measures; it does not mean the player was 80% effective.

Why it matters: It gives a quick overall comparison while the component stats explain why the score is high or low. Percentiles are relative to the season's qualifying players, so the rating is best read alongside role, position, ice time, and the Offensive or Defensive Rating.

Note: Skaters and goalies use different formulas. A player's detail rating can include available NHL Edge context, while list surfaces can use the core rating, so nearby surfaces may differ slightly.

How a skater's rating is built

The production score is Game Score percentile (40%), individual expected goals percentile (35%), and Individual Points Percentage percentile (25%). The on-ice context score is Corsi For % percentile (40%), Fenwick For % percentile (30%), and Expected Goals For % percentile (30%).

The final skater score weights production at 70% and on-ice context at 20%, then uses 10% NHL Edge context when the available tracking values produce a context score. That context is the average of whichever tracked percentiles are available: maximum skating speed, maximum shot speed, and offensive-zone time. When no usable Edge context score is available, the production and on-ice weights are renormalized rather than treating missing tracking as zero.

How a goalie's rating is built

The primary score is Goals Saved Above Expected percentile (50%), Save Percentage percentile (30%), and High-Danger Save Percentage percentile (20%).

The final goalie score blends 85% of that primary score with 15% Edge context. The context is the average available Edge percentiles for overall save percentage, 5-on-5 save percentage, and close-game 5-on-5 save percentage; when none are available, the formula uses a neutral context score of 50.

Concourse Rating · v3

all skaters · value above average

A total-value rating for all skaters. It adds the player’s estimated goals above their position average from even-strength offense, individual creation, finishing, power play, penalties, even-strength defense, and penalty kill; unlike the Offense and Defense badges, Overall is based on total value rather than a per-minute rate.

Why it matters: It puts forwards and defensemen on one understandable scale while keeping each component fair to the player’s position.

Note: v3 active when the rating flag is v3. Effective minutes include current-season minutes plus weighted carry-over minutes. At 800 effective minutes, no sample adjustment applies. Goalies continue to use the existing goalie model.

Concourse Rating · v4

all skaters · isolated impact

A total-value rating for all skaters. It combines individual creation, finishing, special-teams production, penalties, and estimated on-ice offense and defense in goals above a position average.

Why it matters: At 5-on-5, v4 estimates the part of on-ice results associated with the individual skater, adjusting for teammates and opponents. Forward and defense values share one total-value scale.

Note: 5-on-5 uses adjusted isolated-impact estimates. Power-play and penalty-kill on-ice values retain the v3 position-average-relative, sample-shrunken method. Single-season power-play RAPM cannot separate players who share every shift on the same unit; PP/PK isolated impact will be adopted once multi-season fits exist. Missing or pooled 5-on-5 estimates contribute zero to that on-ice part, while other components still count. Goalies retain their existing model.

Possession & Shot-Attempt Stats

These measure who controls the puck and the play, not just who scores.

Corsi

CF, CA, CF%

The worker supplies on-ice shot attempts for (CF) and against (CA), including shots on goal, misses, goals, and attempts that are blocked. The site calculates CF% as CF ÷ (CF + CA).

Why it matters: Shot-attempt share is a broad proxy for territorial pressure. Above 50% means the player's team produced more attempts than it allowed while the player was on the ice, but it does not adjust for shot danger or deployment.

Corsi Relative

Corsi Rel

The player's on-ice CF% minus the team's off-ice CF%. The site derives the off-ice share from team totals after subtracting the player's on-ice attempts.

Why it matters: It shows whether the team controlled a larger or smaller share of attempts with the player on the ice. Positive is better, but the comparison still reflects teammates, opponents, and deployment rather than proving individual causation.

Fenwick

FF, FA, FF%

The worker supplies unblocked attempts for (FF) and against (FA): goals, shots on goal, and misses, but not attempts blocked before reaching the net. FF% is FF ÷ (FF + FA).

Why it matters: It describes control of attempts that get through the first layer of defense. It is useful beside Corsi, but the two measures overlap heavily because both begin with shot attempts.

Fenwick Relative

Fenwick Rel

The player's on-ice FF% minus the team's off-ice FF%, with the off-ice share derived from team totals after subtracting the player's on-ice unblocked attempts.

Why it matters: It asks whether the team won a larger share of unblocked attempts with the player on the ice. Positive is better; use it as context, not as a stand-alone measure of individual defense.

PDO

PDO

The team's on-ice shooting percentage plus its on-ice save percentage while the player is on the ice. The site calculates shooting percentage as goals for ÷ shots for × 100 and save percentage as (shots against − goals against) ÷ shots against × 100, then adds them.

Why it matters: PDO provides context for unusually high or low results. Values far from 100 can reflect finishing, goaltending, or short-run variance, but the number alone cannot tell which cause is responsible or guarantee regression.

Offensive Zone Start %

OZS%

The worker-supplied offensive-zone starts divided by offensive-zone starts plus defensive-zone starts. Neutral-zone starts and on-the-fly changes are not in this denominator.

Why it matters: It describes deployment. A higher share means the player begins more counted shifts in attacking position, useful context when comparing possession and scoring results.

Offensive Zone Finish %

OZF%

The worker-supplied offensive-zone finishes divided by offensive-zone finishes plus defensive-zone finishes. It is a share of counted zone finishes, not a measure of total seconds spent in each zone.

Why it matters: It shows where counted shifts end and complements where they started. Comparing starts and finishes can add context, but does not by itself isolate a player’s effect.

Scoring & Shot-Quality Stats

These measure not just how many shots happened, but how dangerous they were and who's actually producing.

Expected Goals

xG

The worker supplies expected-goal values: probability-based estimates of how often attempts with the model’s characteristics become goals. The site receives individual xG for the shooter and on-ice xGF/xGA totals for attempts taken by either team; the worker contract does not expose the model’s feature list here.

Why it matters: xG weights chances by estimated scoring likelihood instead of treating every attempt equally. It helps separate chance quality from actual goals, which are also affected by finishing and goaltending.

Expected Goals For %

xGF%

The worker supplies the player's on-ice expected goals for and against totals. The site calculates the share as xGF ÷ (xGF + xGA) and displays it as a percentage.

Why it matters: It summarizes which team created the larger share of expected scoring value while the player was on the ice. Above 50% means more expected goals for than against.

Goals Above Expected

A skater's goals minus individual expected goals: goals − ixG.

Why it matters: Positive means the player scored more than the model expected from those attempts; negative means fewer. It describes the result over the sample, not whether the difference came from repeatable finishing skill or variance.

High-Danger Chance %

HDCF%

The worker supplies probability-defined high-danger attempts for and against. The site calculates HDCF% as high-danger attempts for ÷ (high-danger attempts for + high-danger attempts against). The worker contract identifies these as probability-based but does not expose the cutoff or model features.

Why it matters: It shows which team produced the larger share of the worker-classified dangerous attempts while the player was on the ice. It should be read with the sample size because rare chances can move the percentage quickly.

Game Score

GS

A weighted production total: goals × 0.75, primary assists × 0.70, secondary assists × 0.55, shots on goal × 0.075, blocks × 0.05, penalties drawn minus taken × 0.15, faceoff wins minus losses × 0.01, 5-on-5 Corsi for minus against × 0.05, and 5-on-5 goals for minus against × 0.15.

Why it matters: It combines box-score production, discipline, faceoffs, and selected 5-on-5 on-ice results in one consistent score. It is one input to the ratings, not a complete measure of a player by itself.

Individual Points Percentage

IPP

The player's goals plus primary and secondary assists, divided by the team's on-ice goals for, then multiplied by 100.

Why it matters: It shows how often the player recorded a point when the team scored with them on the ice. A high value can signal central involvement, but role, linemates, and a small goal sample can move it sharply.

Rate Stats (Per-60 Minutes)

Per-60 Rates

e.g., G/60, P/60, xG/60

A counting total divided by ice time in seconds and multiplied by 3,600. For example, 10 goals in 1,000 minutes is 0.60 goals per 60.

Why it matters: Per-60 rates compare how often an event occurs over equal ice time rather than comparing raw totals. They normalize opportunity, not role or game state, and extreme rates are less reliable in small samples.

Note: The site can label rates by available ice-time sample. Always compare like situations, such as 5-on-5 with 5-on-5, because combining strengths changes the opportunity mix.

Goalie-Specific Stats

Save Percentage

SV%

The worker supplies all-situations shots faced and goals allowed. The site uses (shots faced − goals allowed) ÷ shots faced.

Why it matters: It is the share of shots on goal stopped. It is easy to interpret, but it does not adjust for shot quality or the defense in front of the goalie.

Goals Saved Above Expected

GSAx

The worker's expected goals faced minus actual goals allowed. Positive means the goalie allowed fewer goals than the model expected; negative means more.

Why it matters: It adds the worker model's shot-quality estimate to the result, giving more context than save percentage alone. It carries 50% of the primary goalie rating.

High-Danger Save Percentage

HD SV%

The worker's probability-defined high-danger attempts faced minus high-danger goals allowed, divided by high-danger attempts faced. The contract does not expose the model cutoff used to classify an attempt as high danger.

Why it matters: It isolates results on the worker-classified dangerous attempts rather than mixing them with every shot. Because these attempts are less frequent, the percentage can be volatile in a small sample.

Expected Save Percentage

A shot-quality baseline calculated as 1 − (expected goals faced ÷ shots faced), when both values are available. It represents the save percentage implied by the worker’s expected-goals total.

Why it matters: It provides a difficulty-adjusted reference for actual save percentage. Actual SV% above the expected value means fewer goals were allowed than the model baseline implies.

A Note on Our Data

The site reads normalized skater and goalie season records from its analytics worker, then calculates the percentages, relative values, Game Score, and ratings described above. The worker contract identifies NHL game and season records as the source but does not expose every upstream collection or model-training detail, so this glossary limits provenance claims to what the contract verifies.

Some player pages also show official NHL Edge tracking fields such as skating speed, shot speed, and zone time. Those fields are labeled as NHL Edge context and are separate from the worker's advanced-stat records.