Real-time NHL data — 32 teams, every shift tracked

NHL data API for live scores, shifts & advanced metrics

Complete NHL coverage: live scores, full play-by-play, shift charts, advanced analytics including Corsi, Fenwick, xG, and PDO, line combinations, special teams data, and historical archive back to 1917-18.

32 teams covered
1,312 regular-season games
Corsi/Fenwick/xG advanced metrics
<500ms live latency
# Get NHL live scores
curl "https://api.sportapi.io/v1/nhl/scores/live" \
  -H "Authorization: Bearer $API_KEY"

{
  "games": [{
    "game_id": "2024020412", "status": "in_progress",
    "period": 3, "clock": "14:02",
    "home": {"team": "EDM", "score": 4, "shots": 28},
    "away": {"team": "TOR", "score": 2, "shots": 24},
    "last_event": "C. McDavid even-strength goal, assist L. Draisaitl"
  }]
}
32
NHL teams
750+
Active players tracked
107 yrs
Historical data
5v5 / 5v4
Strength splits

Every NHL data point, one API

Live scores, shift-level data, full play-by-play, advanced analytics calculated server-side, team line combinations, special teams splits, standings, and schedule.

GET
/v1/nhl/scores/live
Live Scores
Real-time scores for every active NHL game with period, clock, score, shots on goal, and last event description.
GET
/v1/nhl/games/{id}/shifts
Shift Charts
Every shift for every skater: time on ice, on-ice teammates, strength state, and per-shift goals/shots-for delta.
GET
/v1/nhl/games/{id}/play-by-play
Play-by-Play
Every shot, goal, hit, faceoff, penalty, and giveaway with X/Y coordinates, strength state, and players on ice.
GET
/v1/nhl/players/{id}/stats
Player Stats
Career splits, season totals, strength splits (5v5, PP, PK), and advanced metrics (Corsi, Fenwick, xG, PDO, RAPM).
GET
/v1/nhl/advanced
Advanced Metrics
Team-level Corsi / Fenwick / xG / high-danger chances aggregated per game or season. Filter by strength state.
GET
/v1/nhl/standings
Standings
Division, conference, league, and Wild Card standings with points percentage, regulation wins, and games in hand.
GET
/v1/nhl/teams/{id}/lines
Line Combinations
Forward lines and defense pairs with games-played-together, GF/GA, and Corsi-for-percentage.
GET
/v1/nhl/schedule
Schedule
Full season schedule with venue, broadcast info, timezone-aware puck drop, and game status.

NHL API questions

What does the NHL data API cover?

All 32 NHL teams, every regular-season, playoff, and All-Star game. Live scores, shift charts, full play-by-play, advanced analytics, line combinations, special teams splits, and historical archive back to the 1917-18 NHL inaugural season.

How accurate are your advanced metrics?

Corsi, Fenwick, and xG models are calculated server-side from the official play-by-play stream. xG model is updated yearly with a published methodology. Models can be re-trained on request for enterprise customers.

Do you cover the AHL and other minor leagues?

AHL coverage is available on enterprise tier. ECHL, KHL (Russia), SHL (Sweden), Liiga (Finland), and IIHF World Championships available on request. International tournaments included by default with NHL subscription.

What's the difference vs Natural Stat Trick / Evolving Hockey?

Those are excellent free-to-use sites built on the public NHL API; their data refreshes after games complete. Our API delivers in real time with a guaranteed SLA, includes pre-game projections, and bundles odds when licensed.

How real-time are shift updates?

Shifts are published within 1–2 seconds of the bench change in real-time tier. Standard tier shifts are batched and published at the end of each period. Real-time tier is required for live in-game analytics.

Can I get NHL odds and props?

Yes, on the appropriately licensed tier. Moneyline, puckline, totals, player props (shots on goal, points, anytime goal scorer), and futures from major US and international sportsbooks.

Build with NHL data today

14-day free trial. No credit card required for evaluation. We'll provision your API key within one business day.

Request NHL API AccessView Documentation