Kyle Shanahan tipped his hand early in this game — and this is a coach whose entire offensive ethos is based on keeping the opponent off-balance from the first snap and then 40 or 50 more times after that.
He showed his cards early Sunday, by calling Brock Purdy passes on seven of the 49ers’ first eight plays against the aggressive Minnesota defense. He went away from all normal Shanahan inclinations to run it and keep running it, even after Jordan Mason gashed the New York Jets for 147 yards last Monday.
And it didn’t work, at least not to start.
You could say that maybe Shanahan flinched a little going up against Vikings defensive coordinator Brian Flores’ attacking style. I’ll describe it in a more pragmatic way: Shanahan didn’t have Christian McCaffrey to deploy against Flores, and that changed everything. Or it made Shanahan change everything.
The 49ers still ended up running 25 times, compared to 28 passes. For most teams, that’s a lot of running. But for the 49ers, especially in the empty possessions to start the game on Sunday, it was a tell. An accidental declaration from the only team that ran it more than 50 percent of the time last season.
Simply put, the 49ers are one kind of offense (and team) when they’ve got McCaffrey healthy and on the field, and they are another kind when he’s out, as he was Sunday and will be for at least the next three weeks after he was placed on injured reserve for his sore Achilles and calf on Saturday.
The 49ers can certainly win games without McCaffrey, as they did against the Jets and might do several more times over the next few weeks, starting with Sunday’s game in SoFi Stadium against the banged up, 0-2 Rams. They’ve got more than enough talent to do this. But the 49ers play differently without No. 23 running the outside zone or flaring out of the backfield, taking two defenders with him. They challenge defenses differently. They think differently.
“There’s things we can’t do without Christian,” tight end George Kittle said after the game.
Going broke on money downs
When Brandon Aiyuk (four catches for 43 yards) is still a little rusty coming off of a long contractual stalemate, and when they’re going up against a Flores defense that was determined to get into Purdy’s face, the 49ers can look relatively pedestrian on offense, the way they sometimes looked before they traded for McCaffrey in the middle of the 2022 season. I suspect that Shanahan thought the Vikings were going to load up on Mason’s power runs, so the coach wanted to loosen things up by throwing it. And when he has McCaffrey, he knows the defense can’t load up against any singular thing.
Which is why they traded for McCaffrey, of course. They watched him win NFL Offensive Player of the Year for the 2023 season and redid his contract last June to get him more guaranteed money upon his request. He’s been quite healthy for the 49ers after suffering from some nagging and sustained injuries at the end of his Carolina tenure. But McCaffrey had to miss almost all of training camp and preseason due to leg issues, and now he’s out at least through September and the 49ers are 1-1.
The 49ers have suffered in some similar ways when they haven’t had Deebo Samuel, Kittle or Trent Williams, no doubt. Things might simply grind to a halt if Purdy ever goes down. But McCaffrey, because of his dual threat and constant presence as a bailout for Purdy, is unique even among 49ers stars.
On Sunday, the void was crystal clear on the money downs. They converted only two of their 10 third-down tries and one of their three fourth-down plays. McCaffrey is currently the NFL’s greatest first-down-maker, picking up a remarkable, NFL-best 114 of them last season (83 rushing and 31 receiving).
Mason wasn’t bad at all, eventually running for 100 yards on 20 carries, but he only caught one pass for four yards on his only target. Samuel and Kittle were the big playmakers, catching a combined 15 passes for 186 yards and a Kittle touchdown. Purdy wasn’t awful, throwing for 319 yards and a 101.3 passer rating, though he turned it over twice — committing an interception on a forced throw and allowing a fumble that easily could’ve been ruled as another interception.
But those were all hard yards, made on hard plays, against a defense that was hitting the 49ers very hard. Now the 49ers are all waiting for McCaffrey’s return, which, whenever it occurs, will definitely make things a lot easier.
The .500 question
Can the 49ers stay at .500 or above while McCaffrey is out? It might get shaky, but I think they can, especially if they win on Sunday.
McCaffrey’s IR stint requires him to miss three more games, through the Oct. 6 home date against the Cardinals. The next game is on artificial turf in Seattle on a Thursday night. I don’t think the 49ers will be too interested in rushing McCaffrey back for that one.
In the big picture, it’s far more important to have McCaffrey healthy for November, December and January than for an October game in Seattle. If the 49ers lose that game, they’ll still have a Nov. 17 date against the Seahawks at Levi’s to make up for it in the division race.
So basically: Can the 49ers go 2-1 in the remaining games that McCaffrey is likely to miss and sit at 3-2 when he comes back, with two home games (vs. the Chiefs and Cowboys) before their Week 8 bye? Yes, I think the 49ers can do this. And if they can, they’ll have a very rested McCaffrey for the final 12 games of the season, which, we’ve seen, will make a lot of difference.
Why Flores has Shanahan’s number
What’s the deal with Flores knocking around the 49ers so thoroughly in recent years? He crunched them in 2020 when he was Miami’s head coach and as Vikings defensive coordinator he’s beaten the 49ers, and out-maneuvered Shanahan’s offense, in back-to-back years.
The only other DC who seems to play the 49ers this consistently tough is Kansas City’s Steve Spagnuolo, who came out on top in the two biggest games of the Shanahan era, with more anecdotal nods to Cleveland DC Jim Schwartz and current Seahawks Coach Mike McDonald.
Is there a commonality? Nothing leaps out to me other than that Flores and Spagnuolo both run 4-3 systems and are known to be masters at messing around with quarterbacks by disguising blitzes and coverages. They mess around with Shanahan and Purdy’s rhythm. But other DCs try to do that, too, sometimes with more talent than currently resides on the Vikings and Chiefs’ defensive rosters.
Well, whatever the reason, we know that Shanahan respects them both enough to alter what he does. We’ll see another example on Oct. 20, when the Chiefs come to Levi’s.
Defensive liabilities
The 49ers would love it if new DC Nick Sorensen turned into his own version of Flores or Spagnuolo (or even into his 49ers predecessors DeMeco Ryans and Robert Saleh), but through two weeks … it’s still very much TBD for Sorensen.
At least he didn’t call a Zero Blitz at the worst possible moment and, unlike Steve Wilks last season in Minnesota, avoided surrendering a long TD at the end of the first half. But Sorensen’s defense gave up that 97-yard TD pass from Sam Darnold to Justin Jefferson and then couldn’t stop the Vikings in the fourth quarter after the 49ers’ offense had trimmed the Vikings lead to 20-14. This wasn’t all or even mostly Sorensen’s fault — especially the Jefferson TD, when Ji’Ayir Brown miscalculated Jefferson’s speed — but the DC is the captain of that ship.
On the plus side, Sorensen has clearly unleashed Fred Warner’s best self. Or just stepped to the side and let Warner do it himself, which, on Sunday, meant a huge interception and a forced fumble at the goal line. Adding his forced fumble against the Jets, that’s already three turnovers for Warner, who had eight total (four interceptions and four forced fumbles) last season.
“Fred’s playing like a Hall of Famer,” cornerback Charvarius Ward said. “He’s playing like the best player in the league.”
Warner and Nick Bosa (two sacks on Sunday) were the veteran defensive players who were most willing to indicate that they were less than comfortable under Wilks last season. They both whole-heartedly endorsed Sorensen’s promotion to DC last offseason. And now they’re delivering more than words.
Surveying the NFC pack
The 49ers’ loss was happening at the same time Detroit was losing at home to Tampa Bay and Dallas was losing at home to New Orleans. Later, the Rams got walloped in Arizona, with Cooper Kupp limping off the field and possibly due to miss some time.
So no, unless there’s some shocking 11-0 run coming from the Saints, Seahawks, Vikings or Buccaneers, the 49ers’ loss was not a devastating blow in their quest for a top seed in the NFC playoffs.
The 49ers won the No. 1 seed and a first-round bye last season at 12-5. I think 12-5 or maybe even 11-6 might get the No. 1 seed this season. And that game on Sunday at SoFi looms large, especially with Seattle at 2-0 and getting a Tua Tagovailoa-less Dolphins on Sunday in Seattle.