← Methodology

Goals & Wins Above Replacement (GAR / WAR)

The site's headline value metric: one number, in goals, for everything a skater contributes over a freely-available replacement - then converted to wins, and checked against what teams actually did on the ice.

What GAR measures

GAR rolls a skater's entire on-ice contribution into a single figure denominated in goals: the goals they help create and the goals they help prevent, above what a freely-available replacement player - a call-up or waiver-wire body - would have produced in the same minutes. WAR is the same value expressed in wins, dividing goals by a calibrated goals-per-win factor. Higher is better on both, and a replacement-level player sits at zero.

The seven components

GAR is built bottom-up from seven independent pieces, each measured in goals, that sum to the total. Even-strength offense and defense are the backbone; special teams, discipline, faceoffs, and finishing round it out.

ComponentWhat it captures
EV offense5v5 chance creation, incl. a transition credit for the puck-mover
EV defense5v5 chance suppression, oriented so higher is better
Power playScoring value added on the man advantage, over a replacement option
Penalty killShorthanded chance suppression
PenaltiesPenalties drawn minus penalties taken
FaceoffsDraw wins above a replacement rate
FinishingGoals scored above the expected value of the chances taken

Replacement level, stated honestly

For the even-strength backbone, replacement is a genuine below-average floor - the 15th percentile of the qualified per-position talent distribution, a level roughly 85% of NHL regulars clear - not league average. The power play is measured over a replacement unit; penalties and faceoffs use a depth-player floor; finishing is anchored at league-average finishing. That is the change that makes WAR mean what it says: an earlier version baselined the backbone at league average, which quietly turned the headline into wins above average.

Single-season, and how we validate it

The headline WAR is a single-season number: the even-strength core is fit separately for each season on that season's own data, regularized toward league average by a strength chosen through cross-validation - never toward the player's own past. To check the number means what it claims, we sum every team's players' WAR and compare it to what the team actually did on the ice.

Validation checkResult
Team-summed WAR vs team goal-differentialcorrelate ~0.84, on par with the best public models
Single-season fit vs the older pooled modeledges it out-of-sample on held-out games
Goalies in the skater WARnone by construction; a structural gate blocks any leak

Two more guards run before anything publishes: structural sanity gates refuse a build if the league-wide ordering drifts outside its expected bands, and a fingerprint check proves that a single-season update changed only that season. These catch pipeline mistakes before they ever reach a card.

Two WAR numbers, and why they do not add up

A skater can show two WAR figures, and they are not meant to be equal. The single-season number fits each year on its own data and answers what a player did that season. The multi-season, or true-talent, number pools the whole window into one stable estimate and answers how good the player is right now, the figure you would carry into next year. A pooled talent estimate is a different calculation from several separate seasons, so summing a player's single seasons will not reproduce the pooled figure, by design. The gap lives almost entirely in finishing, the least repeatable component. In the single-season number finishing is credited at face value - the goals that actually beat the expected value of the chances, that season - because a single-season figure is a descriptive record of what happened. In the true-talent number it is not: a season's finishing is pulled toward a neutral, league-average level in proportion to how little evidence stands behind it, so one hot season is mostly discounted while a full career of them survives as real skill. Because the single seasons are left un-pulled and the career figure is pulled, summing a high-volume shooter's descriptive seasons sits above his pooled true-talent finishing - and that gap is exactly the season-to-season noise the true-talent number is built to remove. The season number is the honest record; the career number is the honest forecast.

The honest caveats: the goals-to-wins conversion is a calibrated league constant rather than one varied by each season's scoring environment, and the single-season and multi-season figures use slightly different constants - each is calibrated on the same finishing basis as the value it converts, which is what keeps both honest against the standings. And 'above replacement' is literal for the even-strength backbone, which sits on a real replacement floor rather than league average - but not for every component: the penalty kill and finishing are measured against a league-average baseline, as stated above. If you want value measured against an average NHL regular instead of a replacement, see the companion metric, Wins Above Average.

Validation figures reflect the data through 2025-26 and are recomputed each season. Head-to-head benchmark tests (log-loss, AUC, bootstrap intervals) are dated snapshots of a specific held-out season, labeled where they appear.