Methodology
A plain-English look at how the numbers are made, and what we know and don't know about how good they are.
1. We simulate games, then read off players
For each game on the slate we simulate the whole game 10,000 times. Each simulation draws how many plays each team runs, the pass/run mix, efficiency and touchdowns for both offenses together. Each player's targets, carries, yards and touchdowns then come from their share of that team volume.
Because players come from the same simulated game, the real relationships carry through. When a QB has a big day, his receivers usually do too. When one offense scores, the other often has to answer. That correlation matters a lot for DFS stacks and same-game props.
2. Learned from data, with no manual tweaks
- Usage shares, efficiency and dispersion are fitted on past NFL play-by-play data (seasons [2024, 2025] weeks 1-17 + 2026 weeks 1-3). Source: nflverse, CC-BY 4.0.
- Game environment comes from the betting market's spread and total. Injuries and inactives update the roles.
- Nobody hand-edits a player's projection. If a number looks wrong, we fix the model or its inputs, and the fix applies to everyone.
- Everything on this site is our own model's output. We don't blend in or republish other sites' projections.
3. Ranges, not just a number
For every player we publish the median (50th percentile), the p10 floor and the p85/p90 ceiling. For props, the probability is simply the share of simulations on each side of the line. We recalibrate FanDuel point ranges and yardage distributions on past weeks the model did not see, so the ranges come out about as wide as reality.
4. Backtest honesty
Here is what our out-of-sample tests show (parameters fit on 2024-25, tested on 2026 weeks 1-3), including the parts that don't flatter us:
- Point accuracy: our own model's FanDuel-point mean absolute error was about 4.5 points per player on 2026 weeks 1-3. It is not yet more accurate than the best public projections we benchmark against, except at QB.
- Range calibration: 76.5% of outcomes landed inside our 10-90 range, against an 80% target. The ranges are still slightly too narrow.
- Known biases: RB rushing yards still run a few yards high, and anytime-TD and reception probabilities run a little high. We keep fixing these and re-measuring.
- Single props: on two seasons of historical lines from one sportsbook (2021-22), the raw model was less accurate than the book's own prices. An earlier, positive backtest result turned out to come from a data leak: the backtest used information that is only known after the game, such as which QB actually started. With the leak fixed, we tested 1,619 strategy variants, each chosen on 2021 and tested once on 2022 with a correction for multiple testing. No single-prop rule held up. Recalibration closed most of the accuracy gap to the market but never beat it.
- How the props board works: each lean is our simulated median versus the line, in standard deviations of our distribution. Below 0.25 SD, or within 2 points of 50% raw probability, we call it no lean rather than defaulting to a side. A Platt recalibration layer fit on 2021-22 only (p = sigmoid(a + b·logit(raw P))) serves as confirmation. Fit on 2021 and scored on 2022, it cut the Brier score from 0.2675 (raw) to 0.2502, against 0.2495 for the market's no-vig price. We show only validated stats (not anytime TD or pass+rush yards), rows with raw P between 20% and 80%, and two-sided sportsbook main lines. Every row is still logged before lock and graded. We publish the weekly over/under split, and our leans currently tilt under because of skew and volume biases in our own model.
- Season-long ranks come from the same simulations. We haven't published accuracy for those formats yet.
5. Live, pre-lock, graded
Every prop forecast is written to an append-only, hash-chained log before kickoff. We publish a line only when the source allows it (The Odds API, or lines we enter by hand); otherwise the line is hidden, but the forecast is still tracked. Each forecast is graded after the game against the official box score. The Track Record shows every graded pick. Roughly 1,400 to 2,200 graded picks are needed before a win rate tells us much. At 50-100 picks a week, that takes more than one season.
6. What's not modeled yet
- Kickers, plus D/ST distributions (we show the D/ST mean only).
- Fumbles lost and 2-pt conversions in the published distributions.
- A rest-of-season outlook (coming soon).
For entertainment and informational purposes only. Not betting advice. No guarantee of results. 21+. 1-800-GAMBLER.