It wasn’t pretty Sunday night, but the 49ers found themselves in position to beat the Green Bay Packers at Levi’s Stadium. They climbed back from a 24-14 fourth-quarter deficit to take a 28-27 lead with 37 seconds left. A game-winning 51-yard field goal by Mason Crosby wrecked the 49ers’ first home game with fans since the 2020 NFC championship game, and left a lot for San Francisco to chew on with a divisional matchup with the Seahawks looming.

We went back through Sunday’s loss to try and decipher what was good and what wasn’t:

Good: WR Brandon Aiyuk

SANTA CLARA, CALIFORNIA – SEPTEMBER 26: Brandon Aiyuk #11 of the San Francisco 49ers catches a touchdown pass during the third quarter against the Green Bay Packers in the game at Levi’s Stadium on September 26, 2021 in Santa Clara, California. (Photo by Thearon W. Henderson/Getty Images)

(Photo by Thearon W. Henderson/Getty Images)

Aiyuk had his best game of the year, albeit the bar was pretty low. After hauling in just one catch for 6 yards in the first two games of the year, the second-year receiver posted four receptions for 37 yards and a touchdown against Green Bay. Inconsistent quarterback play might’ve taken some additional numbers away from Aiyuk, but he looked more like the receiver the 49ers were hoping he’d be going into 2021.

Bad: QB Jimmy Garoppolo

(Photo by Ezra Shaw/Getty Images)

Garoppolo’s numbers weren’t terrible – 25-of-40 for 257 yards with two touchdowns and one interception – and he led a go-ahead touchdown drive with 2:39 left. However, he had a bad fumble to set up a late Packers field goal that helped extend their lead from three to six, and he just didn’t look right all night. He was jumpy in the pocket, indecisive and inaccurate. It was the polar opposite of the player the 49ers had under center in Detroit and his early mistakes cost them.

Bad: Secondary

Darren Yamashita-USA TODAY Sports

It’s hard to pin the pass defense’s struggles on one player. Each person who lined up at cornerback for the 49ers got beat at some point, and strong safety Jaquiski Tartt got blown by for a big play. Aaron Rodgers completed 23 of 33 throws for 261 yards and a touchdown. Wide receiver Davante Adams was targeted 18 times and caught 12 balls for 132 yards and a touchdown. There were also two pass interference flags on 49ers corners that gave the Packers big gains on third downs. Perhaps the biggest issue with both penalties is that neither needed to be committed.

Good: FB Kyle Juszczyk

(Photo by Ezra Shaw/Getty Images)

Juszczyk was the star of the 49ers’ offense Sunday. He had a career-high five carries to go along with four receptions to post a career-best nine touches. He turned his nine touches into 61 total yards and a touchdown that gave the 49ers the lead with 37 seconds left. San Francisco is short on playmakers in their backfield and Juszczyk came up big for them against Green Bay.

Bad: Clock management

(Photo by Thearon W. Henderson/Getty Images)

There were a couple problems on the 49ers’ final drive. They had 2:39 to work with and all three timeouts. Garoppolo got them to Green Bay’s 12-yard-line with just over a minute to go. Inexplicably they stayed with a hurry-up offense and operated with too much urgency. Garoppolo snapped what turned into a go-ahead touchdown pass to Juszczyk with 12 seconds on the play clock and the game clock running. That can’t happen. Getting in the end zone is imperative, but with all three timeouts and the ball on Green Bay’s 12, it’s also important to milk the clock and get it as close to the last possession of the game as possible.

Good: TE George Kittle

Darren Yamashita-USA TODAY Sports

Kittle put together a really nice game and put up a 40-yard catch-and-run on a third-and-10 to help set up the 49ers’ final touchdown. Had they held on to win it would’ve been another case of No. 85 bailing out San Francisco late. He wound up with 92 yards on seven catches. He also posted one carry for nine yards. Kittle had nine targets, but the 49ers should probably do more to get him the football.

Bad: RB Trey Sermon

Darren Yamashita-USA TODAY Sports

Sermon’s first NFL start didn’t go great, and his lack of readiness for the league was probably illustrated in his 10 total carries. He turned those carries into just 31 yards and one touchdown. If his best carry – a 16-yard jaunt – is taken out he had nine attempts for just 15 yards. He also dropped one of his three targets and amassed only three yards on his two receptions. 12 touches for 34 yards is not going to get it done.