Skip to content
CURRENT
-7 → -6 (+1) over 24 captures ATL @ GB spread -7 → -6 house House backtest last 10: 6–4 · 90-day all-market 55.3% (n=8163) · 20h ago Wire Seahawks plan to have Sam Darnold back at practice Wednesday Wire Cardinals CB Will Johnson (neck) could miss rest of season Wire Rams WR Puka Nacua (hip) inactive for 'MNF' vs. Giants
Access: Anonymous access. Content follows.
how-the-sausage-is-made

NGS Speed and Route Trees as WR Prop Features

Read the price, role, and market first Use Next Gen Stats max speed and BDB route trees as WR prop features. 21+ mph thresholds, route-mix encoding, target-shadow math, and prop-board impact.

8 sections

Shark Snip Editorial

House byline of the Shark Snip analytics desk — numbers sourced from the data pipeline, not vibes.

Key takeaways (from article sections)

  • Tracking data is a timestamped feature, not a highlight
  • Speed needs a football mechanism
  • Route trees should describe usage, not declare value
  • Join identity before joining signal
  • The market line is part of the example
  • Build the holdout before tuning the feature
  • Coaching and quarterback changes are distribution shifts
  • The clean feature card

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.

Frequently asked questions

Can speed alone support a receiver prop?
No. Speed needs opportunity, route assignment, quarterback context, opponent coverage, a contemporaneous prop line, and a pregame timestamp. A fast play after the game cannot be used as a feature for that same game.
How should route-tree data be encoded?
Choose an encoding that matches the available sample and the model, then lock it before the holdout. Route shares, broader route families, and a distribution summary are all defensible; selecting whichever representation looks best after scoring the test set is not.
How do I prevent tracking-data leakage?
Every feature row needs an available-at timestamp and a cutoff earlier than the market decision. Rolling windows must exclude the event being predicted, and late corrections must not overwrite the snapshot used by the original pick.
What should the model report when no prop line is available?
No eligible graded prop sample. A receiver projection without a real market line can be evaluated as a forecast, but it cannot be advertised as a betting record.
What is the honest public record for an ATS-style prop decision?
Publish wins and losses, the hit percentage, the grading window, and the number of decisions, with pushes or voids handled by a declared rule. Do not substitute a financial claim for missing rows.

Build a free model in 60 seconds →

Go →
6m read time
2 players/teams
8 key angles

Angles in this read

  • Target heat Target-share language gets a hotter editorial treatment.
  • Line arrow Spread, total, and price movement sections get directional cues.
  • Prop ladder Player prop sections use a laddered information rhythm.
  • Edge meter Positive expected value is presented as a meter, not a guarantee.
  • Odds tick Micro tick movement reinforces live market and pricing language.
  • Market steam Line movement and public/sharp topics get steam-style emphasis.

This article's context stays anchored to Next Gen Stats and Big Data Bowl and box score, closing line value and model, all of which appear in the post itself.

Names and terms found in this article
Next Gen StatsBig Data Bowlbox scoreclosing line valuemodelpriceroute participation
Share this guide Help another reader make a sharper decision.

Get picks in your inbox

One email, every slate — ranked edges, no touts. Unsubscribe any time.

Start free — pick a sport

Go →

Continue with evidence

Related reading and source status

Related Reads

players.csv in nflverse-data Is a Flat Lookup Table — Shark Snip
Beginner Guides

players.csv in nflverse-data Is a Flat Lookup Table

A public roster file holds one entry per player, no market data. Our own prop board is built the same way, and two real players prove it.

Sep 3, 2026 4 min read
NFL Big Data Bowl for Bettors: From Tracking CSV to Bet Edge thumbnail art
Data

NFL Big Data Bowl for Bettors: From Tracking CSV to Bet Edge

players.csv and games.csv live in nflverse-data's GitHub releases: the exact columns a bettor opens, the id that joins them, and how we use both.

May 15, 2026 4 min read
NCAA Women's Basketball Totals Model: A Browser Recipe thumbnail art
Modeling

NCAA Women's Basketball Totals Model: A Browser Recipe

Build an NCAA WBB totals model in the browser using pace, eFG%, and conference splits — with UConn, Iowa, LSU, and USC worked examples.

May 15, 2026 9 min read

query: loadMergedBlogPostCards + scoreRelated · n = 3

No data

No graded source picks match this article yet

The public.source_accuracy_scores 90-day query returned no rows for this article's inferred sport.