The 49ers defeated the Denver Broncos 24-14 to move to 4-0 on the season. It was a defensive battle for most of the game until a turnover and a late Brock Purdy-to-George Kittle touchdown closed it out. Dre Greenlaw got some revenge on his former team, and we saw how the 49ers were able to manage and finish a tough game.

49ers Offense

The 49ers offense put up 358 total yards — 218 through the air and 140 on the ground — with zero turnovers and, for the fourth week in a row, zero sacks allowed.

Brock Purdy went 19/30 for 218 yards with two touchdowns and added 29 yards on the ground. He had another solid game. Christian McCaffrey had 15 carries for 52 yards and a touchdown, along with three receptions for 18 yards. CMC’s workload so far this season has been on the lighter side.

Mike Evans played through a rib injury and grabbed five receptions for 76 yards. He and Brock look like they’ve developed strong chemistry. George Kittle finished with four receptions for 70 yards, including a 56-yard touchdown in the fourth quarter that sealed the game. Deebo Samuel Sr. added five receptions for 26 yards and a touchdown, along with three carries for 44 yards.

Overall, the 49ers offense went up against a really good Denver defense. It wasn’t pretty, but in the end it was Purdy. The offensive line played great again — giving up zero sacks through four weeks has been impressive. The running game still looks like a work in progress, but that may have a lot to do with how CMC is being used. This offense is still evolving, and with several skill players set to return from IR in the coming weeks, things could get interesting.

49ers
Oct 4, 2026; Santa Clara, California, USA; San Francisco 49ers running back Christian McCaffrey (23) reacts with San Francisco 49ers tight end George Kittle (85) after scoring a touchdown against the Denver Broncos during the second half at Levi’s Stadium. Mandatory Credit: David Gonzales-Imagn Images

49ers Defense

The 49ers defense gave up 296 yards — 214 through the air and 82 rushing — with no sacks and no forced turnovers. The defensive line had a quiet game, producing no sacks and only a few pressures. The run defense looks improved, but the pass rush is still a work in progress.

Dre Greenlaw didn’t hold back against his former team, recording 12 total tackles along with some choice words for his former coach. Fred Warner added seven tackles and had an ultimate bro moment when he kept Greenlaw from really letting Sean Payton have it.

The secondary played really well and didn’t give up any big plays. Sometimes the less you hear from a secondary, the better.

Overall, the 49ers’ defense looks good. They still need to figure out the pass rush, but they’ve improved against the run.

Special Teams

Siran Neal recovered a fumble on a punt, redeeming himself after last week’s muff. Eddy Pineiro went 1-for-2 on field goal attempts — his miss was the result of a block — and went 3-for-3 on PATs

Coaching

The 49ers played well in all three phases of the game. This was their first real test of the season, and they passed. They also committed only one penalty for five yards.

The Opponent

49ers
Oct 4, 2026; Santa Clara, California, USA; Denver Broncos offensive tackle Mike McGlinchey (left) blocks San Francisco 49ers defensive tackle Osa Odighizuwa (92) during the fourth quarter at Levi’s Stadium. Mandatory Credit: Darren Yamashita-Imagn Images

The Broncos look like a really good team going through some growing pains. They host the 0-4 Los Angeles Chargers next.

Looking Ahead

The 49ers head to Seattle to play the 3-1 Seahawks. The winner will take first place in the NFC West.

End Of My 49ers Rant

Through four weeks, the 49ers look balanced on both sides of the ball with plenty of room to improve. Brock Purdy continues to show growth week in and week out, and the offensive line is a big part of that. The 49ers have their biggest test of the season to this point — time to see if they can hang with the defending champs.