Even after leaving Sunday’s Buffalo blizzard, the 49ers couldn’t escape the avalanche of bad news that has derailed their 2024 season.
Running backs Christian McCaffrey and Jordan Mason are likely done for the season; both are headed to injured reserve. Coach Kyle Shanahan confirmed that McCaffrey injured the PCL in his right knee. Although he won’t require surgery, he’ll need about six weeks to heal. Mason suffered a high ankle sprain, an injury with a return timetable that may not fit into the rest of the 49ers’ season. There are five games to play, and the team, following its 35-10 loss to the Buffalo Bills, sits at 5-7.
Monday’s conference call with Shanahan was an emotional one. The coach confirmed that left tackle Trent Williams and his wife, Sondra, recently lost their twin babies. One died during pregnancy; the other, Trenton O’Brien Williams Jr., was delivered stillborn Nov. 24.
“[Trent Williams] was there at the hospital with her and got to meet him and say bye,” Shanahan said, his voice cracking. “And then he had to cremate him on Friday, so he’s been dealing with that, and he’s working through it. But we’re all just trying to be here for him through it all.”
This came less than a month after the death of 49ers cornerback Charvarius Ward’s 1-year-old daughter, Amani Joy.
“When you’ve got to deal with tragedies like this, it’s hard as a coach, it’s hard as a friend, it’s hard as a family member, it’s hard for everybody,” Shanahan said. “But we spend a lot of time with each other, and that’s what’s cool about a football team. Whatever you go through — the good or the bad — we go through it together.”
This season took an excruciating turn for the 49ers even before tragedy struck the Ward and Williams families. Rookie receiver Ricky Pearsall was shot in the chest just days before the opener. Shanahan has called Pearsall’s survival “a miracle.”
The human cost of these events has piled up on a team that — following three consecutive 20-game runs, all ending with devastating playoff losses — was already strained entering the season.
And that cost puts the 49ers’ first down year since 2020 into greater perspective.
Here are the grades from the 49ers’ loss to the Bills
Quarterback: Brock Purdy (48 snaps)
Game grade: C
Purdy managed only 94 passing yards, the lowest statistical output of his NFL career. But this wasn’t unexpected — the 49ers were playing in a blizzard, and no QB rivals the 6-foot-5, 240-pound Josh Allen when it comes to throwing in such conditions. Simply put, no sane football mind will use Sunday’s outlier to make any sort of meaningful judgment on Purdy. It was most important that he leave Buffalo healthy, and Shanahan confirmed that Purdy will be full-go in practice this week.
Running back/fullback: Christian McCaffrey (12), Jordan Mason (25), Kyle Juszczyk (21), Isaac Guerendo (11)
Game grade: A
This was an objectively good performance.
With both McCaffrey and Mason likely done for the season, the 49ers can see how well Guerendo can handle a full workload over the next month. Remember that the rookie started only one game throughout his college career. Expect the 49ers to elevate Patrick Taylor Jr. from the practice squad and sign another running back to replenish depth.
Wide receiver: Jauan Jennings (46), Deebo Samuel (36), Ricky Pearsall (35), Chris Conley (3), Jacob Cowing (1)
Game grade: C
It’d be foolish to draw any conclusions about the 49ers’ pass attack from a lake-effect-snow game, but getting Pearsall more involved over the final five games should be a high priority for both Shanahan and Purdy. The rookie has not been targeted a single time over three games since delivering a big performance at Tampa Bay. Establishing a healthy interplay between Jennings, Samuel, and Pearsall — with possibly an added sprinkling of Jacob Cowing — could set the 49ers up to properly attack the 2025 offseason.
Tight end: George Kittle (48), Eric Saubert (2)
Game grade: C
Purdy targeted Kittle on the first play, but the tight end didn’t notch any catches after that. He did drop a third-down screen pass late. This much is clear: Shanahan must do a better job leveraging 49ers’ rushing success into pass-game opportunities. An early beneficiary of run-game success in the 49ers’ system should be the tight end, since the goal is to scheme good passing opportunities out of running formations. The 49ers didn’t cohesively establish such chances Sunday.
Offensive line: Colton McKivitz (48), Dominick Puni (48), Jake Brendel (48), Ben Bartch (48), Jaylon Moore (48)
Game grade: B+
The 49ers made obvious strides up front against Buffalo. Bartch, a reserve guard filling in for Aaron Banks (concussion protocol), opened up some big holes for McCaffrey early on. Right guard Dominick Puni was also very good. The 49ers are also happy with the performance of Moore, who has filled in nicely for Williams at left tackle over the past two weeks. The O-line has actually exceeded outside estimations, especially with its depth pieces. Will the 49ers be interested in extending Bartch and Moore beyond 2024?
Defensive line: Maliek Collins (30), Leonard Floyd (32), Yetur Gross-Matos (35), Sam Okuayinonu (34), Evan Anderson (33), Kalia Davis (26), Khalil Davis (18), Robert Beal Jr. (21)
Game grade: D
Given the lack of footing in the thick snow, it’s impossible to fairly evaluate pass-rushing performances from Sunday. Multiple times, the 49ers’ D-linemen fell face-first when trying to power off the ball. Buffalo’s pass rush also struggled to generate juice. Anderson and Khalil Davis, whom the 49ers acquired via trade last month, were both good against the run on the inside. But the Bills dominated the perimeter on the ground, an indictment of the 49ers’ exterior run defense.
Givens, who returned after missing several weeks with a groin injury, is done for the season. He tore his pectoral muscle.
Linebacker: Fred Warner (45), De’Vondre Campbell (42), Dee Winters (41), Jalen Graham (13)
Game grade: D
Warner and Nick Bosa are this defense’s two superstars. Neither is healthy, and that’s having an alarming impact on the unit. Campbell played another solid game, notching a thunderous tackle for loss early, but the 49ers are clearly too reliant on superstars to play good defense. The continuing development of Winters is key over these final five games. Then, it’ll be time to retool this unit — starting with the linebacker position — in a way that fosters robust play across all 11 players. The most intriguing question: Where will Dre Greenlaw fit in? The pending free agent is slated to return from his Achilles tear at some point this month.
Defensive back: Ji’Ayir Brown (58), Malik Mustapha (58), Renardo Green (58), Charvarius Ward (58), Nick McCloud (21), Isaac Yiadom (11), Tashaun Gipson Sr. (1)
Game grade: D-
One can blame a good chunk of the 49ers’ horrific run defense on the secondary. Brown was consistently ineffective in run support. Ward gave up the edge on Buffalo’s first touchdown. On top of those issues, the 49ers showed a general lack of defensive resilience. After a Ward penalty nullified a chance at two consecutive Buffalo three-and-outs to open the game, the 49ers’ defense fell apart — allowing nearly 10 yards per rush in the first half.
Of note: McCloud filled in for the injured Deommodore Lenoir at nickel back on first and second downs, while Green slid inside to that slot corner position on third downs. McCloud, whom the 49ers signed just last month, actually graded out as one of the team’s top defenders Sunday.
Special teams
Game grade: C+
Jake Moody missed two field goals, which was understandable given the conditions but disappointing for the 49ers, who could’ve used at least one made kick to stay in the game. Samuel notched two long kick returns to give the 49ers some juice in the second half. Their coverage units were solid in this one. A holding flag nullified a long Buffalo kick return.