What went wrong for the #49ers this season?
A THREAD
(1/11) Rest Differential
For the second straight year, the #49ers faced the largest rest disadvantage with -21 days (the worst mark in the NFL since 2017). #SF played 4 teams coming off their bye and lost 3 of those games.
(2/11) Schedule
The #49ers faced the toughest schedule in the NFL this season, with their opponents boasting a combined win percentage of 0.564. Adding to the challenge, they had to play the AFC's top two seeds, KC and BUF, both coming off their bye weeks.
(3/11) Special Teams Blunders
#SF endured a nightmare season on special teams, losing a league-high 64 expected points. Jake Moody ranked as the NFL's 2nd-lowest-rated kicker, the kickoff coverage unit finished 30th, and the punt coverage unit ranked dead last in the league.
(4/11) Penalties Against
#SF's opponents benefited from the fewest penalties and penalty yards in the league this season. Week 18 underscored the issue, as the 49ers committed 12 more penalties than Arizona - the largest penalty disparity in an NFL game since 2019.
(5/11) Injuries
The #49ers faced numerous injuries to key contributors on both sides of the ball throughout the season. By the end of the year, #SF had the second-highest cap space in the NFL tied up in reserve lists (IR, PUP, etc.).
(6/11) YAC Issues
Contrary to recent years under Kyle Shanahan, the #49ers struggled to consistently generate yards after the catch. #SF finished the season with the third-lowest YAC% in the NFL, with less than 42% of their receiving yards coming after the catch.
(7/11) Scoring Problems
Despite all the injuries, the #49ers' offense still managed to post the second-highest yards per play in the league. However, they struggled to capitalize in the red zone, reflected by their 14th-place ranking in offensive points per game.
(8/11) Negated TDs
The scoring issue was further compounded by the #49ers having the most offensive TDs wiped off the board due to penalties (5). These plays cost #SF a league-high 15 expected points.
(9/11) 2nd Half Collapses
The #49ers saw the biggest performance drop-off in the league from the first to the second half. After a solid 8th-place rank in net EPA/play during the first half, they fell all the way down to 31st in the second half.
(10/11) Dominating but Losing
The #49ers underperformed their post-game win expectations by the largest margin this year (-3.17 wins). Statistically, they were the better team in five of their losses but failed to close out the games or were plagued by bad luck.
(11/11) Historically Bad Defense
The #49ers finished the season with a below-average pass defense and ranked 29th against the run, marking by far their worst run defense under Kyle Shanahan. Over the final 9 games, #SF's defense forced just 2 turnovers.
It turned out longer than I anticipated, but that’s just how this season unfolded. Worth reading through, in my opinion. Hopefully I didn’t miss anything?
I aimed to provide a season recap with stats, otherwise I would’ve also mentioned the off-the-field tragedies.
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.