GLENDALE, Ariz. >> Here is how the last-place 49ers (6-11) graded in Sunday’s 47-24, season-ending loss to the host Arizona Cardinals (8-9):
PASS OFFENSE: C-
Intent on getting Jauan Jennings the 77 yards needed for his first 1,000-yard season, the 49ers had to scrap that plan once he got ejected 6:11 before halftime with 975 yards on the season. Josh Dobbs accounted for three touchdowns and three turnovers while starting in place of an injured Brock Purdy. Dobbs (29-of-43, 326 yards, two interceptions, two TDs) had one of his 10 targets to Jennings intercepted by Sean Murphy-Bunting, who was the Cardinal later disqualified along with Jennings for their end-zone scuffle. Ricky Pearsall, a Phoenix native, celebrated his third touchdown of the season by clutching his chest and mimicking his actions as an Aug. 31 gunshot victim.
RUN OFFENSE: C
Isaac Guerendo’s first-series, left-knee injury thrust Patrick Taylor Jr. into action and he responded with a career-best 109 yards on 17 carries. Taylor had some big gains and he turned a fourth-and-1 run into a 9-yard gain in the third quarter. Dobbs ran for a second-quarter, 1-yard touchdown run but fumbled twice, losing one on a fourth-quarter scramble. What a sadly appropriate way to end a season in which they lost so many running backs since training camp.
PASS DEFENSE: F
Not only did the 49ers go a seventh straight game without an interception, they did not sack Kyler Murray, who threw four touchdown passes and completed 71.4% of his passes (25-of-35, 242 yards). Defensive end Nick Bosa said afterward he came away embarrassed, not just in how the 49ers have played but how he couldn’t lead them out of their rut. Charvarius Ward nearly came away with his first interception of the season, but he allowed the 49ers’ final touchdown pass to Marvin Harrison Jr. in what could be Ward’s 49ers finale.
RUN DEFENSE: F
Two touchdown runs in the fourth quarter raised opponents’ total to 24 this season, one shy of the most allowed in a 49ers’ season. For the 10th time in 11 games, the 49ers failed to recover a fumble. Even though the Cardinals were without 1,000-yard workhorse James Conner, they still amassed 151 yards at a 5.6 yards-per-carry average against a defense that still featured Warner and a trio of Week 1 starters on the defensive line in Bosa, Floyd and Maliek Collins.
SPECIAL TEAMS: F
It’s only appropriate that the 49ers’ season-long issues on special teams showed up in this finale, from surrendering a fake-punt conversion to Jake Moody missing a 47-yard field-goal attempt. Moody was 11-of-20 since returning from a high-ankle sprain that afforded him only a three-game break. Rookie return specialist Jacob Cowing went all season without breaking anything longer than a 32-yard return.
COACHING: C
Kyle Shanahan opened his press conference saying he did not want to field questions about offseason fates of coaches or players. Indeed, a lot of questions and personnel moves could be coming, with heat particularly on coordinators Nick Sorensen (defense) and Brian Schneider (special teams). After allowing a season-high 47 points, Shanahan acknowledged the early impact of the first quarter’s interception, fake punt and missed field goal, “but by the second half they wore us down, got it going, and couldn’t get them off the field.” So it went all season. At least there was no confetti in the air, unlike their losing exits in four of the past five seasons.
— Cam Inman