Skip to main content
Sports

Grading the 49ers: Atrocious scores for the offense, but one defender aces his test

A person in profile with dreadlocks wearing a sleeveless red shirt and an earpiece stands against a blurred backdrop of lights and rows of seats.
Just 305 days removed from his Achilles tear, Dre Greenlaw looked like he hadn’t lost a step. | Source: Brooke Sutton/Getty Images

The 49ers haven’t announced if they’ll release or suspend linebacker De’Vondre Campbell, who defected from the team during the second half of Thursday’s catastrophic loss to the Los Angeles Rams, but he certainly won’t be playing another down for them.

“It’s not something you can do to your team or your teammates and still expect to be a part of our team,” 49ers coach Kyle Shanahan said Friday of Campbell, adding that he’s not been in contact with the 31-year-old linebacker. “So, we’re working through exactly the semantics of it right now, but we’ll handle the situation appropriately.”

If the 49ers release Campbell, he’d theoretically be able to sign with another team — but Shanahan might not be in the mood to offer him that luxury. The 49ers remain incensed about Thursday’s incident, which low-lighted a 12-6 loss in which their defense played well but their offense failed to make a single red-zone trip.

Here are full snap counts and grades from the 49ers’ loss

Quarterback: Purdy (54 snaps)
Game grade: D-

He’s had exceptionally few poor outings over his three-year career. This was one of them. Purdy finished 0-for-7 on passes of over 20 air yards, a category in which he’s generally excelled. (Purdy finished 2023 with the highest completion percentage on such throws in at least 20 years.) He did make a handful of nice throws, including a couple in the rain, and the narrative might’ve been entirely different had Deebo Samuel not dropped Purdy’s would-be touchdown pass on a third down in the third quarter.

But that’s how the NFL works. It’s all so fragile. Margins are paper thin, and Purdy found himself on the wrong side of them Thursday. All that said, he remains one of the most stable pillars of this team — and there’s plenty of data indicating that the offensive structure around Purdy is failing the 49ers much more than the QB himself.

Running back/fullback: Isaac Guerendo (41), Patrick Taylor Jr. (3), Kyle Juszczyk (27)
Game grade: C

Guerendo has real juice to offer the 49ers in both the run and pass game. It’s exciting to envision him pairing with a healthy Christian McCaffrey in 2025. The 49ers can power through their offseason retool with that pleasant thought in mind.

Shanahan, though, mismanaged the game plan. Nowhere was that more evident than on the 49ers’ second drive, immediately after Purdy’s 33-yard strike to tight end George Kittle. Unbelievably, the 49ers didn’t pass again on that possession. They ran three straight times, including on third down to Deebo Samuel, before settling for a field goal.

Poor play-calling sequences like that derail games, especially ones played in inclement weather. This one helped ensure that Guerendo would be capped at 3.6 yards per rush.

Samuel, meanwhile, mustered just 3 yards on 2 carries in the latest installment of his disastrous season.

Deebo Samuel average yards per rush

  • 2019: 11.4
  • 2020: 3.3
  • 2021: 6.2
  • 2022: 5.5
  • 2023: 6.1
  • 2024: 2.8

Wide receiver: Jauan Jennings (51), Samuel (42), Ricky Pearsall (30), Chris Conley (3), Jacob Cowing (4)
Game grade: D

Samuel’s drop counts as one of the most damaging plays in a season littered with gut-punching gaffes. It was made even more painful by the fact that Samuel had tweeted — and then deleted — what seemed to be a demand for more targets after the 49ers’ most productive offensive outing of the season against the Chicago Bears.

Shanahan obliged Samuel’s request against the Rams — to the 49ers’ detriment. Purdy opened the game with a forced incompletion to Samuel. Then came the aforementioned ineffective runs, which helped kill early drives during which the 49ers could’ve built a commanding lead. Finally, once the offense seemed to be building an organic rhythm, Samuel killed it when he dropped Purdy’s perfect pass.

Jennings was solid, although he flubbed one ball in the rain. And Pearsall actually showed his most potential in weeks, grabbing a crosser from Purdy before springing open deep in the fourth quarter. But Purdy’s throw fell short, and that was the beginning of the end for the 49ers.

Tight end: George Kittle (52), Eric Saubert (17)
Game grade: A

