Loading
Loading
Loading
Loading
Player / QB
Regular season production, 2016 through 2026.
Altitude is EPA per dropback with the luck taken out: interception plays priced as incompletions, sack-fumbles as clean sacks, shown as the historical percentile of every qualifying QB game since 2016. The band is the claim; differences between adjacent bands are often noise.
W1
40
Level
W2
25
Turbulence
Season mean Altitude 33 across 2 qualifying games. Rushing identity is not graded here; his baseline is 11 rushing yards a game.
Time to throw and aggressiveness are style axes that sit beside the Altitude score, never replace it; CPOE is the tracking-model completion skill.
Time to throw
Headline2.61s
QB median 2.84s
Track spans the middle 90% of 45 qualified seasons; the notch is the median.
Aggressiveness
13%
QB median 15%
Track spans the middle 90% of 45 qualified seasons; the notch is the median.
Air yards to sticks
-0.0 yd
QB median -0.9 yd
Track spans the middle 90% of 45 qualified seasons; the notch is the median.
Accuracy and pressure rates persist year over year (.43 to .48) but add nothing to predicting future clean EPA, so none of them enters the Altitude score; read them as style and environment.
Bad throw rate
Headline19.9%
QB median 15.9%
Track spans the middle 90% of 56 qualified seasons; the notch is the median.
On-target rate
73.9%
QB median 74.0%
Track spans the middle 90% of 56 qualified seasons; the notch is the median.
Pressure rate
23.9%
QB median 21.6%
2026 / QB
Season splits from pre-aggregated charting views. Missing datasets stay hidden.
Against every qualifying QB season in 2026. Metrics below their sample minimum say so instead of pretending.
EPA per dropback
Below the 200 dropbacks minimum in 2026.
CPOE
Below the 150 attempts minimum in 2026.
Yards per attempt
Below the 150 attempts minimum in 2026.
Regular season only. Column definitions live in the glossary and at /explore.
| Season | Team | G | Att | Cmp | Pass yds | TD | INT | EPA per dropback | CPOE | Y/A |
|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | MIN | 2 | 39 | 23 | 276 | 3 | 0 | 0.10 | -7.79 | 7.08 |
| 2025 | MIN | 5 | 169 | 110 | 1216 | 6 |
Data refreshed 2 days ago. Built on data from the nflverse project.
CPOE
-8.0
QB median +0.9
Track spans the middle 90% of 45 qualified seasons; the notch is the median.
Time to throw by season
2016
2.65s
2017
2.72s
2018
2.66s
2019
2.71s
2020
2.91s
2021
2.83s
2022
2.60s
2023
2.26s
2024
2.42s
2025
2.71s
2026
2.61s
League tracking aggregates; NFL-qualified weeks only.
Track spans the middle 90% of 56 qualified seasons; the notch is the median.
Pocket time
2.30s
QB median 2.40s
Track spans the middle 90% of 56 qualified seasons; the notch is the median.
Bad throw rate by season
2018
14.4%
2019
17.8%
2020
21.7%
2021
18.8%
2022
20.0%
2025
19.9%
ESPN QBR, 2025 average
40.5across 5 games
ESPN QBR shown as a benchmark. On identical frames, the Altitude score is steadier game to game (.517 vs .470 split-half).
PFR advanced charting, 2018 onward; qualified seasons only.
| 5 |
| 0.04 |
| 1.11 |
| 7.20 |
| 2024 | KC | 2 | 19 | 12 | 118 | 0 | 0 | -0.29 | -1.19 | 6.21 |
| 2023 | LA | 1 | 24 | 17 | 163 | 2 | 1 | 0.26 | 6.66 | 6.79 |
| 2022 | WAS | 8 | 276 | 172 | 1755 | 11 | 9 | -0.11 | -3.75 | 6.36 |
| 2021 | IND | 17 | 516 | 322 | 3563 | 27 | 7 | 0.03 | -2.12 | 6.91 |
| 2020 | PHI | 12 | 437 | 251 | 2620 | 16 | 15 | -0.13 | -3.49 | 6.00 |
| 2019 | PHI | 16 | 607 | 388 | 4039 | 27 | 7 | 0.07 | -0.64 | 6.65 |
| 2018 | PHI | 11 | 401 | 279 | 3074 | 21 | 7 | 0.09 | 5.10 | 7.67 |
| 2017 | PHI | 13 | 440 | 265 | 3296 | 33 | 7 | 0.22 | 0.41 | 7.49 |
| 2016 | PHI | 16 | 607 | 379 | 3782 | 16 | 14 | 0.04 | -0.86 | 6.23 |