08 — Closing Line Value & Odds Data
TL;DR. Closing Line Value (CLV) — did our number beat the line at kickoff — is the gold-standard measure of betting skill (see Doc 1 §5 and Doc 6). Every pick we flag is logged when it is issued and graded against the close. This page covers how we capture lines and where historical odds can be found.
1. Why CLV, in one paragraph
By kickoff the line has absorbed all information and the week's biggest limits, so the closing line is the most efficient public predictor of a game. If we consistently bet numbers better than the close, we extracted value before the market got sharp — the statistical signature of edge, independent of whether any single bet won. Over small samples, win/loss is noise; CLV is the stable signal, and it reaches significance in tens to hundreds of bets rather than thousands.
To measure it we need two numbers per game: the line when we flagged it and the line at close. One number (what most free datasets give) is not enough.
2. How we capture lines (in season)
- Daily snapshots. Every morning, and around each Sunday game window, we save a timestamped snapshot of the market for the current and next week. The first snapshot of a week serves as the opener. The newest snapshot taken before that game's kickoff serves as the close. Snapshots taken after kickoff are ignored, because some sources show live in-game lines at that point. Until a game starts, its close is provisional, and it is left out of every CLV figure.
- Multiple books. With a paid odds feed configured, we also pull several books at once. That gives the best available number for line shopping and a consensus to measure CLV against.
- The pick log. Each flagged pick is written once, at flag time, with the line it carried. After the game we fill in the close, the result and the CLV. The live record is on the NFL Predictions page. The CLV scorecard (average CLV, share of picks that beat the close) comes from our settlement run, and its latest figures are summarised in Doc 7.
- When we flagged. Each pick carries its flag time in UTC. The scorecard groups CLV by hours before kickoff (under 6, 6–24, 1–3 days, 3–7 days, a week or more). For picks issued after a snapshot existed, it also shows the CLV the opener would have earned. This tells us whether issuing picks earlier would have caught better numbers. It is a measurement, not yet a rule.
3. Historical open/close data
Free sources give a single (closing) line per game, which is enough for backtests of accuracy but not for historical CLV:
| Source | Has | Notes |
|---|---|---|
| aussportsbetting.com | Open & close line + total, results, ~2006→present | Best free option; blocks scripts, so download the NFL .xlsx in a browser. We have an importer that normalizes it |
| sportsbookreviewsonline.com | Historically open+close 2007–2024 | Currently redirects to an affiliate page |
| nflverse / Kaggle | Single closing line only | Fine for accuracy backtests, not for CLV |
Paid feeds with historical snapshots (The Odds API, SportsGameOdds, Goalserve, SportsDataIO) can reconstruct openers and closes automatically. Pinnacle's own API has been closed to the public since July 2025, so its sharp close is available only through aggregators.
4. Conventions worth knowing
- A spread is quoted from the home team's side: −3.5 means the home team is favoured by 3.5. CLV in points is positive when the close moved toward the side we took.
- A pick with no final score is pending, never a loss.
- CLV is only meaningful against an efficient close. For thin markets such as player props, we measure against a de-vigged multi-book consensus instead.
← Back to the series overview · see also Doc 6 — Betting Strategy & Bankroll.