Speed is the easiest tracking stat to oversell. A receiver hits a gear on television, a number circulates on social media, and suddenly the next prop is treated like a stopwatch contest. Route trees get the same treatment from the other direction: enough labels and diagrams can make a weak model look scientific.
The useful question is narrower. Did a pregame snapshot of speed and route usage add information after opportunity, quarterback, opponent, and the actual prop line were already known? No model run or graded prop ledger is attached, so no threshold, price move, hit rate, or model lift is claimed. If the tracking row, route row, market quote, and settlement cannot be joined under one cutoff, the result is no eligible graded prop sample.
Tracking data is a timestamped feature, not a highlight
Next Gen Stats and tracking-derived releases can describe movement, separation, route depth, and opportunity. Those summaries are useful only when the model knows when they became available. A value calculated after the game cannot be fed back into a pick on that game. A corrected weekly file cannot silently replace the snapshot that existed when the decision was made.
Store the source release, event window, player identity, and available-at time beside every feature row. If the source publishes only after the slate, the feature is eligible for the next slate, not the one that produced it.
Speed needs a football mechanism
Top speed by itself does not tell you whether a receiver will earn a target, run deep, beat the coverage, or catch the ball. Ask what produced the movement. Was it a route, a return, motion, pursuit, or open-field run after a short catch? Was the player healthy? Did the offense create room for the same action repeatedly?
For a prop model, speed usually belongs beside opportunity and role. Route participation, target share, alignment, quarterback depth, protection, and opponent structure explain whether the physical trait can reach the market being priced. Without that mechanism, a speed threshold is just a dramatic filter.
Route trees should describe usage, not declare value
A route label is an observation about assignment. It is not a bet. A receiver can run valuable downfield routes and still see no target. Another can live on short concepts and clear a yardage line through volume. The model needs the distribution of routes, the opportunities attached to them, and the context in which they were run.
There are several defensible encodings. Individual route shares preserve detail but become unstable when the sample is thin. Broader route families trade detail for durability. A distribution summary can describe concentration or variety without pretending every label has an independent effect. Pick the representation before opening the holdout.
The encoding decision belongs in the model card
Document which labels were available, how rare or missing labels were handled, how rolling windows were built, and what happened when a player changed teams or roles. The same raw tracking data can produce very different features. A public model needs enough detail for another analyst to reproduce the transformation.
Join identity before joining signal
Tracking releases, rosters, play-by-play, and sportsbook feeds can identify the same player differently. The join needs a durable player key, season and event context, and an explicit treatment for trades, duplicate names, and late roster corrections. A fuzzy match that assigns the wrong receiver can produce a clean-looking feature with no obvious runtime error.
Make failed joins visible. “Player identity unresolved — exclude and review” is an error value with a cure. Substituting a nearby name or carrying forward another player’s row is silent corruption.
The market line is part of the example
A receiver forecast is not yet a betting result. To grade a prop decision, keep the sportsbook, market, line, price, quote time, and settlement rule. The feature snapshot must predate that quote or match a declared decision window. If the market line is absent, evaluate prediction error separately and stop before calling it a betting edge.
This is where many tracking tutorials go soft. They show a model output and skip the price. The closing-line value guide explains why the number taken and the eventual close must be preserved separately from the final box score.
Build the holdout before tuning the feature
Choose the training window, validation window, and untouched test window before comparing speed bands or route encodings. Do not keep slicing until one subgroup looks impressive. Every extra threshold tested after seeing the answer increases the chance that noise wins the audition.
The holdout should preserve chronology. Train on information that would have been available, score future events, and never let a later roster, tracking correction, or market close leak backward. When the sample is too small to support the declared split, say so.
Coaching and quarterback changes are distribution shifts
A receiver’s role can change even when his physical traits do not. A new coordinator can alter alignment and route families. A quarterback change can alter target depth, timing, and scramble behavior. Injury can reduce participation before it changes the box score. Treat those moments as possible breaks in the data-generating process, not as footnotes.
Keep team and player features separate enough to identify the source of the change. A model that assumes last season’s route distribution is permanent will be most confident exactly when it knows least.
The clean feature card
- Named tracking or route source and release timestamp.
- Durable player and event identity.
- Pregame cutoff and leakage-safe rolling window.
- Documented route encoding and missing-data rule.
- Quarterback, opportunity, opponent, and role context.
- Real prop market, line, price, quote time, and settlement rule.
- Chronological holdout with every eligible decision retained.
Use the Big Data Bowl guide for the broader tracking-data workflow, the usage-signals guide for role context, and Workshop to inspect only the inputs that the current surface actually exposes. Do not infer an unavailable feature from a polished label.
What to watch: the first chronological holdout whose tracking release, route encoding, real prop quote, and settlement all share the declared cutoff. Only that joined sample can earn the feature a place.
Provenance tier: schema and validation methodology. No prop performance statistic, synthetic sportsbook price, or model-lift claim is published.
Model calibration from graded predictions
Calibration points render only when a verified source binds prediction probabilities to settled outcomes for the same observations.
NFL ATS cover-margin distribution
Bars count completed NFL schedule rows by closing-spread cover margin using the repository canonical home-margin grading convention.




