

The read
On rating alone Denver Broncos are 1.9 points better (#4 vs #9 of 32), and SF add 0.0 for home field. The clearest mismatch is the passing game: DEN passing ranks #12, SF defends it at #25; the other way SF #8 into DEN's #7.
Who has the edge
The margin, factor by factor
Bars are in points toward the favored side. Blue factors are inside the model's margin; grey ones are context it does not add on top (form and offense/defense are already in the ratings; injuries beyond the quarterback are not priced).
Dissect the matchup
nflverse play-by-play + FTN charting · 2025 season (last season until three games are in)Biggest mismatches
- ▸DEN sack rate (#2) against a SF defense ranked #32 at stopping it
- ▸DEN defense (#3 yards / rush allowed) against a SF offense ranked #29
- ▸DEN rush success rate (#10) against a SF defense ranked #32 at stopping it
- ▸DEN defense (#6 yac / completion allowed) against a SF offense ranked #28
- ▸DEN defense (#3 explosive rush rate allowed) against a SF offense ranked #25
A mismatch is a rank gap of at least a fifth of the league between an offense and the defense it faces on the same measure. Descriptive rows (pass rate, pace, direction) are shown for reading the game, not ranked. ▲▼ mark where the last three games sit clearly above or below the season number, in the direction that helps that side.
Denver Broncos offense vs San Francisco 49ers defense
ranks of 32| DEN off | SF def | Edge | |
|---|---|---|---|
| Identity | |||
| Pass rate / Pass rate facedDropbacks as a share of plays. On the defense column: what opponents do against them. | 63% | 60% | · |
| Early-down pass rateFirst and second down only — the cleanest read on run-heavy vs pass-heavy. | 57% | 57% | · |
| Neutral-script pass rateEarly downs with win probability between 20% and 80%: intent, not catch-up mode. | 59% | 56% | · |
| Pass rate over expectedHow much more (or less) a team passes than the down, distance, score and clock predict. nflverse xpass. | +1.7% | −2.3% | · |
| Seconds per playTime of possession divided by plays — lower is faster. | 29.2 | 29.8 | · |
| No-huddle | 13% | 11% | · |
| Shotgun | 66% | 66% | · |
| Play-action rate / Play-action facedShare of dropbacks with a play fake (FTN charting). | 24% | 23% | · |
| RPO rate / RPOs faced | 9% | 6% | · |
| Screen rate / Screens faced | 11% | 9% | · |
| Pre-snap motion / Motion faced | 50% | 54% | · |
| Blitzes faced / Blitz rateFive or more pass rushers (FTN). On the offense column: how often opponents blitz them. | 22% | 22% | · |
| Pass rushers faced / Avg pass rushers | 4.08 | 4.27 | · |
| Passing | |||
| EPA / dropbackThe single best pass-efficiency number; on the defense column, what they allow. | +0.08#12▼ | +0.14#25 | DEN |
| Pass success rate | 43%#24 | 49%#25 | · |
| Explosive pass rateDropbacks gaining 20+ yards. | 7.4%#19 | 6.9%#6▼ | SF |
| Yards / dropback | 6.0#19 | 6.4#21 | · |
| Depth of target (aDOT)Average air yards per attempt — how far downfield they throw, or get thrown at. | 7.2 | 7.9 | · |
| Deep-ball rate (20+ air) | 12% | 12% | · |
| Short throws (≤5 air) | 61% | 54% | · |
| Completion % over expectednflverse CPOE, per attempt. Defense column: what they allow. | −1.7#23▼ | +2.1#24▼ | · |
| YAC / completion | 5.3#13 | 4.6#5 | SF |
| Sack rate / Sack rate generatedSacks per dropback. Lower is better for an offense; the defense column shows sacks they create. | 3.4%#2▲ | 3.4%#32▲ | DEN |
| Scramble rate | 5.5% | 4.5% | · |
| Interception rate / Interceptions forced | 1.9%#10 | 0.9%#31▼ | DEN |
| Throws left / middle / rightDirection shares are shown in full on the row. | L 40 · M 16 · R 44 | L 41 · M 20 · R 40 | · |
| Rushing | |||
| EPA / rush | −0.06#19▼ | −0.02#23▲ | · |
| Rush success rate | 43%#10 | 48%#32 | DEN |
| Explosive rush rateRushes of 10+ yards. | 9.5%#17▼ | 8.6%#8▲ | SF |
| Yards / rush | 4.2#18▼ | 4.4#22 | · |
| Runs left / middle / right | L 40 · M 21 · R 39 | L 30 · M 28 · R 42 | · |
| Situational | |||
| Third-down conversion | 41%#13 | 40%#14 | · |
| Red-zone touchdown rateDrives reaching the 20 that end in a touchdown. | 56%#22▼ | 56%#14 | SF |
| Turnovers / game / Takeaways / game | 0.95#11 | 0.74#28▼ | DEN |
| Plays / game | 63 | 60 | · |
San Francisco 49ers offense vs Denver Broncos defense
ranks of 32| SF off | DEN def | Edge | |
|---|---|---|---|
| Identity | |||
| Pass rate / Pass rate facedDropbacks as a share of plays. On the defense column: what opponents do against them. | 59% | 64% | · |
| Early-down pass rateFirst and second down only — the cleanest read on run-heavy vs pass-heavy. | 55% | 58% | · |
| Neutral-script pass rateEarly downs with win probability between 20% and 80%: intent, not catch-up mode. | 58% | 57% | · |
| Pass rate over expectedHow much more (or less) a team passes than the down, distance, score and clock predict. nflverse xpass. | −0.7% | −0.4% | · |
| Seconds per playTime of possession divided by plays — lower is faster. | 29.3 | 28.7 | · |
| No-huddle | 4% | 13% | · |
| Shotgun | 55% | 75% | · |
| Play-action rate / Play-action facedShare of dropbacks with a play fake (FTN charting). | 22% | 21% | · |
| RPO rate / RPOs faced | 1% | 9% | · |
| Screen rate / Screens faced | 6% | 7% | · |
| Pre-snap motion / Motion faced | 67% | 56% | · |
| Blitzes faced / Blitz rateFive or more pass rushers (FTN). On the offense column: how often opponents blitz them. | 21% | 33% | · |
| Pass rushers faced / Avg pass rushers | 4.18 | 4.38 | · |
| Passing | |||
| EPA / dropbackThe single best pass-efficiency number; on the defense column, what they allow. | +0.13#8▼ | −0.07#7▼ | · |
| Pass success rate | 52%#3 | 38%#2 | · |
| Explosive pass rateDropbacks gaining 20+ yards. | 8.0%#15▼ | 6.5%#4 | DEN |
| Yards / dropback | 6.9#8 | 5.0#1 | DEN |
| Depth of target (aDOT)Average air yards per attempt — how far downfield they throw, or get thrown at. | 7.6 | 8.9 | · |
| Deep-ball rate (20+ air) | 10% | 15% | · |
| Short throws (≤5 air) | 53% | 49% | · |
| Completion % over expectednflverse CPOE, per attempt. Defense column: what they allow. | +4.7#3▼ | −3.3#5▼ | · |
| YAC / completion | 4.6#28 | 4.6#6 | DEN |
| Sack rate / Sack rate generatedSacks per dropback. Lower is better for an offense; the defense column shows sacks they create. | 4.3%#4▲ | 9.9%#1 | · |
| Scramble rate | 4.9% | 5.7% | · |
| Interception rate / Interceptions forced | 3.0%#28▲ | 1.9%#20▲ | DEN |
| Throws left / middle / rightDirection shares are shown in full on the row. | L 41 · M 26 · R 34 | L 37 · M 19 · R 44 | · |
| Rushing | |||
| EPA / rush | −0.04#13▼ | −0.09#10▲ | · |
| Rush success rate | 42%#14 | 37%#3 | DEN |
| Explosive rush rateRushes of 10+ yards. | 8.2%#25▼ | 6.8%#3▲ | DEN |
| Yards / rush | 3.7#29 | 3.6#3 | DEN |
| Runs left / middle / right | L 35 · M 27 · R 38 | L 33 · M 27 · R 40 | · |
| Situational | |||
| Third-down conversion | 51%#1 | 36%#6 | · |
| Red-zone touchdown rateDrives reaching the 20 that end in a touchdown. | 65%#5 | 44%#3 | · |
| Turnovers / game / Takeaways / game | 1.42#31▲ | 0.95#22▲ | DEN |
| Plays / game | 62 | 63 | · |
Route-by-route data (which routes are run and how coverage plays them) is not published anywhere public — it is sold by PFF and NGS. Throw depth, direction, play-action, RPO, screens, motion and pass-rush counts above are the public pieces of the same picture.
Denver Broncos · key players
- Bo Nix QB23.0/36.6 · 234 yds/g · 28-12 TD-INT · +0.10 EPA/db
- Courtland Sutton WR7.3 tgt/g · 21% share · 57 yds/g · 8 TD · aDOT 12.3
- Troy Franklin WR6.1 tgt/g · 18% share · 42 yds/g · 6 TD · aDOT 12.7
- Evan Engram TE4.6 tgt/g · 13% share · 27 yds/g · 1 TD · aDOT 4.2
- Marvin Mims Jr. WRQuestionable3.8 tgt/g · 11% share · 28 yds/g · 2 TD · aDOT 9.2
- RJ Harvey RB8.7 car/g · 31 yds/g · 3.6 ypc · 7 TD · −0.16 EPA/car
- J.K. Dobbins RB15.3 car/g · 77 yds/g · 5.0 ypc · 4 TD · +0.03 EPA/car
2025 season, per game. Targets ranked by volume, rushers by carries.nflverse weekly player stats. Target share is the player's average share of his team's targets in the games he played. A player who changed teams carries his own games from last season.
San Francisco 49ers · key players
- Brock Purdy QB20.9/31.1 · 234 yds/g · 22-13 TD-INT · +0.16 EPA/db
- Jauan Jennings WR5.8 tgt/g · 19% share · 42 yds/g · 9 TD · aDOT 10.3
- George Kittle TEQuestionable5.9 tgt/g · 20% share · 53 yds/g · 7 TD · aDOT 6.7
- Kendrick Bourne WR3.7 tgt/g · 11% share · 37 yds/g · 0 TD · aDOT 11.3
- Ricky Pearsall WR5.5 tgt/g · 17% share · 53 yds/g · 0 TD · aDOT 13.8
- Christian McCaffrey RBQuestionable17.7 car/g · 68 yds/g · 3.8 ypc · 10 TD · −0.08 EPA/car
- Brian Robinson RB5.6 car/g · 24 yds/g · 4.3 ypc · 2 TD · −0.03 EPA/car
2025 season, per game. Targets ranked by volume, rushers by carries.nflverse weekly player stats. Target share is the player's average share of his team's targets in the games he played. A player who changed teams carries his own games from last season.
Season
| DEN | SF | |
|---|---|---|
| 15-4 | Record | 13-6 |
| 23.2 | Points for / game | 24.5 |
| 18.5 | Points against / game | 22.7 |
| 9-2 / 6-2 | Home / road | 5-3 / 8-3 |
| 9-10 | Against the spread | 12-7 |
| 8-11 | Over / underOvers–unders in this team's games. A tendency, not a lean. | 11-8 |
| L W W W L | Last 5 | L W L W W |
Season numbers are from 2025 until this season has games.
Power ratings
| DEN | SF | |
|---|---|---|
| 1597 | Elo | 1554 |
| #4 of 32 | Rank | #9 of 32 |
| +0.8 | Offense ratingPoints per game above league average scored, opponent-adjusted. | +2.5 |
| +3.6 | Defense ratingPoints per game below league average allowed, opponent-adjusted. Positive is good. | −1.1 |
| — | Strength of scheduleMean Elo of opponents faced this season. | — |
Elo drives the winner call. Offense/defense ratings drive the total.
Efficiency
| DEN | SF | |
|---|---|---|
| 0.026 | EPA / play (offense)Expected points added per offensive play, nflverse. The single best efficiency number. | 0.060 |
| -0.081 | EPA / play allowed | 0.071 |
| 229 | Pass yards / game | 250 |
| 114 | Rush yards / game | 105 |
| 209 | Pass yards allowed | 232 |
| 99 | Rush yards allowed | 113 |
| 0.8 / 1.3 | Turnovers / takeaways | 1.2 / 1.0 |
| 1.4 / 4.0 | Sacks allowed / made | 1.6 / 1.2 |
| 17.7 | First downs / game | 20.5 |
| 62 | Penalty yards / game | 37 |
| +4.2 · #14 of 52 | QB EPA / gameThe listed starter's passing + rushing EPA per game, ranked among starters with three or more games. | +6.7 · #7 of 52 |
Efficiency is from the 2025 season until this one has games. Source: nflverse.
Head to head
| 2022 | SF 10 at DEN 11 | DEN · DEN covered |
| 2018 | DEN 14 at SF 20 | SF · SF covered |
| 2014 | SF 17 at DEN 42 | DEN · DEN covered |
How the margin was built
- Rating gap
- DEN +1.9 pts
- Home field
- SF +— pts
- Rest
- Even
- Quarterback
- Usual starters — no adjustment
- Weather / roof
- — pts on the total
- Model margin
- —
- Model total
- —
Market
- Spread
- SF -2.5
- Total
- 46.5
- Moneyline
- DEN +120 · SF -142
| Book | SF spread | Total | DEN ML | SF ML |
|---|---|---|---|---|
| betus | +2.5 (-110) | 46.5 (-110/-110) | — | — |
| draftkings | +2.5 (-118) | 46.5 (-110/-110) | — | -148 |
| williamhill_us | +3 (-110) | 45.5 (-115/-115) | — | -160 |
Denver Broncos injuries
- Jonathon Cooper LBOut
- Nick Gargiulo GOut
- Caleb Lohner TEInjured Reserve
- Drew Sanders LBInjured Reserve
- Frank Crum OTInjured Reserve
- Levelle Bailey LBInjured Reserve
- Matt Henningsen DEInjured Reserve
- Michael Deiter CInjured Reserve
- Luke Wattenberg CQuestionable
- Marvin Mims Jr. WRQuestionable
- Riley Moss CBQuestionable
From ESPN's report. The model prices the quarterback; other absences are context it does not yet price.
San Francisco 49ers injuries
- Isaac Guerendo RBOut
- Mykel Williams DEOut
- Austen Pleasants OTInjured Reserve
- Brett Toth CInjured Reserve
- Christian Kirk WRInjured Reserve
- Nate Hobbs CBInjured Reserve
- Nick Martin LBInjured Reserve
- Nick Zakelj OTInjured Reserve
- Sam Okuayinonu DTInjured Reserve
- Christian McCaffrey RBQuestionable
- De'Zhaun Stribling WRQuestionable
- Ephesians Prysock CBQuestionable
From ESPN's report. The model prices the quarterback; other absences are context it does not yet price.
Informational only. Winner probabilities are backtested and calibrated; spread and total calls are tracked leans. 21+, 1-800-GAMBLER.