Kittle is a superb athlete, but it’s a problem that he looks faster than the 49ers’ wideouts. The 49ers averaged only 2.5 yards per separation at the time of catch or incompletion on Thursday, one of the lowest marks of the season for a team that ranks dead last in this category (3.0 average yards of separation) for all of 2024.

Kittle led the 49ers with 61 receiving yards. It also appeared that the Rams might’ve gotten away with two pass interference penalties while trying to cover him. After the game, Kittle also eloquently and angrily denounced Campbell’s desertion. If the 49ers are to preserve the gritty culture they’ve built over the years, such leadership is important.

Offensive line: Colton McKivitz (54), Dominick Puni (54), Jake Brendel (54), Aaron Banks (54), Jaylon Moore (54)
Game grade: F

This was a bad outing in pass protection for the 49ers, who’d actually posted notable improvement in that regard this season. The offensive line allowed 18 total pressures against L.A.’s talented young defensive front, per Pro Football Focus.

49ers O-line pressures allowed versus Rams

  • Puni: 5 (2 sacks)
  • McKivitz: 4
  • Banks: 3
  • Moore: 3
  • Brendel: 3

It’s worth noting that Puni has generally been excellent this season. A rookie can be expected to have an off game, and this was certainly one of them for the right guard. But every single unit of the offensive line bled pressure, and that made life exceptionally difficult for Purdy.

Defensive line: Nick Bosa (47), Maliek Collins (45), Leonard Floyd (39), Yetur Gross-Matos (31), Sam Okuayinonu (19), Jordan Elliott (39), Evan Anderson (22), Kalia Davis (17), Robert Beal Jr. (5)
Game grade: A

Bosa returned without having practiced in several weeks and played well, logging six pressures. The entire defensive line generated solid push against a Rams’ front that was much healthier than when these two teams first played in September.

The 49ers have some momentum cooking at defensive end. Bosa is obviously one of the best players in football, but the supporting cast seems to be rounding into form. Gross-Matos, the reigning NFC defensive player of the week following a 3-sack performance against the Chicago Bears, is under contract for another season past this one. So is Floyd, who already has 8 1/2 sacks.

The 49ers will have a decision to make on the future of injured defensive tackle Javon Hargrave, who recently took a pay cut for 2024, but they’ll have options after this season.

Linebacker: Fred Warner (64), Dre Greenlaw (30), Demetrius Flannigan-Fowles (26), Dee Winters (6)
Game grade: A+

Shanahan said Greenlaw came out of the game healthy despite being sidelined in the second half with knee discomfort.

“The knee just kind of felt a little weird, so I wanted to protect myself a little bit,” Greenlaw said. “Knee just didn’t feel right, everything kind of got a little tight. Just kind of had to make sure to use precaution with it.”

Just 305 days removed from his Achilles tear, Greenlaw looked like he hadn’t lost a step — a remarkable development for a 49ers team that must decide whether or not to re-sign Greenlaw beyond this season. Doing so suddenly seems like a no-brainer.

“I miss just letting my frustration and anger out,” Greenlaw said. “I just like going to hit people sometimes. That lets a lot of frustration out and makes me feel better. I missed everything about it — the fans, going out there at Levi’s, playing next to Fred. Everything about it.”

(For the record, the linebacker grade doesn’t include Campbell, who refused to play.)

Defensive back: Ji’Ayir Brown (60), Talanoa Hufanga (62), Deommodore Lenoir (64), Charvarius Ward (57), Renardo Green (64), Tashaun Gipson Sr. (10), Isaac Yiadom (8)
Game grade: B+

Holding Rams quarterback Matthew Stafford, who’d exploded against the Buffalo Bills just four days earlier, to just 160 passing yards and no touchdowns was an obvious win.

That being said, Lenoir and Hufanga dropped two interceptions that could’ve completely changed the game. This was emblematic of the season; the 49ers — who led the NFL in picks over the two preceding seasons — just haven’t been able to deliver big and timely plays with any consistency in 2024.

Still, the framework of a very good pass defense is there. The vast majority of blame for this loss should fall on the 49ers offense.

Special teams
Game grade: C
This was a mostly sound performance from the 49ers’ special teams unit outside of two illegal formation penalties in punt alignment. In a tractor-pull type of game during which every yard mattered, these weren’t inconsequential penalties.

But special teams did what Shanahan wants it to do: hold serve. The failures here came from elsewhere.

David Lombardi can be reached at dlombardi@sfstandard.com