STL Joel Hofer
G · 2025-26 · regular season · 46 GP · 2,119 min 5v5 TOI
On-ice xG shot map
How to read this map
One rink, both ends while Joel Hofer 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.
The page opens at 5v5; empty-net attempts are excluded throughout. The league-spread histograms and the xGF% percentile rank against the other goalies over the display floor at the selected strength — a non-strength filter (rush, period, …) moves the player's markers but keeps that strength's spread as the backdrop. 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.
Rolling on-ice xGF%
Strength splits
On-ice rates are per 60 minutes at that strength (real time-on-ice), own perspective — a skater's PP row is their team's power play while they are out there.
| Strength | TOI/gm | xGF | xGA | xGF% | xGF/60 | xGA/60 | GF | GA |
|---|---|---|---|---|---|---|---|---|
| 5v5 | 46.1 | 82.8 | 86.0 | 49.0% | 2.34 | 2.43 | 92 | 82 |
| Power play | 4.0 | 19.6 | 3.2 | 85.9% | 6.44 | 1.06 | 18 | 3 |
| Penalty kill | 5.3 | 2.8 | 32.3 | 8.0% | 0.68 | 7.88 | 3 | 26 |
Modeled saving
The decontaminated saving rating from the joint shooter/goalie fit: Joel Hofer's per-shot logit margin suppressing goals on attempts at their net, multi-season, time-decayed, positive = good — +0.06 (87th percentile, 6,259 shots informing it). Per-shot quality only: it says nothing about how many attempts a player generates or faces.
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.
Ratings come from joint__baseline_xg__bbd50047
(as of 2026-06-14).
Both are separate surfaces from the box-score xG model badged in the footer.