Scoring & Efficiency
Percentile rank per metric. Outward = better than league. Inner circle = median (rank 16/32).
| Points | 342 | 373.50 | -31.50 | #21 |
| Total Yards | 5769 | 5,635.56 | +133.44 | #16 |
| Yds / Play | 5.80 | 5.59 | +0.21 | #14 |
| 1st Downs | 344 | 326.94 | +17.06 | #12 |
| Turnovers | 32 | 21.75 | +10.25 | #30 |
| Fumbles Lost | 12 | 8.66 | +3.34 | #29 |
| EXP Pts | 20.08 | 66.06 | -45.98 | #23 |
Scoring & Efficiency Defense
Percentile rank per metric (defense). Outward = better than league. Inner circle = median.
| Points | 435 | 373.50 | +61.50 | #28 |
| Total Yards | 5546 | 5,635.56 | -89.56 | #13 |
| Yds / Play | 5.40 | 5.59 | -0.19 | #8 |
| 1st Downs | 337 | 326.94 | +10.06 | #23 |
| Turnovers | 7 | 21.75 | -14.75 | #32 |
| Fumbles Lost | 5 | 8.66 | -3.66 | #30 |
| EXP Pts | -131.06 | -66.06 | -65.00 | #27 |
Scoring Composition
Where San Francisco 49ers's points come from. Total = 342 points scored.
Offense
Drive Averages
Percentile rank per metric. Long bars = better than league. Median = 50.
| Drives | 181 | 179.38 | +1.63 | #15 |
| Plays / Drive | 5.70 | 5.82 | -0.12 | #25 |
| Yds / Drive | 31.80 | 31.44 | +0.36 | #16 |
| Points / Drive | 1.86 | 2.00 | -0.14 | #20 |
| Score % | 37 | 36.65 | +0.35 | #16 |
| Turnover % | 17.10 | 11.71 | +5.39 | #31 |
Rushing
Rushing: Y/A × Attempts × Rush TDs (dot size). All axes 0-100 percentile; outward + larger = better.
| Rush Att | 423 | 414.75 | +8.25 | #11 |
| Rush Yds | 1902 | 1,831.28 | +70.72 | #13 |
| Rush Y/A | 4.50 | 4.42 | +0.08 | #15 |
| Rush TD | 7 | 13.72 | -6.72 | #32 |
| EXP Pts Rush | -26.56 | -2.64 | -23.92 | #27 |
Passing
Passing efficiency: Y/A × Cmp% × Pass TDs (dot size). All axes 0-100 percentile; outward + larger = better.
| Pass Att | 532 | 552.22 | -20.22 | #20 |
| Pass Cmp | 331 | 358.19 | -27.19 | #24 |
| Cmp % | 62.20 | 64.79 | -2.59 | #23 |
| Pass Yds | 3867 | 3,804.28 | +62.72 | #15 |
| Yds / Att | 7.30 | 6.86 | +0.44 | #10 |
| Yds / Cmp | 11.70 | 10.59 | +1.11 | #5 |
| Adj Y/A | 6.60 | 6.75 | -0.15 | #20 |
| Adj NY/A | 6 | 6.30 | -0.30 | #22 |
| Pass TD | 26 | 26.47 | -0.47 | #19 |
| TD % | 4.90 | 4.79 | +0.11 | #18 |
| Pass Int | 20 | 13.09 | +6.91 | #30 |
| Int % | 3.80 | 2.39 | +1.41 | #30 |
| Sack % | 8.30 | 6.88 | +1.43 | #24 |
| Pass Rating | 84.80 | 90.66 | -5.86 | #25 |
| EXP Pts Pass | 60.62 | 74.79 | -14.17 | #20 |
Team Conversions
Percentile rank per metric. Long bars = better than league. Median = 50.
| 3rd Down Att | 193 | 201.63 | -8.63 | #24 |
| 3rd Down Made | 73 | 78.88 | -5.88 | #25 |
| 4th Down Att | 10 | 16.84 | -6.84 | #31 |
| 4th Down Made | 5 | 9.38 | -4.38 | #32 |
| Red Zone Att | 51 | 51.22 | -0.22 | #15 |
| Red Zone Scores | 21 | 30.25 | -9.25 | #27 |
Defense
Drive Averages Defense
Percentile rank per metric (defense). Long bars = better than league. Median = 50.
| Drives | 181 | 179.38 | +1.63 | #17 |
| Plays / Drive | 5.80 | 5.80 | 0.00 | #16 |
| Yds / Drive | 30.50 | 31.41 | -0.91 | #9 |
| Points / Drive | 2.25 | 2.00 | +0.25 | #26 |
| Score % | 39.80 | 36.52 | +3.28 | #25 |
| Turnover % | 3.90 | 11.76 | -7.86 | #32 |
Rushing Defense
Rush defense: Y/A allowed × Attempts faced × Rush TDs allowed (dot size). 0-100 percentile; outward + larger = better.
| Rush Att | 444 | 414.75 | +29.25 | #25 |
| Rush Yds | 1814 | 1,831.28 | -17.28 | #14 |
| Rush Y/A | 4.10 | 4.41 | -0.31 | #7 |
| Rush TD | 13 | 13.72 | -0.72 | #15 |
| EXP Pts Rush | 19.13 | 2.64 | +16.49 | #7 |
Passing Defense
Pass defense: Y/A × Cmp% × Pass TDs allowed (dot size). All axes 0-100 percentile; outward + larger = better.
| Pass Att | 542 | 552.22 | -10.22 | #19 |
| Pass Cmp | 344 | 358.19 | -14.19 | #11 |
| Cmp % | 63.50 | 64.88 | -1.38 | #10 |
| Pass Yds | 3732 | 3,804.28 | -72.28 | #11 |
| Yds / Att | 7.30 | 7.38 | -0.08 | #12 |
| Yds / Cmp | 11.50 | 11.38 | +0.13 | #18 |
| Adj Y/A | 8.40 | 7.28 | +1.12 | #29 |
| Adj NY/A | 7.50 | 6.33 | +1.17 | #30 |
| Pass TD | 35 | 26.47 | +8.53 | #31 |
| TD % | 6.50 | 4.82 | +1.68 | #31 |
| Pass Int | 2 | 13.09 | -11.09 | #32 |
| Int % | 0.40 | 2.38 | -1.98 | #32 |
| Sack % | 6.40 | 6.75 | -0.35 | #23 |
| Pass Rating | 105.40 | 93.10 | +12.30 | #31 |
| EXP Pts Pass | -150.30 | -74.79 | -75.51 | #31 |
Team Conversions Defense
Percentile rank per metric (defense). Long bars = better than league. Median = 50.
| 3rd Down Att | 216 | 201.63 | +14.38 | #29 |
| 3rd Down Made | 87 | 78.88 | +8.13 | #27 |
| 4th Down Att | 17 | 16.84 | +0.16 | #17 |
| 4th Down Made | 10 | 9.38 | +0.63 | #18 |
| Red Zone Att | 58 | 51.22 | +6.78 | #26 |
| Red Zone Scores | 38 | 30.25 | +7.75 | #28 |
Special Teams
Kicking, returns, and punting summary for SF 2018. Click Details for full breakdown.
Special Teams — SF 2018
Field Goals
By distance
| Range (yd) | Made | Missed | % |
|---|---|---|---|
| 0-19 | 0 | 0 | — |
| 20-29 | 9 | 0 | 100.0% |
| 30-39 | 13 | 0 | 100.0% |
| 40-49 | 9 | 1 | 90.0% |
| 50-59 | 2 | 0 | 100.0% |
| 60+ | 0 | 0 | — |
Made FG distances
Missed FG distances
Point After Touchdown (PAT)
Game-Winning Field Goals
GWFG distances
Returns
Punting P
Defensive Pressure & Tackles
Pressure, tackles for loss, and forced turnover summary for SF 2018.
Pressure & Tackles — SF 2018
Pressure
Turnover Creation
Tackle Detail
EPA & Efficiency
Expected Points Added and CPOE for SF 2018. Higher = better.
EPA & Efficiency — SF 2018
Passing
Rushing
Receiving
About these stats
EPA = Expected Points Added — a play-by-play measure of value over baseline. Positive EPA = above average; negative = below.
CPOE = Completion Percentage Over Expected — completion rate above what a typical QB would post given the same pass distribution.
Air Yards & YAC
Pass distance breakdown for SF 2018 — air yards (downfield) vs yards after catch.
Air Yards & YAC — SF 2018
Passing decomposition
Receiving decomposition
About
Air Yards = the distance a pass traveled through the air (catch point minus line of scrimmage). YAC = yards after catch (catch point to where the play ended). Together they decompose total pass yardage into "downfield throws" vs "yards earned after the catch".
Discipline
Penalty totals and per-game rate for SF 2018. Lower = better; rank pills are inverted (#1 = least penalized).
Discipline — SF 2018
Season totals
Per game
About these ranks
Lower is better. The rank pill on each tile inverts the usual convention — #1 = league's most disciplined team, #32 = most penalized.
Top 10 Ranks
Where this team ranks best in the league.
Top-ranked metrics sorted by rank strength. The curve shows cumulative share — where it bends reveals the 80/20 of this team's strengths.
Bottom 10 Ranks
Where this team ranks worst in the league.
Worst-ranked metrics sorted by severity. The curve shows cumulative share — where it bends reveals the 80/20 of this team's weaknesses.
Most Improved YoY
Year-over-year not available — 2017 stats missing.
Last game — Week 17, 2018
Passing Profile
Team-aggregate passing-game stats for SF 2018.
Weekly Results vs Vegas
Each candle = one game. Open = Vegas predicted margin; close = actual margin. Green: team beat the spread. Red: didn't.
Betting Profile
ATS / SU / O/U splits by situation. SF has 16 graded games this season. Situations with fewer than 5 games show a dash for the percentage to avoid small-sample noise.
W / L / Push composition per situation, each row normalized to 100% of graded games in that bucket.
| Overall | 16 | 4-12 | 5-11 | 31.3% | 9-7 | 56.3% | -5.8 | -2.2 | 31 | +32.5 |
| Home | 8 | 4-4 | 3-5 | 37.5% | 4-4 | 50.0% | -0.6 | +0.3 | 31 | +32.5 |
| Away | 8 | 0-8 | 2-6 | 25.0% | 5-3 | 62.5% | -11.0 | -4.7 | — | +8.0 |
| As favorite | 4 | 1-3 | 0-4 | — | 3-1 | — | -3.5 | -7.1 | 3 | -3.0 |
| As underdog | 12 | 3-9 | 5-7 | 41.7% | 6-6 | 50.0% | -6.6 | -0.5 | 31 | +32.5 |
| Division games | 6 | 1-5 | 1-5 | 16.7% | 4-2 | 66.7% | -13.7 | -9.2 | 3 | +6.5 |
| Non-division | 10 | 3-7 | 4-6 | 40.0% | 5-5 | 50.0% | -1.1 | +2.0 | 31 | +32.5 |
| Pick-em (≤3) | 6 | 2-4 | 2-4 | 33.3% | 2-4 | 33.3% | +0.3 | -0.1 | 31 | +32.5 |
| Small favorite (3-7) | 1 | 1-0 | 0-1 | — | 1-0 | — | +3.0 | -3.0 | 3 | -3.0 |
| Small underdog (3-7) | 4 | 1-3 | 1-3 | — | 2-2 | — | -5.2 | -0.5 | 3 | +6.5 |
| Large underdog (7+) | 5 | 0-5 | 2-3 | 40.0% | 4-1 | 80.0% | -15.4 | -5.9 | — | +8.0 |
Head-to-Head
Opponents faced in 2018. Avg MoV = mean margin of victory; Avg Cover = mean margin of cover (positive = team covered).
| ARI | Arizona Cardinals | 2 | 0-2 | 0-2 | 1-1 | -6.5 | -9.2 |
| LAR | Los Angeles Rams | 2 | 0-2 | 0-2 | 1-1 | -22.5 | -13.2 |
| SEA | Seattle Seahawks | 2 | 1-1 | 1-1 | 2-0 | -12.0 | -5.2 |
| MIN | Minnesota Vikings | 1 | 0-1 | 0-1 | 0-1 | -8.0 | -2.0 |
| DET | Detroit Lions | 1 | 1-0 | 0-1 | 1-0 | +3.0 | -3.0 |
| KC | Kansas City Chiefs | 1 | 0-1 | 0-1 | 1-0 | -11.0 | -5.0 |
| LAC | Los Angeles Chargers | 1 | 0-1 | 1-0 | 1-0 | -2.0 | +8.0 |
| GB | Green Bay Packers | 1 | 0-1 | 1-0 | 1-0 | -3.0 | +6.0 |
| LV | Las Vegas Raiders | 1 | 1-0 | 1-0 | 0-1 | +31.0 | +32.5 |
| NYG | New York Giants | 1 | 0-1 | 0-1 | 1-0 | -4.0 | -7.0 |
| TB | Tampa Bay Buccaneers | 1 | 0-1 | 0-1 | 0-1 | -18.0 | -16.5 |
| DEN | Denver Broncos | 1 | 1-0 | 1-0 | 0-1 | +6.0 | +9.0 |
| CHI | Chicago Bears | 1 | 0-1 | 0-1 | 0-1 | -5.0 | -1.5 |
Data coverage: 2020+ (Results & Spread scraper).
Schedule Context
Performance sliced by when, where, and against whom.
By month
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Sep | 4 | 1-3 | 1-3 | 3-1 | 25% |
| Oct | 4 | 0-4 | 1-3 | 2-2 | 25% |
| Nov | 3 | 1-2 | 1-2 | 1-2 | 33% |
| Dec | 5 | 2-3 | 2-3 | 3-2 | 40% |
By day of week
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Thu | 1 | 1-0 | 1-0 | 0-1 | 100% |
| Sun | 13 | 3-10 | 3-10 | 7-6 | 23% |
| Mon | 2 | 0-2 | 1-1 | 2-0 | 50% |
By season half
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| First half (W1-9) | 9 | 2-7 | 3-6 | 5-4 | 33% |
| Second half (W10+) | 7 | 2-5 | 2-5 | 4-3 | 29% |
By surface
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Grass | 14 | 4-10 | 5-9 | 8-6 | 36% |
| Turf | 2 | 0-2 | 0-2 | 1-1 | 0% |
By site role
By group
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Same division | 6 | 1-5 | 1-5 | 4-2 | 17% |
| Same conference | 6 | 1-5 | 1-5 | 3-3 | 17% |
| Inter-conference | 4 | 2-2 | 3-1 | 2-2 | 75% |
Weather
How the team performs in cold, hot, windy, and indoor conditions.
By temperature
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Cold (<40°F) | 1 | 0-1 | 1-0 | 1-0 | 100% |
| Cool (40-59°F) | 3 | 1-2 | 1-2 | 1-2 | 33% |
| Mild (60-74°F) | 6 | 2-4 | 1-5 | 5-1 | 17% |
| Warm (75°F+) | 4 | 1-3 | 2-2 | 2-2 | 50% |
| Indoor | 2 | 0-2 | 0-2 | 0-2 | 0% |
By wind
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Calm (<5 mph) | 5 | 1-4 | 1-4 | 4-1 | 20% |
| Breezy (5-14 mph) | 8 | 3-5 | 4-4 | 4-4 | 50% |
| Windy (≥15 mph) | 1 | 0-1 | 0-1 | 1-0 | 0% |
| Indoor | 2 | 0-2 | 0-2 | 0-2 | 0% |
Streaks & Trends
Current run, season records, and performance after specific game outcomes.
Current streaks
| Dimension | Streak | Length |
|---|---|---|
| SU | L | 2 |
| ATS | L | 2 |
| O/U | O | 1 |
Longest this season
| Dimension | Length |
|---|---|
| Longest SU win streak | 2 |
| Longest SU loss streak | 6 |
| Longest ATS cover | 2 |
| Longest ATS no-cover | 3 |
| Longest O streak | 5 |
| Longest U streak | 3 |
Performance context
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| After a win | 4 | 1-3 | 1-3 | 3-1 | 25% |
| After a loss | 11 | 3-8 | 4-7 | 6-5 | 36% |
| On 2+ winning streak | 1 | 0-1 | 0-1 | 0-1 | 0% |
| On 2+ losing streak | 7 | 2-5 | 3-4 | 3-4 | 43% |
| vs winning opp. | 6 | 1-5 | 1-5 | 4-2 | 17% |
| vs losing opp. | 7 | 2-5 | 2-5 | 4-3 | 29% |
Travel & Venue Context
Physical context — where games were played, how far the team traveled, and how much rest they had.
By environment
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Outdoor | 14 | 4-10 | 5-9 | 9-5 | 36% |
| Dome | 1 | 0-1 | 0-1 | 0-1 | 0% |
| Retractable (closed) | 1 | 0-1 | 0-1 | 0-1 | 0% |
By venue type
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Domestic home | 8 | 4-4 | 3-5 | 4-4 | 38% |
| Domestic road | 8 | 0-8 | 2-6 | 5-3 | 25% |
By travel distance
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Home (0 mi) | 8 | 4-4 | 3-5 | 4-4 | 38% |
| Short (<500) | 2 | 0-2 | 1-1 | 2-0 | 50% |
| Medium (500-1500) | 3 | 0-3 | 0-3 | 2-1 | 0% |
| Long (1500+) | 3 | 0-3 | 1-2 | 1-2 | 33% |
By rest days
| Bucket | G | SU | ATS | O/U | ATS% |
|---|---|---|---|---|---|
| Short week (3-4d) | 1 | 1-0 | 1-0 | 0-1 | 100% |
| Standard (5-7d) | 11 | 3-8 | 3-8 | 7-4 | 27% |
| Long week (8-10d) | 1 | 0-1 | 1-0 | 1-0 | 100% |
| Bye+ (11+d) | 2 | 0-2 | 0-2 | 1-1 | 0% |
Betting Profile Heatmap
ATS performance across every context. Color = ATS%; opacity = sample size.
Spread-Role Performance
ATS% by pre-game spread role. Tells you which roles this team handles well or folds in.
Vegas Accuracy
Vegas closing spread vs actual margin. MAE = average miss in pts; Bias = whether Vegas systematically over- or under-rated the team.
Stat trajectory
Multi-year history with league average. Pick a stat to compare.
Division Comparison: NFC West
This team and its three division rivals, side by side.
Division rivals across core KPIs. SoS is multiplied by 100 to share an axis with per-game points.
| Team | Record | SoS | Pts/G | Pts Allowed/G | Off EXP | Def EXP |
|---|---|---|---|---|---|---|
| Arizona Cardinals (ARI) | 3-13 | 0.527 #5 | 14.1 | 26.6 | -156.15 | -86.53 |
| Los Angeles Rams (LAR) | 13-3 | 0.480 #27 | 32.9 | 24.0 | 228.60 | -55.13 |
| Seattle Seahawks (SEA) | 10-6 | 0.484 #22 | 26.8 | 21.7 | 128.82 | -52.53 |
| San Francisco 49ers (SF) | 4-12 | 0.504 #16 | 21.4 | 27.2 | 20.08 | -131.06 |
Insights
A look at how the 2018 San Francisco 49ers ranked among the league's 32 teams in efficiency: Strengths: offensive avg yards after catch (3rd of 32), offensive yac over expected (3rd of 32), and defensive ryoe per attempt allowed (4th of 32). Weaknesses: offensive avg time to pressure (29th of 32), defensive epa per pass play allowed (28th of 32), and defensive epa per pass play allowed (28th of 32).
Rivalries
- Los Angeles Rams and San Francisco 49ers have met 16 times in the regular season. San Francisco 49ers leads the series 10 to 6. The most lopsided meeting was a 29-point win for Los Angeles Rams in 2018.