Results Methodology
How every number on the results page is produced. Nothing here is hand-entered.
1. Fair odds
For each market we take prices from sharp sources — Pinnacle, Betfair Exchange, Matchbook, Kalshi, Polymarket and others — and remove the bookmaker margin ("vig") with four standard methods (multiplicative, additive, power and Shin). We use the least favorable of the four for every outcome, then average the sources by weight. A sportsbook price is never compared against a fair line it helped set: if the book being bet is itself a source, it is removed and the line is re-priced without it.
2. Guards against fake edges
- At least two units of sharp weight are required (Pinnacle alone qualifies; one thin exchange does not).
- Sharp quotes more than 15 minutes older than the newest quote on the line are ignored.
- If the sharp line disagrees with the median of US sportsbooks by more than 4 points and Pinnacle isn't in it, the line is skipped; smaller disagreements are flagged "off-market."
- In-game prices must be under 30 seconds old.
3. What counts as an official alert
An edge enters the official record only if it is pre-game, starts within 48 hours, has an edge of at least 2% and a confidence score of at least 60, and isn't flagged off-market or "verify price" (over 10%). One alert per bet: if several books offer the same price, only the best one is counted, so a single bet is never counted twice. Everything else the engine finds is tracked separately as "engine" data.
4. Locked at creation
The moment an edge is found it is written to an append-only ledger. Each entry's SHA-256 hash covers the previous entry's hash, its sequence number, time, type, alert ID and full details. An alert's public ID is the first 12 characters of its own hash. Changing, inserting or deleting any entry breaks every hash after it. Each night we publish the chain head ("anchor") so anyone can confirm the record wasn't rewritten.
5. Tracked in real time
After an alert we record where the sharp fair line moved at +5, +15 and +60 minutes, when the +EV price disappeared (edge lifetime), and the closing line — the last pre-game sharp price, from 2 hours before to 30 minutes after the scheduled start.
6. Graded automatically
Results come from official final scores. Closing line value (CLV) = closing fair probability × alert price − 1. Profit/loss is shown at a flat 1 unit per alert. Pushes count as zero; a game with no final score after 4 days is marked void. Each result is its own chained entry. Corrections, if ever needed, are new visible entries — never deletions.
7. How to read it
Short-run wins and losses are mostly luck; it takes hundreds of bets for results to mean much. Closing line value is the faster signal of real skill. We show both, plus the win rate the model expected, so you can judge for yourself.
21+. Past results do not predict future results. Gambling problem? Call or text 1-800-GAMBLER.