San Francisco needed 16 seconds to reach the end zone and never trailed after that, beating Arizona 41-22 at State Farm Stadium on November 16, 2025, in a Week 11 game the Cardinals controlled the yardage and the clock but not the scoreboard. Arizona ran 71 plays to the 49ers’ 52, held the ball for more than 34 minutes, and out-gained San Francisco 488 yards to 281. Three turnovers and 17 penalties buried all of it.
Brock Purdy, in his first start since a toe injury sidelined him in late September, completed 19 of 26 passes for 200 yards and three touchdowns. Christian McCaffrey ran for two scores and caught a third. Jacoby Brissett threw for 452 yards and completed a regular-season record 47 passes for the Cardinals, but two interceptions and a lost fumble kept Arizona chasing from the opening kickoff.
Table of Contents
Game leaders
Category
49ers
Cardinals
Passing
Brock Purdy 200 yds, 3 TD (19/26)
Jacoby Brissett 452 yds, 2 TD, 2 INT (47/57)
Rushing
Christian McCaffrey 81 yds, 2 TD (13 car)
Bam Knight 24 yds, 1 TD (5 car)
Receiving
George Kittle 67 yds, 2 TD (6 rec)
Michael Wilson 185 yds (15 rec)
Tackles
Curtis Robinson 12
Cody Simon 12
Sacks
None
Josh Sweat 1
Final score by quarter
Team
1
2
3
4
Final
San Francisco (7-4)
13
12
10
6
41
Arizona (3-7)
7
3
0
12
22
How the 49ers vs Cardinals scoring unfolded
Qtr
Time
Team
Play
Score
1
14:44
SF
Christian McCaffrey 1 yd run (Eddy Pineiro kick)
7-0
1
9:51
SF
George Kittle 30 yd pass from Brock Purdy (PAT blocked)
13-0
1
4:58
ARI
Bam Knight 6 yd run (Chad Ryland kick)
13-7
2
13:39
SF
Christian McCaffrey 9 yd pass from Brock Purdy (PAT failed)
19-7
2
6:29
ARI
Chad Ryland 26 yd field goal
19-10
2
1:01
SF
Eddy Pineiro 48 yd field goal
22-10
2
0:00
SF
Eddy Pineiro 47 yd field goal
25-10
3
7:27
SF
Eddy Pineiro 47 yd field goal
28-10
3
2:32
SF
George Kittle 4 yd pass from Brock Purdy (Pineiro kick)
35-10
4
8:28
ARI
Trey McBride 10 yd pass from Jacoby Brissett (2-pt run failed)
Arizona recorded no interceptions. Elijah Higgins lost the Cardinals’ only fumble, and Keion White recovered it for San Francisco.
Special teams stats
Kicker
FG
Long
XP
Pts
Eddy Pineiro (SF)
3/3
48
2/4
11
Chad Ryland (ARI)
1/2
26
1/1
4
Punter
No
Yds
Avg
In 20
Long
Thomas Morstead (SF)
3
139
46.3
1
55
Pat O’Donnell (ARI)
3
122
40.7
0
46
Returner
Type
No
Yds
Avg
Long
Skyy Moore (SF)
Kickoff
1
98
98.0
98
Brian Robinson Jr. (SF)
Kickoff
1
42
42.0
42
Skyy Moore (SF)
Punt
1
9
9.0
9
Greg Dortch (ARI)
Kickoff
3
79
26.3
31
Andre Baccellia (ARI)
Kickoff
3
74
24.7
27
Michael Carter (ARI)
Kickoff
1
27
27.0
27
Greg Dortch (ARI)
Punt
2
51
25.5
40
Game information
The teams kicked off at 4:05 p.m. local time at State Farm Stadium in Glendale, Arizona, before an announced crowd of 65,032, with Carl Cheffers as referee. Kyle Shanahan coached San Francisco and Jonathan Gannon coached Arizona. The Cardinals played without receiver Marvin Harrison Jr., who sat out following appendicitis surgery earlier that week. San Francisco lost Robert Beal Jr. to a concussion, Tatum Bethune to an ankle injury, and Eddy Pineiro to a hamstring injury during the game, while Arizona saw Emari Demercado (ankle), Garrett Williams (shin), and Kelvin Beachum (groin) exit at different points. Jacoby Brissett made his fifth straight start in place of the injured Kyler Murray.
Records and takeaways
Two stat lines defined the afternoon, and only one of them decided it. Brissett set an NFL regular-season record with 47 completions, threw for 452 yards, and watched Michael Wilson catch 15 passes for a career-high 185. By total yards, total plays, and time of possession, Arizona controlled the afternoon. The scoreboard ran the other way. McCaffrey scored three times and pushed his own league record to 17 career games with both a rushing and a receiving touchdown. Kittle caught the 50th touchdown of his career and moved past Steve Young and Brent Jones for the most quarterback-to-tight-end scores in 49ers history. Purdy played turnover-free football at a 133.5 rating in his first game back from injury. Three Arizona giveaways and 130 yards in penalties accounted for the difference, and for the 19 points that stood between a record-setting passing day and a win.
Frequently asked questions
What was the final score of the Cardinals vs 49ers game?
San Francisco won 41-22 at State Farm Stadium on November 16, 2025. The 49ers led 25-10 at halftime and won each of the first three quarters before Arizona took the fourth 12-6.
Who led the 49ers vs Cardinals game in passing yards?
Jacoby Brissett threw for 452 yards on 47 of 57 attempts, the most completions in a regular-season game in NFL history. Brock Purdy added 200 yards and three touchdowns on 19 of 26 passing for San Francisco.
How many touchdowns did Christian McCaffrey score against the Cardinals?
McCaffrey scored three, two rushing and one receiving. He carried 13 times for 81 yards and caught five passes for 40 yards, giving him 121 total yards on the day.
Who had the most receiving yards in Cardinals vs 49ers?
Michael Wilson led all receivers with 185 yards on 15 catches, a career high. Trey McBride followed with 115 yards and a touchdown on 10 receptions.
How many penalties did the Cardinals have?
Arizona was flagged 17 times for 130 yards, a franchise record and the most by any NFL team that season. Eleven of those penalties came in the first half.
I'm Sean L. Garcia, a Swedish-born American journalist based in Washington with over six years of experience reporting across local publications and digital media. I hold a Bachelor of Arts in Journalism and have spent the better part of my career covering the full spectrum of news, from breaking world affairs and domestic politics to sports analysis, consumer technology, automotive industry developments, the business of entertainment, celebrity culture, gaming, health, and the cultural moments that define how people actually live. I launched Daily Info Magazine on April 05, 2026, because I wanted to build one publication where readers never have to go elsewhere, a destination backed by real reporting, proper sourcing, and an editorial team that takes accuracy seriously across every beat we cover. I serve as Editor-in-Chief and continue to report, write, and publish alongside our team of writers, researchers, and editors every single day.