It was bound to happen. The second Jimmy Garoppolo had a bad game, the wolves would be at the gate.
It only took one week and here we are.
After an offseason filled with questions about his ability to lead the 49ers to a Super Bowl, Garoppolo came out in Week 1 against the Arizona Cardinals and laid an egg at Levi's Stadium as the defending NFC champions fell 24-20.
The loss should fall squarely on Garoppolo's shoulder. While his numbers look decent, the 28-year-old failed to come through when it mattered most. He was just 8-for-17 in the second half and missed an open Kendrick Bourne for what would have been the game-winning touchdown before failing to connect with Trent Taylor on fourth-and-5 from the Cardinal's 16-yard line with 33 second left.
NBC Sports' Chris Simms took Garoppolo to task for his poor showing to open the season.
"What we saw at the end of the game, I have to address that," Simms said on Pro Football Talk. "There just was quite honestly throws that should be hit for touchdowns, that could have won the game. There was an out-and-up to Kendrick Bourne and Bourne -- I know I saw on social media last night that he said it was his fault and that he needed to come back. He's being a great teammate. That was a crap throw. I don't know what else to say.
"And then on the fourth down, the guy is open. He threw it late, threw it behind him, threw it soft. Let a guy break on the ball and he knocks it away."
For the game, Garoppolo was 19-for-33 for 259 yards and two touchdowns, but numbers can be deceiving. Seventy-six of those yards came on a touchdown pass to Raheem Mostert that saw the running back rack up 71 yards after the catch. Another 41 of them came on a pass to Kyle Juszczyk.
Garoppolo missed a number of easy throws. His footwork was spotty and his pocket presence was shaky.
Missing Bourne and Taylor cost the 49ers a Week 1 win. But another "crappy throw" almost cost them star tight end George Kittle.
Late in the second quarter, the 49ers called a screen for Kittle on the Cardinals' 8-yard line. But Garoppolo sailed the easy pitch-and-catch throw, forcing Kittle to jump to for the pass. Cardinals safety Budda Baker shed his block and hit an exposed Kittle in the knee, forcing the star tight end to limp off the field.
Kittle returned but he wasn't the same after the hit and did not record a catch in the second half.
The 49ers are built to win now, but it's going to come down to whether or not Garoppolo can make the leap we heard about all offseason. After one game, it's clear he isn't there yet to Simms.
"There were a number of underwhelming throws from Jimmy Garoppolo," Simms said. "The question of the 49ers is still going to be Jimmy Garoppolo until he shuts everybody up. What we saw yesterday is when the Shanahan run scheme can't dominate and serve up plays on a silver platter, can Jimmy Garoppolo pick up the slack and go, 'Hey guys, I make $27.5 million jump on my shoulders and I'll make some plays here.'
"And that's been really spotty through his career there in San Francisco, so we'll see where it goes."
Garoppolo showed flashes of greatness last season. But the 49ers can't afford him to be hot and cold in 2020. They are built to win now, if Garoppolo can take them there.