49ers win an ugly one, but they win 24-20. 3-0 and that’s all that matters.

Pittsburgh Steelers v San Francisco 49ers Photo by Lachlan Cunningham/Getty Images

That was....fun?

Well, that was ugly. The San Francisco 49ers made mistakes on their first five offensive drives. You couldn’t make up the problems they were having. Pressure in Jimmy Garoppolo’s face, pass-catches dropping passes that led to interceptions, fumbles. You name it, and it happened. After all that, the score was still only 6-0, Steelers.

The defense was playing great. After five Steelers drives, they had only averaged 2.3 yards per play. The defense held them in the red zone after a couple of short fields and forced punts on the other drives. That side of the ball was the reason this game was close.

We saw the offenses get on track in the second half, as JuJu Smith-Schuster was able to beat Ahkello Witherspoon, and beat a poor angle from Tarvarius Moore to take a short crossing route 76 yards for a touchdown. The 49ers offense was inconsistent, but they answered that scoring drive with one of their own. A 10-play, 75-yard drive that was capped off with a Jeff Wilson touchdown put the Niners back up 17-13.

Witherspoon left the game with an undisclosed foot injury and was listed as questionable. On the following Steelers’ possession, the Steelers attacked Jason Verrett on the second play. He committed a pass interference after getting tangled up with the wide receiver. On the very next play, he gave up a touchdown to put the Steelers ahead 20-17.

The 49ers wasted no time getting back into Pittsburgh territory. It took the offense six plays to get to the Steelers 13-yard line. A couple of plays later, Richie James went in motion, and the snap hit him in the helmet for a fumble. A costly turnover in the red zone. This was the 49ers’ fifth turnover.

Arik Armstead forced a fumble on the ensuing drive to give the ball back to the 49ers. That was the second turnover for the Steelers in a minute. I thought the defense played excellent on Sunday.

The 49ers scored after a couple of very impressive plays by Jimmy Garoppolo in the pocket. He threaded a needle to Dante Pettis for a touchdown to put the 49ers back up 24-20. The defense was able to get a sack, and that was all she wrote.

Garoppolo was fantastic in this game, despite what his numbers will say, but the game ball goes to the defense. They kept them in the game.

3-0.