| 1st | 2nd | 3rd | 4th | Tot | |
| ARI | 0 | 3 | 3 | 9 | 15 |
| SF | 0 | 6 | 0 | 10 | 16 |
They needed every last second to get it done, but thanks to a game-winning field goal from kicker Eddy Pineiro as time ran out, the San Francisco 49ers moved to 3-0 on Sunday with a 16-15 win over the Arizona Cardinals in their home opener at Levi's Stadium in Santa Clara.
The 49ers and Cardinals engaged in a slugfest for much of the game before both teams found the end zone for the first time in the fourth quarter. But after things started to look bleak for the 49ers due to a late-game safety, the 49ers held firm on defense and took the win after quarterback Mac Jones led the offense on a game-winning drive that was capped by a 35-yard field goal by Pineiro.
Jones, who started in place of the injured Brock Purdy, was hobbled by a knee issue throughout the fourth quarter but stepped up in the end with 284 yards, one touchdown and one interception on 27-of-41 passing. Wide receiver Ricky Pearsall caught eight of Jones' passes for 117 yards.
Quarterback Kyler Murray was held to 159 yards and one touchdown on 22-of-35 passing with 37 rushing yards in a losing effort.
The Cardinals dominated the clock in the first half, but not enough to lead on the scoreboard
The Cardinals began the game at their own 39-yard line after a 36-yard kickoff return from Emari Demercado, then avoided a turnover on downs on a one-yard 4th-and-1 conversion by running back James Conner. Things got a little sloppy from there with multiple pre-snap penalties, then after a batted pass on 3rd-and-long by defensive end Bryce Huff, the 49ers took over at their own 39-yard line after a 57-yard field goal attempt from kicker Chad Ryland sailed wide right.
A three-and-out from the 49ers gave the Cardinals the ball back at their own 8-yard line, after which the Cardinals punted back to the 49ers following an 11-play, 33-yard drive. The 49ers took over at their own 23-yard line after a 15-yard punt return by Skyy Moore with just under a minute remaining in the first quarter. Another three-and-out from the 49ers, sealed by a third down sack from defensive end Josh Sweat, brought the quarter to a close in a scoreless tie.
The Cardinals began their next possession at their own 35-yard line after the 49ers punt and put together a 12-play, 49-yard drive that ended in a 34-yard field goal from Ryland to take a 3-0 lead. The drive put the Cardinals at almost 19 minutes of possession in just over 21 minutes of play.
The 49ers took over at their own 32-yard line after a 31-yard return by Moore, then quickly moved across midfield on completions to Pearsall and wide receiver Marquez Valdes-Scantling. The drive moved inside the 20 after a completion to tight end Jake Tonges, but the 49ers stalled from there and were forced to settle for a 38-yard field goal from Eddy Pineiro to tie the game at 3 after a nine-play, 49-yard drive.
The 49ers forced a three-and-out after a field goal with the help of linebacker Fred Warner stuffing Conner for no gain on a 3rd-and-1, then took over at their own 14-yard line with just over two minutes remaining in the half. After a seven-yard catch and a 10-yard run by Christian McCaffrey moved the ball to the 31-yard line, the 49ers advanced across midfield on a 20-yard reception by Pearsall. The 49ers were then able to get Pineiro set up for a 51-yard field goal attempt, which he hit with 17 seconds remaining to give the 49ers a 6-3 lead. The Cardinals answered with a 34-yard kick return from Greg Dortch before a sack by Huff ended the half.
The Cardinals finished the half having held the ball for over 21 minutes while running 35 plays to the 49ers' 24. But the 49ers wound up outgaining the Cardinals (119-117) with their burst of offense towards the end of the half and entered the locker room with the lead while being set to receive the opening kickoff in the third quarter.
Third-quarter slugfest turns exciting with a wild fourth quarter
The 49ers punted after five plays on their first drive of the third quarter, then the Cardinals took over at their own 14-yard line. Conner was carted off with an injury on the second play of the drive, then after a dropped pass by a wide open Marvin Harrison Jr., the Cardinals moved out to the 45-yard line on an 18-yard completion to wide receiver Zay Jones. They moved across midfield on a 12-yard 2nd-and-15 catch by tight end Trey McBride, then after a 4th down conversion catch by wide receiver Michael Wilson, the Cardinals moved to the 14-yard line on a 29-yard run from running back Trey Benson. But the drive stalled after a dropped pass on third down by Demercado, leading to a 28-yard field goal from Ryland to tie the game at 6-6 after a 15-play, 77-yard drive.
A 30-yard return from Moore set the 49ers up at their own 36-yard line to start the next drive, then they moved downfield in a hurry on a collection of runs from McCaffrey and catches from McCaffrey and Pearsall. But after finding themselves in a 1st-and-Goal at the 6-yard line, the 49ers came up empty when three runs from McCaffrey and Brian Robinson fell short of the end zone and a 4th-and-Goal pass from Jones fell incomplete, giving the Cardinals the ball at the 1-yard line.
The 49ers made a stand on defense after that, forcing a three-and-out that nearly led to a safety when Williams pressured Murray into an intentional grounding penalty with his arm just outside the end zone. A nine-yard punt return from Moore gave the 49ers the ball at the Cardinals' 48-yard line, then a series of short gains by McCaffrey set up a 4th-and-2 at the 40-yard line. Jones and Pearsall then came through with one of the clutch plays of the game -- a 34-yard completion that once again put the 49ers in a 1st-and-Goal at the 6.
After a five-yard run from McCaffrey, the 49ers went to the air to fullback Kyle Juszczyk from one yard out to give themselves the first touchdown of the game. The catch capped a six-play, 48-yard drive, giving the 49ers a 13-6 lead with just under 11 minutes left in the game.
The Cardinals started at their own 35-yard line after a touchback, then put themselves into scoring range quickly with a 32-yard completion to a wide-open Marvin Harrison Jr. to the 49ers' 33-yard line. After a three-yard loss on a run from Benson, the Cardinals found themselves at the 1-yard line after pass interference was called on 49ers cornerback Renardo Green in the end zone. Two plays later, Murray connected with McBride for a 1-yard score to tie the game at 13.
The 49ers started the following drive at their 28-yard line after a 19-yard kick return from Isaac Guerendo, then moved across midfield after a 9-yard catch from McCaffrey, a three-yard run from McCaffrey, and a 19-yard run by Robinson. But on a 3rd-and-5 after two more runs from McCaffrey, the Cardinals came up with a crucial defensive play when Jones was picked off by safety Dadrion Taylor-Demerson, who gave the Cardinals possession at the 39-yard line after a 19-yard return.
Another defensive stand came after the interception as the 49ers forced a three-and-out on a third-down batted pass from Warner, but that play wasn't as pivotal as the one that happened just moments later. The 49ers took possession at their own 6-yard line after the punt, and two plays later, the 49ers committed the safety the Cardinals narrowly avoided earlier when guard Dominick Puni was flagged for holding on defensive lineman Calais Campbell in the end zone. The safety gave the Cardinals a 15-13 lead with 3:15 remaining.
The Cardinals began at their own 35-yard line after the ensuing kickoff, then moved to midfield and faced a 3rd-and-9 at the two-minute warning. From there, it was rookie cornerback Upton Stout's to step up as he broke up a pass intended for Jones, forcing a punt with 1:54 on the clock.
The 49ers began at the 20 after a touchback, then moved to the 41-yard line after completions to tight end Jake Tonges and Skyy Moore. After a 5-yard penalty for illegal use of hands on cornerback Denzel Burke, the 49ers moved across midfield on a 7-yard catch by wide receiver Kendrick Bourne. Jones then found Bourne again for an 11-yard gain to the 36-yard line, putting the 49ers in field goal range with 36 seconds remaining.
Following an incompletion on first down, Jones found McCaffrey for a 20-yard gain to the 16-yard line. After spiking the ball and taking a knee to run the clock to four seconds, the 49ers set up a field goal from 35 yards out. Pineiro connected on the kick, giving the 49ers a 16-15 win as time expired.
The loss was the first of the season for the Cardinals (2-1), while the 49ers stand alone atop the NFC West with two of their three wins coming in the division.
Game Notes
In addition to Purdy, the 49ers were also without wide receiver Jauan Jennings, who sat out with shoulder and ankle injuries... Defensive end Nick Bosa left the game in the first quarter with a knee injury and did not return... The 49ers now lead the series against the Cardinals 37-31, starting out 2025 with a win after dropping both games to the Cardinals in 2024... Next up for the 49ers is a home game against the Jacksonville Jaguars (2-1), set for kickoff at 4:05 p.m. ET/1:05 p.m. PT next Sunday (FOX).
Scoring Summary
- Q2 08:48 — ARI 3, SF 0
C. Ryland 34 yd. Field Goal (12 plays, 49 yds, 6:09) - Q2 04:26 — ARI 3, SF 3
E. Pineiro 38 yd. Field Goal (9 plays, 49 yds, 4:23) - Q2 00:20 — ARI 3, SF 6
E. Pineiro 51 yd. Field Goal (11 plays, 53 yds, 1:51) - Q3 06:40 — ARI 6, SF 6
C. Ryland 28 yd. Field Goal (15 plays, 77 yds, 6:35) - Q4 10:54 — ARI 6, SF 13
K. Juszczyk 1 yd. pass from M. Jones (E. Pineiro kick) (6 plays, 48 yds, 3:09) - Q4 08:42 — ARI 13, SF 13
T. McBride 1 yd. pass from K. Murray (C. Ryland kick) (4 plays, 65 yds, 2:13) - Q4 03:26 — ARI 15, SF 13
Penalty on D. Puni enforced in end zone for a Safety - Q4 00:04 — ARI 15, SF 16
E. Pineiro 35 yd. Field Goal (10 plays, 63 yds, 1:46)
Game and Player Stats
| ARI | Team Stats | SF |
| 154 | Passing Yards | 282 |
| 106 | Rushing Yards | 73 |
| 260 | Total Yards | 355 |
| 4.54 | Avg Yards per Pass | 6.93 |
| 3.79 | Avg Yards per Run | 3.65 |
| 0 | Fumbles Lost | 0 |
| 0 | Int Thrown | 1 |
| 1 | Sacks Allowed | 1 |
| 00:34:39 | Time of Pos | 00:25:21 |
| 5 | Penalties | 5 |
| Cardinals Player Stats | ||||
| Passing | Cmp/Att | Yds | TDs | INTs |
| Kyler Murray | 22/35 | 159 | 1 | 0 |
| Rushing | Att | Yds | Avg | TDs |
| Trey Benson | 10 | 42 | 4.2 | 0 |
| Kyler Murray | 6 | 37 | 6.2 | 0 |
| James Conner | 9 | 22 | 2.4 | 0 |
| Greg Dortch | 1 | 5 | 5 | 0 |
| Emari Demercado | 2 | 0 | 0 | 0 |
| Receiving | Rec | Tgt | Yds | TDs |
| Marvin Harrison | 3 | 6 | 44 | 0 |
| Trey McBride | 5 | 8 | 43 | 1 |
| Zay Jones | 2 | 3 | 25 | 0 |
| James Conner | 3 | 4 | 15 | 0 |
| Trey Benson | 3 | 4 | 9 | 0 |
| Tip Reiman | 2 | 3 | 8 | 0 |
| Elijah Higgins | 1 | 1 | 7 | 0 |
| Michael Wilson | 1 | 2 | 5 | 0 |
| Greg Dortch | 2 | 2 | 3 | 0 |
| Emari Demercado | 0 | 1 | 0 | 0 |
| Fumbles | Fum | Lost | ||
| James Conner | 1 | 0 | 0 | 0 |
| Kicking | FG | Att | Lg | XP |
| Chad Ryland | 2 | 3 | 34 | 1 |
| Punting | No | Avg | I20 | Lg |
| Blake Gillikin | 5 | 42.4 | 2 | 55 |
| Punt Returns | Att | Avg | TDs | Lg |
| Greg Dortch | 1 | 8 | 0 | 8 |
| Defense | T-A | Sck | INTs | FF |
| Akeem Davis-Gaither | 7-2 | 0 | 0 | 0 |
| Budda Baker | 6-3 | 0 | 0 | 0 |
| Jalen Thompson | 6-2 | 0 | 0 | 0 |
| Dadrion Taylor-Demerson | 4-0 | 0 | 1 | 0 |
| Max Melton | 3-1 | 0 | 0 | 0 |
| Dalvin Tomlinson | 3-0 | 0 | 0 | 0 |
| Kei'Trel Clark | 3-0 | 0 | 0 | 0 |
| Josh Sweat | 2-1 | 1 | 0 | 0 |
| Denzel Burke | 2-0 | 0 | 0 | 0 |
| Mack Wilson | 12-6 | 0 | 0 | 0 |
| Zaven Collins | 1-1 | 0 | 0 | 0 |
| Baron Browning | 1-1 | 0 | 0 | 0 |
| Dante Stills | 1-1 | 0 | 0 | 0 |
| Anthony Goodlow | 1-1 | 0 | 0 | 0 |
| Calais Campbell | 1-0 | 0 | 0 | 0 |
| PJ Mustipher | 1-0 | 0 | 0 | 0 |
| Darius Robinson | 1-0 | 0 | 0 | 0 |
| Jordan Burch | 1-0 | 0 | 0 | 0 |
| 49ers Player Stats | ||||
| Passing | Cmp/Att | Yds | TDs | INTs |
| Mac Jones | 27/41 | 284 | 1 | 1 |
| Rushing | Att | Yds | Avg | TDs |
| Christian McCaffrey | 17 | 52 | 3.1 | 0 |
| Brian Robinson | 2 | 22 | 11 | 0 |
| Mac Jones | 1 | -1 | -1 | 0 |
| Receiving | Rec | Tgt | Yds | TDs |
| Ricky Pearsall | 8 | 11 | 117 | 0 |
| Christian McCaffrey | 10 | 15 | 88 | 0 |
| Kendrick Bourne | 4 | 6 | 38 | 0 |
| Jake Tonges | 2 | 3 | 21 | 0 |
| Skyy Moore | 1 | 1 | 10 | 0 |
| Marquez Valdes-Scantling | 1 | 1 | 9 | 0 |
| Kyle Juszczyk | 1 | 1 | 1 | 1 |
| Kicking | FG | Att | Lg | XP |
| Eddy Pineiro | 3 | 3 | 51 | 1 |
| Punting | No | Avg | I20 | Lg |
| Thomas Morstead | 3 | 40 | 2 | 48 |
| Punt Returns | Att | Avg | TDs | Lg |
| Skyy Moore | 3 | 8.7 | 0 | 14 |
| Defense | T-A | Sck | INTs | FF |
| Dee Winters | 8-4 | 0 | 0 | 0 |
| Sam Okuayinonu | 7-5 | 0 | 0 | 0 |
| Marques Sigle | 7-5 | 0 | 0 | 0 |
| Bryce Huff | 5-3 | 1 | 0 | 0 |
| Upton Stout | 5-2 | 0 | 0 | 0 |
| Renardo Green | 4-3 | 0 | 0 | 0 |
| Jordan Elliott | 3-2 | 0 | 0 | 0 |
| Ji'Ayir Brown | 3-2 | 0 | 0 | 0 |
| Jason Pinnock | 3-0 | 0 | 0 | 0 |
| Deommodore Lenoir | 3-0 | 0 | 0 | 0 |
| Kalia Davis | 2-2 | 0 | 0 | 0 |
| Nick Bosa | 2-2 | 0 | 0 | 1 |
| CJ West | 2-1 | 0 | 0 | 0 |
| Mykel Williams | 2-0 | 0 | 0 | 0 |
| Fred Warner | 11-6 | 0 | 0 | 0 |
| Luke Gifford | 1-1 | 0 | 0 | 0 |
| Darrell Luter | 1-1 | 0 | 0 | 0 |
Related News
More San Francisco 49ers News
-
49ers announce roster moves ahead of Browns game; NFL fines WR Jauan Jennings $12,172
On Saturday, the San Francisco 49ers announced the following roster moves ahead of Sunday's game against the Cleveland Browns: Activated K Matt Gay from the team's practice squad (standard elevation) Activated LB Jalen Graham from the practice squad (standard... -
49ers vs. Panthers PFF grades: Best and worst from the game, plus snap counts
The San Francisco 49ers improved their record to 8-4 after a 20-9 win against the Carolina Panthers in Week 12. Today, Pro Football Focus released its grades and snap counts from the game. Which Niners stood out, and who needs more work? Highest-graded 49ers:... -
49ers GM says starting safety Ji'Ayir Brown making "game-changing plays"
His career has been up and down so far, but third-year safety Ji'Ayir Brown is beginning to play with more consistency. And he's making an impact on the San Francisco 49ers' injury-plagued defense. Coming off his best game as a pro, in which he had two interceptions against the... -
49ers' Kyle Shanahan delivers hilarious response to question about bad-weather game plan vs. Browns
If you're wondering what kind of conditions the San Francisco 49ers will face on Sunday against the Cleveland Browns, a clip from the Browns' Friday practice might offer some clues: If you're wondering what Sunday's #Browns game might look like, see today's...