Methodology
No black boxes. Here's exactly what the engine does — and what it refuses to do.
Data sources
Play-by-play and roster data come from nflverse, used under CC-BY-4.0 with attribution (see our footer on every page). Injury information comes from publicly reported team sources. We do not use data sources that prohibit commercial use.
How a comparison is computed
- Score under your rules. Every play is converted to fantasy points using a versioned scoring rule (e.g.
ppr_v1), so PPR, half-PPR, and standard leagues each get correct math. - Baseline first. The starting projection for each player is their average fantasy points over the last four played weeks. Simple, checkable, hard to game.
- Adjust for availability. Reported injuries and role changes adjust the baseline; each adjustment carries a reason code.
- Compare, don't decorate. The engine outputs which player projects higher, the reason codes, and the data each reason came from. The language model only turns computed conclusions into plain English — it never invents numbers.
When data is insufficient, we say so
If a player has too few recent appearances to compare reliably, the result is
insufficient_data — not a confident-sounding guess. A comparison you can't
trust is worse than no comparison.
How we measure ourselves
We judge the engine on three metrics, published with sample sizes and failure cases:
- Projection error (MAE) — how far projected points land from actual points.
- Head-to-head accuracy — when we recommend Player A over Player B, how often does A actually outscore B?
- Decision loss — when we're wrong, how many points did the wrong pick cost?
Rules we hold ourselves to: only data available before the game counts; every pre-game recommendation is stored as an immutable snapshot and never overwritten after results; we compare against a simple recent-average baseline; we publish misses alongside hits. Our public track record starts the day we launch — we don't backfill pretty history.
What we don't do
- No betting advice, no betting lines, no wagering of any kind. For informational purposes only. Not betting advice.
- No invented statistics. Every number on a result traces to a source and a timestamp.
- No "can't-miss" language. Fantasy football has variance; honest tools admit it.