NFL Line Lab
Loading…

This week's games

Loading scores…

How to read this

Long shotunder 35%
Unlikely35–45%
Toss-up45–55%
Likely55–65%
Very likely65%+

Color shows how likely each bet is to win, based on the betting market with the sportsbooks' cut removed. Likely bets pay less and long shots pay more, so a green bet isn't automatically a smart bet. Great price marks a book paying more than the bet is worth. "$100 wins $91" means a $100 bet pays $91 profit if it hits.

Great prices this week

Bets where one sportsbook is paying more than the bet is worth. Color still shows how likely it is.

Player props

Tap a game to see its player props. Percentages are how likely each side is to hit. "Signal" means our projection and the market together beat the best available price by 3%+.

Your parlay

Add legs

Live record

Every pick is frozen Thursday morning and graded automatically. CLV = how much better your number was than the closing line — the best early sign of real skill, since results take hundreds of bets to separate from luck.

Picks

By season (out of sample)

How it works

Data. nflverse play-by-play (every snap since 2012), schedules with closing lines since 1999, weekly player stats and injury reports. Live lines and props from The Odds API across US sportsbooks.

Team model. Opponent-adjusted offense and defense EPA per play and points, weighted toward recent games and carried across seasons; the projected starting QB's own EPA; QB changes, rest, division games, roof, wind and cold. Two ridge regressions — one for margin, one for total — retrained every week on 14 seasons, with recent seasons weighted more.

Honest read. Tested season by season on games it never saw, the model is less accurate than the closing line and its picks against the spread land around 48–50%. Closing lines already contain everything public data can tell you. Model leans are shown as context and tracked live, but the tool's edge is meant to come from best-price shopping, early-number CLV and softer prop markets.

Schedule. Thursday 8am CT: retrain, pull lines and props, freeze picks. Sunday 10am CT: refresh game lines. Tuesday: grade results and refresh the backtest.

My bets

Saved in this browser only.