New to these reports? Start here
- Dotted-underlined words have a plain-English definition — hover or tap them. Every term is also on the glossary page.
- "Null" means we found nothing, not that something broke. Most reports here are negative results, on purpose — knowing an idea doesn't work is the point.
- Two questions get asked separately. First, is the effect real? Second, is it already priced into the betting odds? An effect can be completely real and still useless to bet on.
- A "calibration" row is a self-check. It runs the same method on something already known to be true. If that fails, the whole report is unreliable — so it's reported alongside the findings.
- If a confidence interval includes zero, the real effect might be nothing at all, so no claim gets made.
Betting late beats betting early — ~+0.9pp CLV, NCAAB moneylines
2026-08-28. The pipeline alerts whenever it finds an edge, at any distance from kickoff, and nothing has ever checked whether that distance matters.
Result
NCAAB moneylines, alerts fired inside 1 hour of tip vs 1–12 hours out:
| n | mean CLVclosing line valueWhether you got a better price than the market settled at. Widely used as a faster signal of skill than profit, which takes ages to measure. | |
|---|---|---|
| < 1h to tip | 122 | +0.363% |
| 1–12h out | 404 | −0.561% |
| difference | +0.924pp, t = +4.29 |
Game-clustered bootstrapbootstrapRe-running a calculation on thousands of resampled versions of the data to see how much the answer wobbles. The spread of those answers becomes the confidence interval. CI on the difference: [+0.457, +1.391], excludes zero. Clustering matters — 526 alerts spread over 377 games are not 526 independent observations.
For scale: overall h2h CLV across the pipeline is about −0.25%, so a 0.9pp swing is the difference between losing slowly and roughly breaking even.
Two confounds ruled out
Sport mix. The raw all-sport version of this looked like a U-shape, but the 12–24h bucket is 63% NBA while the 0–1h bucket is 90% NCAAB — the "pattern" was partly a sport mix. Everything above is NCAAB only, so it cannot be that.
Book mix. Book composition is near-identical across the two buckets (BetMGM 40%/37%, FanDuel 39%/36%, DraftKings 20%/27%), and the effect survives within every book:
| book | <1h | 1–12h | diff |
|---|---|---|---|
| betmgm | +0.760% | −0.352% | +1.113pp |
| fanduel | +0.089% | −0.589% | +0.678pp |
| draftkings | +0.110% | −0.811% | +0.922pp |
How to read it honestly
The robust half is that early alerts are clearly negative (−0.561%, CI excludes zero). The "late is positive" half is weaker: +0.363% with a CI that only just clears zero. The safe statement is late is roughly break-even, early costs you about half a point, not late is a profitable edge.
⚠ This is post-hoc. The bucket grid was explored first and the <1h vs 1–12h
split chosen after seeing the shape. The t-statistic does not price that
selection. This session has already produced two reminders of what that is worth
— the stable filter (a 13-day slice that siblings then contradicted) and the
k=4 teaser correlationcorrelationHow closely two things move together, from -1 (opposite) through 0 (unrelated) to +1 (in lockstep). It does not by itself mean one causes the other. (decisive until the bootstrap was clustered).
Mechanism is unknown. Two candidates, untested: late lines are sharper, so an edge that still exists near tip is more likely real; or a late bet simply has less time to be moved against. They imply different things and this data cannot separate them.
Verdict conditions, set now
NCAAB restarts in November. Judge on alerts created after 2026-11-01:
- Act on it — suppress or delay sub-12h NCAAB alerts — if the <1h vs 1–12h gap is ≥ +0.5pp with a game-clustered CI excluding zero at n ≥ 250 per side.
- Drop it if the gap is < +0.25pp or the CI spans zero at that n.
- Do not judge before n = 250 per side.
Scope
NCAAB h2h only — the only sport with enough alerts across the whole pre-game window. NBA has 116 alerts at 12–24h but only 5 inside an hour; MLB, NHL and tennis are too thin to bucket. Whether this generalises is untested, and the mechanism candidates above would generalise differently.