Skip to content

Data

NHL historical odds and closing lines

Moneyline, puck line and total for NHL games back to 2020-21, opening and closing, by sportsbook, with 60+ books including Pinnacle since 2025-26. REST or MCP.

PuckAPI serves historical NHL betting odds: moneyline, puck line and total for every regular-season and playoff game since 2021-22, and most of 2020-21, with an opening and a closing price per sportsbook. From 2025-26 that is more than 60 books, Pinnacle and the exchanges included.

It is built for backtesting. Pull a whole season of closing lines in one call, line them up against your own projections, and measure closing line value, which is the only honest scoreboard for a betting model. The table below is read from the database, so it is what you will actually get.

Coverage by season

Counted from the database when this page was built: finished regular-season and playoff games.

SeasonGamesCovered
2026-2743100%
2025-261,39498%
2024-251,398100%
2023-241,400100%
2022-231,400100%
2021-221,401100%
2020-2195293%
2019-201,21210%

How to get it

get_odds, 10 credits a call. A full 2025-26 season is 3 calls and 13,710 credits, which fits in one month of Pro ($49/mo).

curl -X POST https://mcp.puckapi.com/v1/get_odds \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_API_KEY" \
  -d '{
  "season": "2025-26",
  "team": "BUF"
}'

What comes back

game_idGame ID
home_teamHome team abbreviation
away_teamAway team abbreviation
odds[].bookmakerBookmaker name
odds[].snapshotTypeopening or closing
odds[].mlHomeHome moneyline
odds[].mlAwayAway moneyline
odds[].mlHomeProbImplied home win probability
odds[].mlAwayProbImplied away win probability
odds[].spreadHomeHome puck line
odds[].spreadHomeOddsHome spread price
odds[].spreadAwayAway puck line
odds[].spreadAwayOddsAway spread price
odds[].totalOver/under total

Every field and a real response: get_odds docs.

Questions

How far back do the NHL odds go?

Every regular-season and playoff game from 2021-22 on, and about 93% of 2020-21. 2019-20 has the playoffs only. The table on this page is the live coverage by season.

Which sportsbooks are included?

DraftKings, FanDuel and BetMGM for every season held, ESPN BET from 2023-24, and from 2025-26 more than 60 books, including Pinnacle, Bovada, Betfair and the other exchanges. Each game carries an opening and a closing snapshot per book, and you can filter to one.

How do I get a whole season?

Call get_odds with a season, optionally with a team, and every closing line comes back with the final scores in one call, 100 games a page (up to 500). It costs 10 credits per game returned, the same as asking one game at a time: a full season is about 13,700 credits, inside one month of the Pro plan. Add estimate_only to see the price first for free.

Can I use it from Claude or ChatGPT?

Yes. PuckAPI is an MCP server as well as a REST API: add one URL to Claude, Cursor or any MCP client and ask for the closing lines in plain English.

Is it free?

Every account starts with 500 free credits and no card. Plans start at $19 a month for 10,000 credits.

What it will not do

  • Opening and closing prices only for past seasons. Hourly line movement is recorded from September 2026 on.
  • Before 2025-26, three or four US books only. Game lines only: no player props, no futures.

Works with

Start with 500 free credits

No card. REST or MCP.