Cross-sport·CLV receipts
Closing-line value is the metric that survives short-term variance. Positive CLV over a meaningful sample is the strongest signal a model has real edge. Every settled pick below, scored against the closing line, downloadable as CSV.
Picks scored
69
of 69 graded
Avg CLV
+1116
bps · mean (noisy at low n)
Median CLV
+811
bps · median · robust read
Positive %
100%
95% CI 95–100% · 69W / 0L
CLV distribution
69 scored picks. Positive bins = model beat the closing number.
<-1000
-1000..-500
-500..-200
-200..0
0
0..200
200..500
500..1000
>1000
| Bin (bps) | Picks |
|---|---|
| <-1000 | 0 |
| -1000..-500 | 0 |
| -500..-200 | 0 |
| -200..0 | 0 |
| 0 | 0 |
| 0..200 | 3 |
| 200..500 | 13 |
| 500..1000 | 26 |
| >1000 | 27 |
Per league
Average CLV across each league's scored picks over the last 30 days.
| League | Picks | Avg CLV | Median | +% |
|---|---|---|---|---|
| mlb | 54 | +895 | +761 | 100% |
| nba | 0 | — | — | — |
| wnba | 15 ·prov | +1908 | +2081 | 100% |
| nhl | 0 | — | — | — |
| nfl | 0 | — | — | — |
Public receipts
Every settled pick · model line · market line · closing line · CLV bps. No filters, no edits. Open file, audit the math yourself.
Methodology
At pick issue time (T-30min before tip), the model writes a row to picks_log with the model's projected probability and the market line + price at that moment.
At T-5min before tip, a cron snapshots the closing line into closing_lines.
When the game settles, a grader computes CLV bps = (model_prob − no_vig_closing_prob) × 10,000. Positive CLV means the model identified the side that the market eventually confirmed by close — a leading indicator of true edge.
Picks that lack a closing line are excluded from CLV math (shown as "—" in tables). Sample sizes below 30 in any cohort should be read with skepticism — CLV is a survival statistic, not a single-game one.
Full methodology + open-source backtest notebooks live at /model/methodology.
We publish this number even when it's negative — that's the point. Get the graded record in your inbox: last night's wins and losses, tonight's slate.