The unbeaten 49ers came into the week ranked first in the NFL in total defense. The rushing attack ranked second as the first seven games didn’t require dazzling performances from quarterback Jimmy Garoppolo.
But Thursday’s game against the Arizona Cardinals was different. Garoppolo put together his first signature game of the year, which included a career-high four touchdown passes and 136.9 passer rating, his best as a starter since coming to San Francisco exactly two years to the day of Thursday’s game.
It was a Halloween performance that could change the perception Garoppolo has been nothing more than a game manager for the NFC’s only remaining unblemished team following the 28-25 victory in the desert. It marked the first time the 49ers have beaten the Cardinals on the road since 2013.
And it wouldn’t have happened without a sterling performance from the franchise quarterback.
“I thought Jimmy played a hell of a game,” Kyle Shanahan said. “His best game yet, probably.”
Garoppolo threw touchdown passes to four different targets — George Kittle, Kendrick Bourne, Emmanuel Sanders and Dante Pettis — giving San Francisco 10 pass catchers with receiving touchdowns this season.
His throws to Bourne and Pettis were particularly impressive. He found Bourne in traffic in the middle of the field from 7 yards out. The pass was tipped by an Arizona defender just before getting to the target. Bourne made the difficult catch anyway.
The 21-yard throw to Pettis was lofted perfectly away from coverage toward the right sideline. Pettis brought it in while easily getting two feet in bounds, and celebrated with a dance mimicking Michael Jackson’s “Thriller,” which was fitting on Halloween night. It made it a 28-14 game and came immediately after the Cardinals trimmed the lead to seven some three minutes earlier in the third quarter.
Three of Garoppolo’s touchdown passes came on third down. One, to Sanders, was on fourth down in the final play of the first half. The offense converted a season-high 65 percent of its third downs, and its 11 conversions were the most of the season.
The third-down throw to Pettis was not Garoppolo’s best of the game. That went to Sanders a few plays earlier that kept the drive alive on a third down. Garoppolo found his newest receiver on an out route and threw it well before Sanders broke.
“Jimmy let it go early,” Shanahan said. “I had a clean view of it, I didn’t think Emmanuel was going to get his head around when he did. It hit him right in the chest. It was impressive.”
Garoppolo’s 317 yards were the most of the season and the most since 2017 victories over Houston and Tennessee. He improved to 16-2 as a starter, giving him the third most wins by any quarterback in 18 starts since 1950.
He spent the evening covering up for the team’s shortcomings elsewhere. The defense wasn’t the same dominant unit that allowed 23 points over the last four games combined. The running game that recorded 232 yards while averaging 6.1 yards per attempt Sunday against the Panthers had just 101 against Arizona.
“We couldn’t really rely on our run game the entire game. They had a great game plan for it,” Kittle said. “I can’t say enough about just how (Garoppolo) brings us along, whether it’s along the sideline or in the huddle, just the leadership he has. The fire that he has, too. He just gets the people going.”
Added defensive tackle DeForest Buckner, who logged his fourth sack of the season: “A couple years ago, we were finding ways to lose. We couldn’t find a way to win. Just to see the growth in this team — guys are learning to finish those games and find a way to win.”
The 49ers had to make a pair of key third-down conversions on the final drive after the Cardinals cut the deficit to three with rookie Andy Isabella’s 88-yard catch and run midway through the fourth quarter. The first went to Sanders, who became San Francisco’s first receiver this season to hit triple digits with 112 yards on seven catches, converting a third-and-11 with a 16-yard reception.
The final conversion went to backup tight end Ross Dwelley, who was in the game in place of Kittle, who didn’t play much in the fourth quarter while dealing with knee and ankle injuries sustained on the first snap of the game.
The 49ers had to get one first down so seal the win after the 2-minute warning when Arizona spent all its timeouts. The Cardinals rushed just three defensive linemen, sending eight players back in coverage. Only one defender was covering Dwelley, who made one move to get the first down and clinch the victory.
“I always know where the first down marker is,” Dwelley said, “So I knew when I caught it I needed three or four extra yards, so I ducked my head to get it.”
Dwelley’s play was emblematic of the 49ers’ season. He joined the lengthy list of backups to contribute amid injuries during San Francisco’s best start since 1990. Dwelley has played fullback in place of Kyle Juszczyk, and he had to replace arguably the offense’s most indispensable player late in the game while Kittle was sidelined (Kittle indicated afterwards he doesn’t expect to miss any time with his injuries).
“I can’t really say enough about Ross and plays that he made,” Kittle said. “I’m just happy — so happy for him.”
The Cardinals got off to a fast start by scoring a touchdown on their opening series behind a strong debut performance from running back Kenyan Drake, who was added via trade Monday. He finished with 110 yards on 15 carries.
San Francisco responded with three straight touchdowns, including a the 1-yard score for Sanders on the final snap of the first half. Shanahan’s team caught a break when he initially tried going for it on fourth short. Running back Jeff Wilson Jr. was stopped short, but Cardinals first-year coach Kliff Kingsbury called timeout before the snap, giving Shanahan another chance.
He lined up Sanders in the backfield as a fullback. He leaked to the flat and was an easy target for Garoppolo for the score.
Shanahan said afterward Sanders has been better than hoped. Thursday marked his ninth day with his new team following last week’s trade from the Broncos.
“Watching him, you always knew he was a pro,” Shanahan said. “But he’s been even better than expected since he’s been here, just how unbelievably smart he’s been in picking up the offense and going out there that much. Especially here on a short week. That game would have been real tough to win without him.”
The 49ers are hoping to get reinforcements back when they begin the second half of the season Nov. 11 against the Seattle Seahawks on “Monday Night Football.” Left tackle Joe Staley is expected to return from his fractured fibula. Right tackle Mike McGlinchey is planning to return from his MCL injury, as is Juszczyk. Cornerback Ahkello Witherspoon is expected to see his first action since Week 3, when he sprained his foot against the Steelers.
There’s optimism that the return of injured starters on offense, and getting the defense back up to speed with rest following the short week, the 49ers could play even better than they have during their 8-0 start.
“The ceiling is however high you want to make it,” Buckner said. “We’ve been playing really well with guys down ... to have some of those guys back is going to be very exciting.”