Loading
Loading
Loading
Loading
Player / WR
Regular season production, 2017 through 2025.
Altitude is earned yards: every target priced at the league rate for its depth, with nothing awarded for the catch, shown as the historical percentile of every qualifying receiver game since 2016. It grades the opportunity a receiver earned, not what the offense converted. The band is the claim; differences between adjacent bands are often noise.
W2
24
Turbulence
W3
51
Level
W4
39
Turbulence
W5
87
Cruising
W6
87
Cruising
W7
15
Turbulence
W8
48
Level
W9
22
Turbulence
W10
8
Grounded
W13
13
Turbulence
W15
32
Turbulence
W16
53
Level
W18
6
Grounded
Season mean Altitude 37 across 13 qualifying games. Earned 32 yards a game; delivered 40.
Separation describes how a receiver wins, not how much he will produce; yards after catch over expected is the one repeatable open-field skill here.
Separation
Headline2.43 yd
WR/TE median 2.93 yd
Track spans the middle 90% of 210 qualified seasons; the notch is the median.
Cushion
6.42 yd
WR/TE median 6.05 yd
Track spans the middle 90% of 210 qualified seasons; the notch is the median.
YAC over expected
+2.89 yd
WR/TE median +0.29 yd
Track spans the middle 90% of 210 qualified seasons; the notch is the median.
A season of drops is mostly luck (year over year .15); never read drop rate as skill. YAC per reception is the strongest repeatable signal here.
Depth of target
11.0 yd
WR/TE median 8.0 yd
Track spans the middle 90% of 204 qualified seasons; the notch is the median.
YAC per reception
Headline4.50 yd
WR/TE median 4.60 yd
Track spans the middle 90% of 204 qualified seasons; the notch is the median.
Broken tackles
0.03/rec
WR/TE median 0.05/rec
Track spans the middle 90% of 204 qualified seasons; the notch is the median.
2025 / WR/TE
Season splits from pre-aggregated charting views. Missing datasets stay hidden.
Against every qualifying WR and TE season in 2025. Metrics below their sample minimum say so instead of pretending.
EPA per target
77thpercentile
107 qualifying seasons
Receiving yards
37thpercentile
107 qualifying seasons
Yards after catch
29thpercentile
107 qualifying seasons
Regular season only. Column definitions live in the glossary and at /explore.
| Season | Team | G | Targets | Receptions | Receiving yards | Rec TD | YAC | Rec EPA | EPA per target |
|---|---|---|---|---|---|---|---|---|---|
| 2025 | SF | 14 | 53 | 37 | 551 | 0 | 165 | 20.55 | 0.39 |
| 2024 | NE | 12 | 38 | 28 | 305 | 1 | 94 |
Data refreshed 1 day ago. Built on data from the nflverse project.
Air-yards share
28%
WR/TE median 26%
Track spans the middle 90% of 210 qualified seasons; the notch is the median.
Separation by season
2017
2.60 yd
2018
2.77 yd
2019
2.44 yd
2020
2.65 yd
2021
3.02 yd
2022
3.10 yd
2023
2.87 yd
2024
2.19 yd
2025
2.43 yd
Gap decomposition
Delivered production ran +8.1 yd/wk against earned opportunity this season. After-catch skill (xYAC +2.89/rec) is the persistent, portable slice of that gap; the rest tracks the offense around him, not the player.
League tracking aggregates; NFL-qualified weeks only.
Drop rate
Context0.1%
WR/TE median 0.0%
Track spans the middle 90% of 204 qualified seasons; the notch is the median.
YAC per reception by season
2018
3.50 yd
2019
4.10 yd
2020
4.50 yd
2021
7.00 yd
2022
4.10 yd
2023
5.50 yd
2024
3.40 yd
2025
4.50 yd
PFR advanced charting, 2018 onward; qualified seasons only.
| 8.13 |
| 0.21 |
| 2023 | NE | 8 | 55 | 37 | 406 | 4 | 203 | -9.54 | -0.17 |
| 2022 | NE | 16 | 48 | 35 | 434 | 1 | 145 | 13.38 | 0.28 |
| 2021 | NE | 17 | 70 | 55 | 800 | 5 | 385 | 42.38 | 0.61 |
| 2020 | SF | 15 | 74 | 49 | 667 | 2 | 219 | 30.14 | 0.41 |
| 2019 | SF | 16 | 44 | 30 | 358 | 5 | 122 | 24.21 | 0.55 |
| 2018 | SF | 16 | 67 | 42 | 487 | 4 | 147 | 6.49 | 0.10 |
| 2017 | SF | 10 | 34 | 16 | 257 | 0 | 114 | 7.81 | 0.23 |