Refresher: what CLV is, and why it matters
Closing Line Value measures whether the price you took beat the price the market settled at. If you took LAL +3 at −105, and the line closed LAL +3 at −115, you took a better number than the close. That's positive CLV.
The reason this matters more than your win rate: variance is enormous. You can lose six straight bets that were all +EV at the time you took them and still be a winning bettor. The closing line is the market's best estimate of true probability after all the information is in. If you reliably beat it, you have edge before the result lands.
CLV is the leading indicator. PNL is the lagging one. Long-term they converge, but CLV converges faster and tells you whether your process is sound, not just whether the variance gods were kind.
Sportsbook CLV: priced in American odds
The classic sportsbook formula:
CLV% = (decimal_taken / decimal_fair_close - 1) * 100Where decimal_fair_close is the closing line de-vigged. So if you took +120 (decimal 2.20) and the line closed at +110 (decimal 2.10) at a sharp book after you strip the vig, your CLV is (2.20 / 2.10 − 1) × 100 ≈ +4.76%. You bought a price the market would later mark down by ~4.76%.
This works because sportsbook lines are quoted in American odds, which translate cleanly to decimal, which compares as a ratio. The math expects vig on both sides and assumes a devig step on the closing line.
Exchange CLV: priced in probabilities
On Polymarket, Kalshi, or Betfair Exchange you don't take −110. You take a token (or back/lay price) at 0.524. The math is structurally similar but expressed in probabilities:
Edge = (sharp_fair_close - your_fill_price) / your_fill_price
Positive = your fill was below the closing fair = you beat the close.
Negative = your fill was above the closing fair = you lost CLV.Suppose you took the YES token on Thunder NBA championship at 0.39 on Polymarket. By close, the CLV.gg sharp consensus across Pinnacle, Betfair Exchange, ProphetX, and the rest of the sharp pool is 0.42. Your CLV is (0.42 − 0.39) / 0.39 ≈ +7.69%. The probability the market converged on was higher than your buy price by ~7.69%, strong positive CLV.
The formula uses the sharp consensus as the fair, not the Polymarket close. This is critical because an exchange's own close can lag sharp prices on less-liquid markets, or move with sentiment in ways that don't reflect new information. Sharp consensus is what you measure against, that's the closest thing to a true probability we have access to.
Why sportsbook CLV tools don't translate cleanly
Three structural problems if you try to use a sportsbook CLV tracker for exchange fills:
- No vig to devig. The tool wants to strip the overround out of your fill price. There's nothing to strip. The result is either no-op or wrong.
- American-odds conversion is lossy. Exchange prices are continuous in
(0, 1). American odds are integers. Converting0.524to American (−110) and back loses precision in a way that compounds over thousands of bets. - Fee handling is different. Sportsbook tools assume vig is the only fee. Exchanges have a separate, explicit taker fee. Your CLV math has to subtract the fee to know what cleared.
The CLV.gg engine handles all three natively. Exchange prices are stored as probabilities. The sharp consensus is computed by per-book devigging sportsbook lines and weighted-averaging across the sharp pool. Edge math is bettor-perspective, fee-adjusted.
What good CLV looks like
For sportsbooks, sustained CLV in the +1 to +3% range is the sweet spot for serious winning bettors. Top-tier syndicates beat that but it's rare. On exchanges, sustained CLV figures are similar, though the variance can be wider because liquidity is thinner on long-tail markets.
If your sustained CLV is positive but your PNL is negative over hundreds of bets, you're unlucky and the math says you'll convert eventually. If your sustained CLV is negative but your PNL is positive, you're running hot. Bank the lessons but expect regression.
Tracking CLV in practice
You need three data points per bet:
- Your fill price (the probability you bought at, plus the side)
- The fair price at fill time (sharp consensus)
- The fair price at close (sharp consensus right before market resolution)
The first you record yourself. The second and third are the value of having a real-time sharp consensus engine. The CLV.gg edge calculator does the math for one bet at a time, and the live app grades it for every bet you log.
The takeaway
CLV is the right metric, but the implementation has to match the venue. On exchanges, you measure your fill price against the sharp sportsbook consensus, use the bettor-perspective edge formula (fair − price) / price, and subtract taker fees to get the net. Track it across hundreds of bets and you'll know, long before PNL tells you, whether your process has edge.