East Rutherford, N.J. — With Christian McCaffrey and Brian Robinson Jr. slicing through defenders almost at will, San Francisco coach Kyle Shanahan decided there was no reason to change the plan.
“I thought about calling a few passes,” Shanahan admitted. “Then I said, ‘Screw it — just keep running it.’”
The 49ers followed that philosophy to perfection Sunday, pounding the New York Giants for 159 rushing yards on 39 carries and cruising to a 34–24 victory at MetLife Stadium.
McCaffrey led the charge with 173 total yards, including 106 rushing on 28 carries and 67 receiving. The visiting crowd, filled with red jerseys, serenaded him with chants of “CMC! CMC!” after his fourth-quarter touchdown sealed the win.
A week after recording a franchise-low 10 rushing attempts, San Francisco (6–3) reestablished its identity on the ground — and it worked to near perfection.
McCaffrey, Robinson Power the Offense
McCaffrey, who scored both a rushing and receiving touchdown for the 16th time in his career — breaking Marshall Faulk’s NFL record — set the tone early and never let up. Robinson complemented him with 10.6 yards per carry, highlighted by an 18-yard touchdown that sent many Giants fans heading for the exits.
“He runs so hard,” McCaffrey said of Robinson. “Having him out there pushes me. When we’re both in rhythm, the game just flows. It’s exciting.”
Quarterback Daniel Jones — filling in for the injured Brock Purdy for a fifth straight week — managed the offense efficiently, completing 19 of 24 passes for 235 yards and tossing touchdowns to McCaffrey and Jauan Jennings.

Jones overcame an early fumble, recovered by New York’s Abdul Carter after a strip from Brian Burns, to improve to 5–2 as a starter this season.
“This game felt like a playoff atmosphere,” Jones said. “We answered the bell today. The challenge now is to stay focused and not get complacent.”
Defense Rebounds After Early Lapse
After allowing a touchdown on their opponent’s opening drive for the first time this season, the 49ers’ defense quickly regrouped. The pass rush, quiet in recent weeks, finally came alive. Clelin Ferrell and Sam Okuayinonu each recorded sacks on Giants quarterback Jaxson Dart, who managed 191 yards and two late touchdowns but spent most of the afternoon under pressure.
“Chasing Dart around all day is no small task,” Shanahan said. “But I thought our defensive line really swarmed and set the tone.”
Giants Continue to Spiral
For the Giants (2–7), it was another afternoon of frustration. Dart connected with Theo Johnson and Gunner Olszewski for touchdowns late in the game, but much of the damage had already been done. Drops by Johnson and Wan’Dale Robinson on third downs killed promising drives, while missed tackles and special teams miscues added to New York’s struggles.
A plane flew over MetLife Stadium before kickoff, carrying a banner that read:
“Mr. Mara, enough is enough — clean house.”
After the loss — the Giants’ third straight, all by at least 33 points — head coach Brian Daboll faced questions about the team’s direction.
“We’re not where we need to be,” Daboll said. “There are things improving, but there are still too many areas where we’re falling short. We’ve got to keep working.”
Injury Report
- 49ers: DL Mykel Williams left with a knee injury that Shanahan fears is a torn ACL. QB Brock Purdy remained inactive after being listed as questionable.
- Giants: C John Michael Schmitz (shin), ILB Darius Muasau (ankle), and WR Beaux Collins (neck) all exited the game. CBs Paulson Adebo (knee), Cor’Dale Flott (concussion), S Jevon Holland (knee), TE Daniel Bellinger (neck), and RT Jermaine Eluemunor (pectoral) were inactive.
Up Next:
49ers: Host the Los Angeles Rams next Sunday.
Giants: Travel to face the Chicago Bears.




