NHL goalie expected goals by strength and shot danger, 2014-2025 (Edge)
Season-aggregate goalie expected goals against, broken out by ON-ICE STRENGTH STATE and by SHOT DANGER (low, medium, high), for twelve complete seasons, 2014 through 2025. Also carries flurry-adjusted expected goals, and expected versus actual rebounds and freezes.
NOT a replacement for GET /v1/nhl/goalies/gsax, which stays free and unchanged. That route is our own current-season model and gives one GSAx number per goalie. This one decomposes the same idea across strength states and danger zones, over a decade our own model does not reach, so the two answer different questions. goals_saved_above_expected appears in both and the two numbers are independent estimates; they will not agree exactly, and comparing them is a legitimate use.
A FROZEN ARCHIVE, as above: no writer, data.as_of carries the real data date for the slice served, and the 2026-27 season is absent and will stay absent. Ordered by goals saved above expected, descending.
goalie.id is null where the athlete is not bridged; goalie.name is always present, and unbridged rows are returned rather than dropped.
Requires the Edge plan or higher.
Request
- Base URL: https://api.bigballsdata.com
- URL: https://api.bigballsdata.com/v1/nhl/goalies/xg-splits
- Auth: one of:
- API key in header x-api-key
- HTTP bearer
Query parameters
Season LABEL: the year the season starts. 2014 to 2025 are present; later seasons are not and will not be added. Defaults to the newest season held for the requested game_type.
On-ice strength state. 5on4 is the player's team on the power play, 4on5 short-handed, other every remaining state.
Team abbreviation, case-insensitive (e.g. EDM).
Response
ok. { data, meta } with a route-local cache stamp. data.as_of is the real data date for the slice served, taken from the rows themselves.
Changes
No recorded changes to this operation across all 3 revisions of this API.