How to read this map
One rink, both ends while Zach Metsa is on the ice: what the team generates on the left, what it concedes on the right. Every attempt is a Gaussian bump of height = its model xG, summed per 60 minutes of ice time (a player's exposure is time, not games). The controls switch the surface (xG heatmap ↔ vs league, the league baseline per team-hour at the same strength) and the markers: × goal · • on net · ◦ missed · small • blocked — and own shots narrows the left end's markers to attempts Zach Metsa took.
The page opens at 5v5; empty-net attempts are excluded throughout. On-ice membership comes from the shift charts; attempts without usable shift coverage are absent from both ends. Blocked-shot membership cannot be cross-checked against the play-by-play, so treat blocked-marker detail as softer than the rest.
Observed production
5v5 · on-icePercentiles rank against the other defensemen over the display floor at the selected strength — a non-strength filter (rush, period, …) moves the bars but keeps that strength's spread as the backdrop.
Rolling on-ice xGF%
5v5 · on-iceModel estimates
🔒 full season · not filteredRanked against defensemen; the band behind each bar is that cohort's spread (p5–p95, middle half brighter, dashed median), so where a bar lands against its band is the rank — the ordinal beside it makes that exact. The per-shot rating is quality only: it says nothing about how many attempts a player generates or faces, which is what the attempts sub-row is for.
Usage & context
descriptive · not modeledA skater absent from the fit counts as exactly cohort average (0) in QoC/QoT — the same claim ridge shrinkage makes. Penalty rates are descriptive only: taken-rate includes defensively correct penalties, and neither side is opponent- or deployment-adjusted. Nothing here is priced in goals.
Full table · all numbers
| Family | Stat | Value (current slice) |
|---|---|---|
| Observed ◆ filtered | Goals on-ice for / against | 24 / 8 |
| Observed ◆ filtered | xG on-ice for / against | 17.3 / 16.2 |
| Observed ◆ filtered | Shots on-ice for / against | 184 / 205 |
| Observed ◆ filtered | Attempts on-ice for / against | 380 / 441 |
| Observed ◆ filtered | xGF% | 51.7% |
| Modeled 🔒 season | Shooting — finishing · goals/60 | +0.01 59th pctl |
| Modeled 🔒 season | ↳ attempts (own attempts) | 58 1st pctl |
| Modeled 🔒 season | ↳ shooting talent (per-shot logit) | +0.08 84th pctl |
| Modeled 🔒 season | Offense — RAPM · team xGF/60 impact | -0.13 24th pctl |
| Modeled 🔒 season | Defense — RAPM · team xGA/60 impact (sign-flipped) | +0.08 76th pctl |
| Modeled 🔒 season | GAA/60 | -0.04 50th pctl |
| Context | Time on ice — all situations · min per game | 10:57 (1st pctl) |
| Context | Penalties taken — minor penalties / 60 | 0.49 (29th pctl) |
| Context | Penalties drawn — minor penalties / 60 | 0.49 (65th pctl) |
| Context | Zone starts — OZS% · O-zone start share | 47% (36th pctl) |
| Context | Score state — TOI by game state | trail 19%, tied 37%, lead 44% |
| Context | Competition (QoC) — opponents' net xG-RAPM | -0.011 (13th pctl) |
| Context | Teammates (QoT) — teammates' net xG-RAPM | +0.004 (54th pctl) |
| Context | On-the-fly — share of 5v5 TOI | 65% |
Observed values reflect the active rink filters; modeled values are fixed at their full-season fit.
On-ice numbers pair the regular-season shot set with shift-chart membership;
skaters and goalies under the display floors are fit but not shown. Modeled rows come from the
value artifact keyed to RAPM fit rapm__c5b9b663 on flat__joint_structure_xg__4f64c88b
(the joint-xg structural baseline), with ratings from
joint__baseline_xg__42ccb89b (as of 2026-06-14) —
separate surfaces from the box-score xG model badged in the footer.