SANTA CLARA – Coach Kyle Shanahan did not have many opportunities to celebrate in his first two seasons in charge of the 49ers.
But already this season the 49ers have managed to overcome a slew of correctable mistakes to pull out victories against Tampa Bay in Week 1 and on Sunday against the Pittsburgh Steelers.
The 49ers overcame five giveaways to pull out a 24-20 victory over the Steelers on Sunday at Levi’s Stadium.
“To have two games like that where things don’t go perfect, says a lot about the character of the guys in there,” Shanahan said. “I think we have been better in how we’re playing. But it also says our guys are mentally a lot stronger.
“They were pretty relentless through everything. They didn’t waver at all. They were excited at halftime. They were excited in the third, and obviously, they were really excited when we got back in.”
Yes, it was not perfect, and the grades will reflect that. After all, this club is now being held to a higher standard. Here is the 49ers’ report card from their Week 3 victory over Pittsburgh (0-3):
Raheem Mostert led the 49ers with 79 yards rushing and a 6.6-yard average. Matt Breida gained 68 yards with a 4.9 average. Jeff Wilson scored touchdowns on two shorts bursts up the middle. Those are the good deeds done by this unit.
However, Mostert lost 18 yards when he mishandled a pitch from Jimmy Garoppolo. He also lost possession on a fumble. Garoppolo and center Weston Richburg botched an exchange for another turnover. Also, they mistimed a fourth-quarter shotgun snap that resulted in another giveaway when the snap hit Richie James. These are mistakes that simply should not be made.
Garoppolo was exceptional. He hung in there and delivered some of his most-impressive throws of his 11 starts with the 49ers. Garoppolo completed 23 of 32 passes for 277 yards with one touchdown – the game-winner to Dante Pettis with 80 seconds remaining. But he also had two interceptions, as passes to Breida and Pettis were deflected off their hands and picked off.
Garoppolo’s toughness was on display. He was sacked just once and absorbed eight hits. A win is a win, but the 49ers made way too many mistakes in the passing game, too.
The key to the team’s defensive effort the past two weeks has been the 49ers’ ability to shut down the opposition’s running game. Last week, they put the clamps on Cincinnati Bengals running back Joe Mixon. On Sunday, James Conner managed just 43 yards rushing on 13 carries. The defense also came up with a huge play late in the fourth quarter when Arik Armstead forced Conner to fumble and DeForest Buckner made the recovery.
It does not get much better than how the 49ers played in the run game. Buckner had eight tackles, while Kwon Alexander added seven.
Buckner and Dee Ford had sacks. Ford and Armstead put pressure on Steelers rookie quarterback Mason Rudolph, which led directly to K’Waun Williams’ interception. That play provided the 49ers’ offense with a short field and, ultimately, the go-ahead points early in the third quarter. But Ahkello Witherspoon gave up a 76-yard touchdown pass to JuJu Smith-Schuster on a crossing route – a play that Tarvarius Moore should have prevented had he taken a better angle.
After Witherspoon left the lineup with a foot injury, veteran Jason Verrett stepped in and had a disastrous back-to-back sequence of plays. He was flagged with a 32-yard penalty for pass interference, then yielded a 39-yard touchdown pass to Diontae Johnson. The coaches benched Verrett and inserted Emmanuel Moseley, who was on the field as the Steelers’ final two possessions stalled.
New long-snapper Jon Condo, a 14-year veteran, looked a little shaky early in the game. Punter Mitch Wishnowsky had a very good net average of 43.3 yards on three punts, though one of them went into the end zone for a touchback. Robbie Gould made a 24-yard field goal and his three extra points. Richie James had a solid showing with a 10.6 average on five punt returns.
[RELATED: Pettis redeems himself with game-winning TD]
There is no way the 49ers of the past five seasons – the non-playoff years – would have been able to overcome all the mistakes and still won this game. So there’s that. There were glaring mistakes – inexcusable mistakes – on both sides of the ball. Most of the miscues came on offense, but the defense can also clean up some errors.
After winning two games on the road to open the season, the 49ers would have given back all of the good vibes if they had lost this game. This game was important. Their victory was not pretty. But, ultimately, it was a huge win.
Still, I cannot bring myself to give this performance a “B.” And that might be the biggest compliment I can give the 49ers for where they have been and where they are capable of going.