The 2025 49ers preseason debut showed us flashes of brilliance amongst areas of concern. The 49ers have 19 players that didn’t dress due to injury. Coach Shanahan sat another seven starters, leaving the squad shorthanded. Notably, training camp star and rookie cornerback Upton Stout did not dress. The coaching staff must already think of him as the starting nickelback. Looking at the glass half full, many young players were provided ample opportunities to shine under the bright lights of Santa Clara.
There is a lot of history between the Niners and the Broncos. Coach Shanahan was a ball boy for the Broncos when his dad was the head coach, and John Lynch played three meaningful years in Denver. Coach Shanahan and John Lynch drafted Mike McGlinchey, D.J. Jones, Dre Greenlaw and Talanoa Hufanga to the 49ers. All four players were picked up by the Broncos in free agency. Despite the familiarity, the Niners remained focused at the task at hand this week.
Mac Jones played well to start the game. He led the second team offense down the field against a tough and proven Bronco’s defense. The highlight of the drive was a 50-yard pass to rookie Jordan Watkins on a third and five. Pressured, Jones rolled out and found his man. A few plays later, journeyman running back Patrick Taylor bounced a run to the outside, avoiding a Talanoa Hufanga tackle and ran it in for the Niners first and only touchdown of the game.

The Robert Saleh affect was on full display to start the game. The Broncos played their starters for the majority of the first quarter. Saleh’s defense gave the Broncos fits during the first quarter of the game. Rookie defensive tackles C.J. West and Alfred Collins rotated with third year player Kalia Davis. They took on double teams, pressed the pocket and stuffed the run, while newcomer Bryce Huff pressured Broncos quarterback Bo Nix off the edge.
The first team Bronco’s defense woke up on the Niners second offensive series and outside linebacker Nik Bonitto wreaked havoc on the Niners offense. Bonitto sacked Mac Jones on the first two downs and forced Jones to throw it away on third down. On first down newcomer Luke Farrell whiffed on a block. According to Coach Shanahan the offense lined up incorrectly on second down. On third down, Spencer Burford failed to receive help from a chip block. These three plays are preventable mental errors. The Niners beat themselves on this series.
The Bronco’s first team offense failed to get going against the Niners second team defense. On their second series, Coach Saleh kept up the pressure on Bo Nix. On third down, Dee Winters and nickelback Chase Lucas met Nix in the endzone forcing him to throw the ball. Nix’s throw was ruled intentional grounding and the Niners earned a safety. Lucas was all over the field for most of the game and stands a chance of finally making the active roster.
Mac Jones hit the field for one more series and threw an interception on third down. The pick was not his fault as Jordan Watkins ran the wrong route as highlighted by Coach Shanahan in the post-game interview. When Jones was questioned about it, he deflected the question, protecting the team and Watkins, showing that he is a great teammate.
The rest of the game was all about young players getting reps and film. Yesterday’s game highlights several important issues. First, the Niners seem to have a depth issue at the offensive line position. The remaining 49ers quarterbacks were under constant pressure. Second, the defense has greatly benefited from Coach Saleh’s return. They play with hunger, aggressiveness, belief and intention. The second team defense knew what they were doing and executed well.
C.J. West, Alfred Collins, and Marques Sigle were consistent contributors on defense. Neither West or Collins were washed out of a play or pancaked. They kept their feet, took on the double-team and pressured the pocket. Kalia Davis is clearly having a nice camp. Bryce Huff is an excellent addition as he both set the edge and wreaked havoc on the Bronco’s first team backfield.
Jordan Watkins put on some great film yesterday. He showcased his talent while also showing he has much to improve upon. He was not aggressive enough at the point of the catch on two of his targets. Additionally, on a third play he ran the wrong route causing an interception. He has the talent to be a significant contributor and hopefully he stays motivated and keeps working at his craft.

The Niners have two additional receivers to be excited about. Russell Gage Jr. and Demarcus Robinson both flashed their route running ability coupled with their speed. Both players bring depth and experience to the wide receiver room.
Junior Bergen and Nick Martin had disappointing debuts yesterday. Bergen failed to bring in a slant pass. Though the pass was a heater and tad high, Bergen should have hauled it in. His punt and kick returns were average at best.
Martin is clearly a fast, hard-hitting linebacker. Unfortunately, Martin spent the night making a host of mental mistakes. He could have had a ten-tackle night if he would have just broke down and not overshot his mark so many times. He was also juked out of his shoes by Bronco’s running backs on several occasions. It remains to be seen if the Niners wasted a third-round pick on this player.
Overall, the Niners put on great teaching film to improve their team. They also escaped the game with minimal injuries. The only winner in the preseason is the players that make the roster. The Niners have a lot of open spots, and the competition is fierce. On to Vegas!