Brock Purdy
Box score by season
| Season | Team | G | Cmp | Att | Pass yds | TD | Int | Sacked | Rush | Rush yds | TD | vs ESPN |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2026 | SF | 6 | 119 | 171 | 1,460 | 14 | 2 | 5 | 30 | 156 | 1 | ESPN catching up |
| 2025 | SF | 9 | 197 | 284 | 2,167 | 20 | 10 | 11 | 33 | 147 | 3 | ✓ matches |
| 2025 playoffs | SF | 2 | 33 | 58 | 402 | 2 | 3 | 3 | 14 | 61 | 0 | |
| 2024 | SF | 15 | 300 | 455 | 3,864 | 20 | 12 | 31 | 66 | 323 | 5 | not checked |
| 2023 | SF | 16 | 308 | 444 | 4,280 | 31 | 11 | 28 | 39 | 144 | 2 | not checked |
| 2023 playoffs | SF | 3 | 66 | 108 | 774 | 3 | 1 | 4 | 14 | 74 | 0 | |
| 2022 | SF | 9 | 114 | 170 | 1,374 | 13 | 4 | 11 | 22 | 13 | 1 | not checked |
| 2022 playoffs | SF | 3 | 41 | 63 | 569 | 3 | 0 | 4 | 7 | 24 | 1 |
Official scoring from play-by-play. Regular-season totals for 2025, 2026 are compared with ESPN's after every rebuild (all players); earlier seasons aren't checked.
Advanced
Notable in 2025
His biggest gaps between one situation and the rest of his plays, beyond the league's own gap there (|z| ≥ 2.5). Many splits get checked, so some of these are luck; the badge says whether that kind of split repeats year to year.
- +0.54 EPA/dropback on 3rd down vs +0.10 the rest of the time (86 vs 227; league gap -0.15; z +3.2) mostly noise · r 0.11
- -0.36 EPA/dropback from 12 personnel vs +0.30 the rest of the time (38 vs 275; league gap +0.02; z -2.7) mostly noise · r 0.04
Every split
EPA per dropback in each situation, the league in the same situation, and his rank among qualified players with at least 30 dropbacks there (1 = best). "Repeats" is how much that split's player-to-player differences carry from one season to the next (2016–25); near zero means it describes the past and predicts little. Click a situation to filter all his numbers to it.
| Situation | Dropbacks | EPA/play | Success | Yds/play | League EPA | Rank | Repeats |
|---|---|---|---|---|---|---|---|
| Home / away Setting compare everyone → | |||||||
| Home | 180 | +0.123 | 53% | 7.3 | +0.069 | 17/37 | 0.04 |
| Away | 133 | +0.359 | 54% | 7.0 | +0.044 | 2/37 | 0.01 |
| Neutral site | 0 | — | — | — | +0.052 | — | — |
| Rest days Setting compare everyone → | |||||||
| Short week (≤5 days) | 0 | — | — | — | +0.109 | — | 0.09 |
| Normal (6–8 days) | 237 | +0.150 | 51% | 6.9 | +0.042 | 12/37 | 0.03 |
| Extra rest (9–12 days) | 0 | — | — | — | +0.079 | — | -0.00 |
| Off a bye (13+ days) | 37 | +0.534 | 65% | 8.9 | +0.100 | 1/22 | -0.07 |
| Indoors / outdoors Weather compare everyone → | |||||||
| Indoors | 63 | +0.475 | 59% | 7.8 | +0.044 | 2/34 | 0.01 |
| Outdoors | 250 | +0.159 | 52% | 7.0 | +0.063 | 11/37 | 0.01 |
| Temperature (outdoors) Weather compare everyone → | |||||||
| Under 40°F | 31 | +0.109 | 39% | 5.3 | +0.051 | 7/19 | 0.00 |
| 40–59°F | 140 | +0.134 | 53% | 7.1 | +0.033 | 12/32 | 0.00 |
| 60–79°F | 79 | +0.224 | 56% | 7.6 | +0.094 | 11/32 | -0.13 |
| 80°F+ | 0 | — | — | — | +0.059 | — | 0.01 |
| Wind (outdoors) Weather compare everyone → | |||||||
| 0–9 mph | 219 | +0.167 | 54% | 7.3 | +0.076 | 11/35 | -0.06 |
| 10–14 mph | 0 | — | — | — | +0.052 | — | -0.12 |
| 15+ mph | 31 | +0.109 | 39% | 5.3 | -0.019 | 9/20 | -0.06 |
| Rain or snow (outdoors) Weather compare everyone → | |||||||
| Dry | 250 | +0.159 | 52% | 7.0 | +0.063 | 12/37 | 0.01 |
| Rain or snow | 0 | — | — | — | +0.050 | — | 0.01 |
| Score Game state compare everyone → | |||||||
| Trailing 9+ | 41 | +0.194 | 54% | 7.4 | -0.033 | 8/36 | 0.06 |
| Trailing 1–8 | 57 | +0.168 | 56% | 8.3 | +0.087 | 16/37 | 0.05 |
| Tied | 80 | +0.244 | 52% | 6.6 | +0.023 | 4/35 | 0.09 |
| Leading 1–8 | 86 | +0.334 | 52% | 7.8 | +0.106 | 4/35 | -0.21 |
| Leading 9+ | 49 | +0.082 | 53% | 5.5 | +0.157 | 16/20 | 0.03 |
| Win probability Game state compare everyone → | |||||||
| Win prob under 20% | 22 | +0.390 | 59% | 9.7 | -0.032 | — | 0.05 |
| Win prob 20–80% | 217 | +0.182 | 51% | 7.1 | +0.069 | 7/37 | 0.08 |
| Win prob over 80% | 74 | +0.293 | 58% | 6.5 | +0.143 | 6/27 | 0.03 |
| Quarter Game state compare everyone → | |||||||
| Q1 | 70 | +0.344 | 54% | 7.9 | +0.068 | 2/37 | -0.05 |
| Q2 | 104 | +0.033 | 45% | 6.1 | +0.065 | 24/37 | -0.06 |
| Q3 | 67 | +0.408 | 66% | 7.7 | +0.069 | 2/37 | -0.06 |
| Q4 | 72 | +0.208 | 53% | 7.6 | +0.026 | 7/37 | 0.05 |
| OT | 0 | — | — | — | +0.214 | — | — |
| Two-minute Game state compare everyone → | |||||||
| Last 2 min of half | 43 | +0.051 | 40% | 5.8 | +0.075 | 23/37 | 0.03 |
| Rest of game | 270 | +0.250 | 56% | 7.4 | +0.053 | 3/37 | 0.03 |
| Down Situation compare everyone → | |||||||
| 1st down | 116 | +0.065 | 55% | 7.7 | +0.114 | 24/37 | 0.19 |
| 2nd down | 105 | +0.152 | 48% | 6.7 | +0.076 | 15/37 | 0.04 |
| 3rd down | 86 | +0.537 | 58% | 7.3 | -0.052 | 1/37 | 0.11 |
| 4th down | 6 | +0.020 | 50% | 4.0 | +0.122 | — | — |
| 3rd-down distance Situation compare everyone → | |||||||
| 3rd & 1–3 | 17 | +0.466 | 59% | 7.9 | -0.034 | — | -0.29 |
| 3rd & 4–6 | 27 | +0.433 | 59% | 5.2 | -0.012 | — | -0.12 |
| 3rd & 7+ | 42 | +0.633 | 57% | 8.4 | -0.079 | 1/37 | -0.22 |
| Field position Situation compare everyone → | |||||||
| Own 20 and in | 24 | -0.186 | 46% | 6.6 | +0.060 | — | -0.02 |
| Own 50–21 | 131 | +0.179 | 53% | 8.4 | +0.051 | 10/37 | 0.11 |
| Opp 21–49 | 97 | +0.260 | 57% | 7.8 | +0.081 | 7/37 | 0.08 |
| Red zone (opp 20 in) | 61 | +0.420 | 51% | 3.7 | +0.019 | 2/34 | 0.01 |
| Formation Style compare everyone → | |||||||
| Shotgun | 227 | +0.310 | 53% | 7.4 | +0.037 | 1/37 | -0.00 |
| Under center | 86 | -0.007 | 53% | 6.7 | +0.147 | 23/32 | -0.00 |
| Tempo Style compare everyone → | |||||||
| Huddle | 304 | +0.206 | 53% | 7.0 | +0.059 | 7/37 | -0.09 |
| No huddle | 9 | +0.785 | 56% | 13.7 | +0.037 | — | -0.09 |
| Yards to go Situation compare everyone → | |||||||
| 1–3 to go | 30 | +0.340 | 57% | 5.8 | +0.046 | 4/29 | -0.07 |
| 4–6 to go | 56 | +0.217 | 55% | 5.4 | +0.042 | 11/36 | -0.02 |
| 7–10 to go | 200 | +0.230 | 54% | 8.0 | +0.085 | 5/37 | -0.01 |
| 11+ to go | 27 | +0.056 | 44% | 6.4 | -0.042 | — | 0.03 |
| Pass, sack or scramble Passing compare everyone → | |||||||
| Pass | 284 | +0.301 | 56% | 7.6 | +0.163 | 5/37 | 0.66 |
| Sack | 11 | -1.954 | 0% | -4.8 | -1.741 | — | 0.21 |
| Scramble | 18 | +0.323 | 50% | 7.3 | +0.479 | — | 0.27 |
| Pass depth Passing compare everyone → | |||||||
| Behind the line | 34 | +0.074 | 44% | 4.6 | -0.186 | 1/36 | 0.19 |
| Short (0–9) | 155 | +0.251 | 55% | 5.6 | +0.123 | 4/37 | 0.01 |
| Intermediate (10–19) | 60 | +0.284 | 62% | 9.3 | +0.393 | 26/37 | 0.16 |
| Deep (20+) | 35 | +0.771 | 60% | 16.5 | +0.443 | 8/31 | 0.18 |
| Pass direction Passing compare everyone → | |||||||
| Left | 110 | +0.428 | 55% | 7.9 | +0.156 | 3/37 | 0.11 |
| Middle | 73 | +0.190 | 55% | 8.8 | +0.279 | 28/37 | 0.10 |
| Right | 101 | +0.243 | 56% | 6.5 | +0.111 | 10/37 | 0.08 |
| Play action Scheme (FTN) compare everyone → | |||||||
| Play action | 83 | +0.051 | 55% | 7.4 | +0.136 | 25/37 | -0.03 |
| No play action | 230 | +0.285 | 53% | 7.1 | +0.032 | 2/37 | -0.03 |
| In / out of pocket Scheme (FTN) compare everyone → | |||||||
| In pocket | 249 | +0.255 | 55% | 7.6 | +0.070 | 4/37 | 0.06 |
| Out of pocket | 64 | +0.099 | 45% | 5.7 | +0.003 | 13/36 | 0.06 |
| Blitz Defense (FTN) compare everyone → | |||||||
| Blitzed | 72 | +0.230 | 58% | 7.4 | +0.048 | 8/37 | -0.15 |
| No blitz | 241 | +0.221 | 52% | 7.1 | +0.060 | 4/37 | -0.15 |
| Pass rushers Defense (FTN) compare everyone → | |||||||
| 3 or fewer rushers | 10 | +0.109 | 60% | 7.9 | +0.148 | — | — |
| 4 rushers | 230 | +0.254 | 52% | 7.3 | +0.049 | 2/37 | -0.27 |
| 5 rushers | 61 | +0.191 | 56% | 7.1 | +0.076 | 12/37 | -0.05 |
| 6+ rushers | 11 | -0.148 | 55% | 4.4 | +0.030 | — | 0.15 |
| Defenders in the box Defense (FTN) compare everyone → | |||||||
| Light box (6 or fewer) | 243 | +0.225 | 52% | 7.0 | +0.047 | 6/37 | 0.13 |
| 7 in the box | 60 | +0.342 | 63% | 8.8 | +0.083 | 5/37 | 0.11 |
| Stacked box (8+) | 10 | -0.532 | 30% | 1.3 | +0.097 | — | — |
| Screen Scheme (FTN) compare everyone → | |||||||
| Screen | 18 | +0.426 | 56% | 6.8 | -0.040 | — | -0.11 |
| Not a screen | 295 | +0.211 | 53% | 7.2 | +0.064 | 4/37 | -0.11 |
| Pre-snap motion Scheme (FTN) compare everyone → | |||||||
| Motion | 229 | +0.147 | 53% | 7.1 | +0.082 | 14/37 | 0.02 |
| No motion | 84 | +0.430 | 54% | 7.4 | +0.027 | 1/37 | 0.02 |
| RPO Scheme (FTN) compare everyone → | |||||||
| RPO | 1 | +0.245 | 100% | 6.0 | +0.068 | — | — |
| Not an RPO | 312 | +0.223 | 53% | 7.2 | +0.056 | 4/37 | — |
| Pressure Defense (NGS) compare everyone → | |||||||
| Clean pocket | 224 | +0.452 | 62% | 8.5 | +0.273 | 4/37 | 0.04 |
| Pressured | 89 | -0.353 | 30% | 3.8 | -0.454 | 13/37 | 0.04 |
| Man / zone Defense (NGS) compare everyone → | |||||||
| Man | 104 | +0.315 | 55% | 6.5 | +0.077 | 4/37 | 0.01 |
| Zone | 209 | +0.177 | 53% | 7.5 | +0.047 | 7/37 | 0.01 |
| Coverage shell Defense (NGS) compare everyone → | |||||||
| Cover 0 | 11 | +0.976 | 64% | 4.6 | +0.112 | — | — |
| Cover 1 | 79 | +0.122 | 48% | 6.6 | +0.072 | 16/37 | -0.05 |
| 2-Man | 14 | +0.884 | 86% | 8.0 | +0.077 | — | — |
| Cover 2 | 71 | +0.130 | 49% | 6.5 | +0.021 | 15/37 | -0.18 |
| Cover 3 | 82 | +0.137 | 55% | 8.1 | +0.070 | 13/37 | -0.07 |
| Cover 4 | 24 | +0.547 | 54% | 8.4 | +0.080 | — | -0.01 |
| Cover 6 | 20 | +0.383 | 55% | 9.8 | -0.004 | — | -0.20 |
| Cover 9 | 10 | -0.440 | 50% | 3.3 | -0.006 | — | — |
| Combo | 2 | +0.087 | 50% | 5.5 | +0.034 | — | — |
| Blown coverage | 0 | — | — | — | +0.293 | — | — |
| Time to throw Passing compare everyone → | |||||||
| Quick (under 2.5s) | 100 | +0.546 | 69% | 7.5 | +0.165 | 1/37 | 0.12 |
| Normal (2.5–3.5s) | 119 | +0.311 | 53% | 8.1 | +0.220 | 9/37 | 0.07 |
| Long (3.5s+) | 65 | -0.141 | 40% | 6.9 | +0.023 | 26/35 | 0.07 |
| Offensive personnel Scheme (NGS) compare everyone → | |||||||
| 11 | 273 | +0.306 | 55% | 7.6 | +0.050 | 2/37 | 0.07 |
| 12 | 38 | -0.360 | 45% | 4.4 | +0.075 | 34/35 | 0.04 |
| 21 | 0 | — | — | — | -0.020 | — | -0.07 |
| 13 | 2 | +0.035 | 50% | 0.5 | +0.130 | — | — |
| 22 | 0 | — | — | — | -0.218 | — | — |
| 10 | 0 | — | — | — | +0.056 | — | — |
| Other | 0 | — | — | — | +0.044 | — | -0.08 |
By season
| Season | Team | Dropbacks | EPA/play | Total EPA | Success | Yds/play | CPOE | Comp % | aDOT | Sack rate |
|---|---|---|---|---|---|---|---|---|---|---|
| 2025 | SF | 313 | +0.223 | +69.8 | 53.4% | 7.17 | +7.2 | 69.4% | 7.6 | 3.5% |
Definitions. QB plays are dropbacks: passes, sacks and scrambles (spikes left out). QB EPA doesn't charge the passer for a receiver's fumble after the catch. Rushing is designed runs only; receiving is EPA per target. EPA is about ±1.4 points a play, so a split of 50 plays carries roughly ±0.2 of luck.