Ahead of their Week 4 loss to the Jacksonville Jaguars, the San Francisco 49ers ranked seventh in the NFL in total yards per game (361.0) but hadn't offered up a very balanced offensive attack.
While the Niners led the league in passing, throwing for 271.3 yards per game, they ranked a lowly 26th in rushing with just 89.7 yards per contest. That's not the type of Kyle Shanahan offense San Francisco fans have grown accustomed to, one that wears out opposing defenses and runs all sorts of time off the clock.
Now, if the 49ers were in the situation they were a season ago, when Christian McCaffrey played all of four games, these numbers might make a little more sense. But despite the ridiculous amount of injuries San Francisco has suffered, McCaffrey has ironically been one of the team's healthiest players.
That said, though, CMC has yet to hit the 100-yard mark as a runner this season—he actually hasn't even hit 70—and has seen his rushing total drop every single week of the season, a trend that continued against the Jacksonville Jaguars, as he gained a season-low 49 yards on 17 carries. That's 2.9 yards per carry for those scoring at home.
So, what's the reason for this?
Why can't 49ers get Christian McCaffrey going on the ground?
Well, one obviously has to start with the 49ers' offensive line, which simply hasn't done a good enough job of creating space. Despite all the experience in this group, there have been far too many occasions where a lineman seemingly has no idea who he's supposed to be block. Or if he does, he just misses it. And missing blocks hasn't only applied to the O-line, as plenty of receivers have done so as well.
One also can't discount the absence of George Kittle, who's been a massive part of the San Francisco rushing attack for years. But here's the thing. The Niners went out and spent nearly $16 million to acquire blocking tight end Luke Farrell. While Farrell has been solid in pass protection, his 56.9 run-blocking PFF grade leaves a lot to be desired. Even star fullback Kyle Juszczyk has struggled, earning a 52.6 mark in this department.
Watching the 49ers' running game, and it's all bad. The running backs had 22 carries vs. the Jags. I counted 12 plays where there were obvious blocking mistakes.
— Kyle Posey (@KP_Show) September 30, 2025
On 9 of those, somebody just flat out whiffed.
On 3 of those, at least 2 players missed a block on the same play.
Add all that up, and you can understand why McCaffrey has had to fight for yards as a runner, as has Brian Robinson Jr. when he gets his snaps. And that's why of the 389 total yards of offense the Niners put up this past Sunday in their 26-21 loss to Jacksonville, only 83 of those came on the ground.
And it's also why San Francisco has yet to score a single rushing touchdown this season.
The aspect of McCaffrey's game we haven't yet discussed, of course, is his ability as a receiver. And the 49ers are certainly getting the most out of that, as CMC has been targeted a team-high 43 times and has caught a team-high 31 passes for 305 yards with two touchdowns. It's a little wild when McCaffrey doesn't even crack the top 20 in the league in rushing yards but sits in the top 10 in receiving yards.
Given the injury issues the 49ers have faced at the wide receiver position, they've almost been forced to use McCaffrey as much as they have as a pass catcher. Kittle's absence obviously applies here as well. When he returns, and if San Francisco can ever have a healthy trio of Brandon Aiyuk, Ricky Pearsall, and Jauan Jennings, one would assume McCaffrey won't be needed as a receiver nearly as much.
And if the 49ers have a full receiving corps, that should open up the field a bit more, as opponents will have to be a bit more honest in how they defend the San Francisco offense.
The Niners now just have to hope that day comes before McCaffrey overworks himself into yet another injury.
