xJawn NHL expected goals

← Players · ← 2025-26 season

SJS Nick Leddy

D · career · 16 seasons · value in goals above league average per 60 minutes of ice

GAA/60 by season

How to read this chart

One point per season: GAA/60, the accounting sum of that season's 5v5 value — chances created (Off xG-RAPM) + chances suppressed (Def xG-RAPM) + finishing above expectation — in goals above league average per 60 minutes of 5v5, power-play and penalty-kill ice. The players table shows the same accounting as a season total, which keeps ice time inside the number; this page divides it out, because comparing a player to himself across seasons should not be driven by how long each season was. The chart opens on the 3-season weighted average: each point is the ice-time-weighted average of the player's GAA/60 over that season and the two before it. A single season of RAPM is noisy (year-over-year correlation ≈ 0.5, the defensive half worse), so the smoothed line is the honest read — it answers "is this level real?" rather than "what did one 1,000-minute sample say?". The Single season toggle shows the raw per-season number instead, swings and all.

The grey bands are the league that same season, in the same view: the brighter fill is the middle half of skaters (25th–75th percentile), the faint fill the 5th–95th, the dashed line the league median — all over skaters with at least 300 minutes of 5v5 ice time (window-summed in the 3-season view). Where a point sits inside the bands is its percentile; the label above it makes it exact. Hollow points fall under the floor — they draw (the line is the career) but get no rank.

The vertical axis is GAA/60 — a linear goals-above-league-average scale, so heights add up. It opens on just the orange net line over the bands. Click Off / Def / Fin in the legend to stack that piece in: chances created and finishing (when positive) fill up from the dotted zero line, chances against fill down when a player is bleeding them, and the net line is their sum. Toggle each one independently — the line says how good, the stack says where the value came from.

Season by season

SeasonTeamTOIOffDefFinGAA/60GAA (goals)Percentile
2025-26SJS518 -0.11-0.06-0.01 -0.28-2.6 12th
2024-25STL641 -0.19-0.04-0.01 -0.23-2.5 19th
2023-24STL1,534 +0.01-0.10-0.01 -0.14-4.2 32nd
2022-23STL1,450 -0.04-0.03-0.01 -0.08-2.0 44th
2021-22DET1,545 -0.10-0.04-0.01 -0.20-5.8 11th
2020-21NYI1,365 -0.03-0.05-0.01 -0.10-2.6 28th
2019-20NYI1,376 -0.04-0.09-0.02 -0.19-4.8 14th
2018-19NYI1,550 -0.01-0.09-0.02 -0.10-3.1 29th
2017-18NYI1,392 -0.05-0.09-0.02 -0.19-5.4 11th
2016-17NYI1,446 +0.05-0.05-0.02 -0.05-1.4 44th
2015-16NYI1,708 +0.04-0.01-0.01 -0.02-0.7 52nd
2014-15NYI1,394 +0.13+0.07-0.01 +0.15+4.3 88th
2013-14CHI1,370 +0.22-0.07-0.01 +0.16+4.1 80th
2012-13CHI942 +0.03-0.07-0.01 -0.06-1.2 41st
2011-12CHI1,549 -0.00-0.02-0.00 -0.01-0.2 55th
2010-11CHI705 -0.02+0.03-0.00 +0.05+0.6 69th

The table is always the raw single-season record — the ledger the 3-season line smooths. TOI is 5v5 minutes. GAA (goals) is the rate × that season's ice time — the season's total value in goals. Percentile is against that season's qualified skaters, single season.

GAA/60 comes from value artifact value__f4dc1877 (accounting layer, docs/player-value.md): single-season xG-RAPM plus the modeled finishing rating over the player's own 5v5 ice time; the 3-season view is the trailing ice-time-weighted average of those. It is a separate surface from the box-score xG model badged in the footer.