Most NFL bet logs record what happened — game, bet, result. Causality-tagged logs record why each bet was placed, enabling a second level of analysis: which decision reasons produce positive returns and which are losing habits? The causality tag converts a journal into a diagnostic tool.
A practical causality tag taxonomy
| Tag | Description | Example use |
|---|---|---|
| rlm | Reverse line movement confirmed sharp action | Public 65% on favorite, line moved to dog |
| post-bye | Post-bye rest advantage as primary reason | Team on bye vs opponent on short week |
| weather-under | Weather conditions favor under | Wind 25mph+, cold game |
| key-number | Bet placed to be on or off key number | Bought +3 at -115 vs taking +2.5 |
| injury-value | Opponent key player injury not priced | Star QB downgrade not in line yet |
| model-only | Pure model output, no narrative support | Spreadsheet says -2 vs posted -3.5 |
| divisional-under | Divisional familiarity totals suppression | Second meeting, cold weather |
| public-fade | Fading heavy public side with RLM confirmation | 75%+ public, line opposite |
After 50+ bets tagged by category, filter by each tag and compute average CLV and ROI. This analysis often reveals that two or three tags produce consistent positive CLV (the real edge categories) while others are flat or negative (habits that feel like analysis but produce no edge). Ruthlessly reduce bet volume in the negative and flat categories, increase it in the positive ones.
Post-game causality review
The causality review is a 5-minute weekly discipline: for each bet that graded last week, review whether the tagged reason was validated or invalidated by the result. A tagged "injury-value" bet that won because the injury was not priced is confirmed; the same tag on a bet that lost because the injured player played anyway or was replaced without impact is invalidated. Track validation rate by tag — tags with low validation rates are warning signs of narrative reasoning mistaken for analysis.
Connect the causality review to your CLV tracking: even if the tagged reason won, check whether you got a better price than closing (CLV positive) or a worse price (CLV negative). A bet tagged "injury-value" that won but where you bet after the line adjusted for the injury has no actual CLV — the market caught up before your bet. The CLV check keeps the causality review honest about whether timing and price matched the reasoning. See bet tracking system for the spreadsheet template and CLV for the full closing-value audit method.
What to do with the data after a full season
After a full NFL season, produce three outputs from the tagged log: (1) ROI by causality tag — your profit per unit bet in each category. (2) Average CLV by tag — process quality in each category. (3) Volume by tag — how many bets in each category. Combine them: your highest-priority tags are the ones with both positive ROI and positive CLV over 20+ bets. Secondary tags are those with positive CLV but small sample. Tags with negative CLV regardless of ROI are process problems — they may have won through variance but are not generating real edge. Retire or revise those tags before next season.




