What the NBA season taught the model.
The season is over. The model fired its signals, the market closed its lines, and the closing line audit ran on every read. The honest exercise now is to look at what worked, what did not, and what the model has to update for next season.
This is not a victory lap. The brand register does not allow one and the data would not support one anyway. This is the same exercise we run every offseason. What did we learn that we did not know in October.
What the closing line audit shows.
Across the regular season and playoffs, the model beat the closing line on the majority of published signals. The exact figure lives on the public ledger and updates in real time, so any reader can verify it. The number itself is not the interesting part. The shape of the number is.
Signals fired in the first six weeks of the regular season produced the largest closing line value of the year. Signals fired in the back third of the regular season produced the smallest. Playoff signals landed in between. This shape is consistent with what we have seen in prior seasons and with the central thesis of the late-season MLB piece from earlier this summer. As the market learns, the edges compress. The model has to find them in new places.
Where the model was strongest.
Three categories of edge held up across the entire season.
Rest and travel asymmetries.
Games where one team carried meaningful fatigue or travel disadvantage and the market underpriced it produced the most consistent CLV across the season. This is a structural edge that the market knows about and underprices anyway, and we expect it to persist next year.
Mid-game-number totals.
Totals in the 215 to 225 range produced more model signal than spreads in any range. The reason is the same one the WNBA pace piece described. Totals are a pace bet first and a shooting bet second, and pace is more predictable than outcome.
Conference Finals games two through four.
The middle games of the Conference Finals were the highest-edge segment of the postseason. This matches what the playoff series-pricing piece described in April. The market spent two games figuring out what version of each team it was pricing, and the model was already pricing the adjusted version.
Where the model was weakest.
Two categories produced the weakest CLV.
Heavy favorites in nationally televised games.
Games where the favorite was -10 or larger and the broadcast was national produced near-zero CLV. The market was efficient on these. Sharp money, public money, and book risk management all converged on the same number. The model has no edge here, and we will further tighten the threshold next season to avoid publishing signals that fight an efficient market.
Back-to-back unders.
The model fired more back-to-back-fatigue under signals than the data supported. The market does price fatigue, and on under bets the market's pricing was closer to right than the model's projection. We are recalibrating the fatigue input to weight more heavily toward the side, not the total, next season.
What changes for next season.
Three concrete updates.
First, the discipline filter on national-broadcast favorites tightens further. If the model cannot produce a real edge in a market that everyone is watching, it should not be publishing signals into that market. Fewer signals on prime-time games next year.
Second, the back-to-back fatigue input gets re-weighted toward the spread and away from the total. The structural truth about fatigue is correct. The application to totals was wrong.
Third, the middle-games-of-a-series effect gets a dedicated input in the playoff model rather than being inferred from general series context. It is consistent enough across seasons to deserve its own variable.
What does not change.
The architecture, the closing line audit, the public ledger, the discipline filter framework, the pass-day framing. All of it stays. The brand thesis is unchanged: CLV is the institutional scoreboard. A losing pick with a CLV beat is brand-positive. A winning pick with CLV missed is brand-suspicious. The season did not teach us anything that changes that.