| 1st | 2nd | 3rd | 4th | OT | Tot | |
| SF | 7 | 10 | 3 | 3 | 3 | 26 |
| LA | 0 | 7 | 7 | 9 | 0 | 23 |
The San Francisco 49ers delivered an improbable win on Thursday night, in more ways than one.
Coming into the game as sizable underdogs due to injuries to starting quarterback Brock Purdy (toe) and wide receivers Jauan Jennings (ankle, rib) and Ricky Pearsall (knee), among others, the 49ers rode backup quarterback Mac Jones and two huge late-game defensive stops to a 26-23 overtime win over the Los Angeles Rams at SoFi Stadium in Inglewood. Jones connected on 33-of-49 passes for 342 yards and two touchdowns while fighting through a knee injury to lead the 49ers on two decisive second half drives, while rookie defensive tackle Alfred Collins delivered a stunning forced fumble and recovery at the goal line with just over a minute left to play to keep the Rams from taking a late lead.
Then, after scoring first in overtime on a field goal, the 49ers won the game on another defensive stand, stuffing running back Kyren Williams on a fourth down run at their own 11-yard line.
Wide receiver Kendrick Bourne stepped up with a career-high 142 yards on 10 catches, while running back Christian McCaffrey had 30 touches for 139 total yards and one touchdown. Rams quarterback threw for 389 yards on 30-of-47 passing with three touchdowns in the loss.
Jones, 49ers come out firing in first half
The 49ers opened the game with an impressive drive that spanned 72 yards in eight plays and put them up 7-0 on a touchdown pass from Jones to tight end Jake Tonges. Jones connected on all five of his passes on the drive for 77 yards, 35 of those coming on a reception by Bourne that wiped out a holding penalty that put the 49ers in a 1st-and-20. McCaffrey touched the ball five times on the drive, catching two passes for 30 yards while rushing three times for ten yards. After McCaffrey gave the 49ers a 1st-and-Goal after converting on a third down run, Jones found Tonges wide open in the end zone to give the 49ers the lead.
Tonges TD!
Mac Jones goes 5/5 on the opening drive to get the @49ers on the board.
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/rm9Q3cmfJk
The Rams opened their first drive at their own 33-yard line and moved to the 44 on three plays. But after a first down incompletion, Stafford was sacked for an 11-yard loss by defensive end Bryce Huff, putting the Rams in a 3rd-and-21. That proved to be too big of a hole to dig out of for the Rams, who wound up punting to the 49ers after six plays.
Bryce Huff quickly gets to Stafford for the sack to force a 3rd and long 💪
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/ywX03GHOpV
After starting their next drive at their own 9-yard line, the 49ers quickly moved out past their own 40 after a 13-yard completion to Demarcus Robinson was complemented by a 15-yard roughing the passer penalty on linebacker Josiah Stewart. From there, the 49ers ground out a 17-play, 91-yard drive that included two 4th-and-1 conversions and a first down pass on 3rd-and-9, and it was capped off by a one-yard touchdown pass to McCaffrey. The touchdown gave the 49ers a 14-0 lead, while the drive gave the 49ers' offense 25 of the game's first 31 plays.
CMC TD 🙌
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/OMz2ecO7Gq
The Rams got things going offensively on their second possession, at least initially. After moving to the 49ers' 24-yard line on nine plays, the drive went haywire when a pitch from Stafford bounced off the hands of running back Blake Corum for a fumble. The ball was recovered at the 30-yard line by linebacker Trevis Gipson, who had been activated from the practice squad just before the game.
FUMBLE! @49ers ball.
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/VhxNeV42PW
The 49ers moved out to midfield after the fumble before a dropped third-down pass by Bourne ended the drive, then the Rams took over at their own 15-yard line following a punt. This time the Rams finished things off with their first points of the night on a 14-yard touchdown pass from Stafford to Kyren Williams. The drive spanned 85 yards in eight plays and cut the 49ers' lead to 14-7 with just over two minutes left in the half.
Stafford. Williams. TD.@RamsNFL get on the board.
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/arU1qhkqtA
The 49ers took over at their own 33-yard line after the touchdown and were able to turn their final drive of the half into points, courtesy of an Eddy Pineiro field goal as time expired. The drive spanned 48 yards in 12 plays and included a key 11-yard completion to Tonges on a 3rd-and-10 near midfield. The 49ers moved the ball to the Rams' 19-yard line, where Pineiro connected on a 37-yard attempt to give the 49ers a 17-7 halftime lead.
The 49ers outgained the Rams 233 to 137 in the first half, running 41 plays to the Rams' 23. Jones finished the half with 179 yards and two touchdowns on 15-of-23 passing, while Stafford completed 9-of-13 passes with one touchdown. McCaffrey finished the half with 18 touches for 89 total yards and one touchdown.
Rams rally in the second half, but 49ers get a huge defensive play late to help clinch overtime
The Rams began the second half with possession and moved across midfield in a hurry on a 20-yard completion to tight end Davis Allen on the second play of the half. But back-to-back dropped passes stalled the drive and forced them to settle for a 53-yard field goal attempt, which kicker Joshua Karty sailed wide right.
Good field position followed the missed field goal for the 49ers, who started their next drive at their own 43-yard line. They got a gift from the Rams on the third play of the drive when a pass interference penalty led to a first down on 3rd-and-8, then Jones connected on a 19-yard completion to Bourne to move deep into Rams territory. Jones began limping after aggravating a pre-existing knee injury on that completion, but he managed to connect on two more passes to Bourne to put the 49ers in a 1st-and-goal at the 3. The Rams stuffed the 49ers on running attempts on first and second down, then after an incomplete pass on third down, Jones fell to the turf holding his knee. Jones somewhat surprisingly jogged off the field after spending several minutes on the turf, then Pineiro entered the game to give the 49ers a 20-7 lead with a 20-yard field goal.
Mac Jones jogged off the field pic.twitter.com/HaOfOnMvqQ
— Steph Sanchez (@Steph49K) October 3, 2025
The Rams began at their own 31-yard line after the ensuing kickoff with 6:32 remaining in the half. They flipped the field in a hurry with a 34-yard pass from Stafford to wide receiver Tutu Atwell on the second play of the drive, then a 16-yard completion to wide receiver Puka Nacua moved the ball inside the 49ers' 20. An 11-yard catch by Nacua moved the ball to the 8-yard line, then after a 7-yard run by Williams to the 1, the Rams finished the job after Stafford found Nacua one more time for a touchdown. The drive took just over two minutes off the clock and cut the lead to 20-14 after Karty's extra point.
Jones came back into the game on the next possession, which began at the 27-yard line. The 49ers then put together their shortest drive of the night to that point, moving 17 yards on seven plays before punting back to the Rams. The Rams then took over at their own 12-yard line and sliced through the 49ers defense for a nine-play, 88-yard drive that culminated with an 8-yard touchdown pass to Williams. But the point-after attempt from Karty was no good after it was batted by defensive tackle Jordan Elliott, leaving the score tied at 20 with 10:39 left in the fourth quarter.
Kyren Williams with his 2nd receiving TD of the night!
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/tDtpKeCPTD
The offense continued to sputter for the 49ers, who went three-and-out after the touchdown for the first time in the game. The Rams took over at their own 30-yard line with just over nine minutes remaining and were held to a three-and-out of their own, but they were able to pin the 49ers deep in their own territory with a 59-yard punt from Ethan Evans that was downed at the 2 yard-line.
Jones dug the 49ers out of their hole with completions of nine yards and 18 yards to Bourne, then the 49ers moved to the 50 on a 16-yard catch by McCaffrey on a 3rd-and-5 play. Another 10-yard catch by Bourne moved the ball to the 40, but a first-down penalty for an illegal man downfield moved the ball back to the 45. Two incompletions and a four-yard catch by Tonges put the 49ers at the 41-yard line, after which 49ers head coach Kyle Shanahan chose to bring on Pineiro for a 59-yard field goal attempt. Pineiro snuck the ball inside the left upright for a career-long field goal to give the 49ers a 23-20 lead with under three minutes to play.
PINEIRO FROM 59 YARDS TO TAKE THE LEAD
SFvsLAR on Prime Video
— NFL (@NFL) October 3, 2025
Also streaming on @NFLPlus pic.twitter.com/4hgGwMH7u6
The Rams began at their own 35-yard line after a touchback. And as had been the case throughout the second half, they moved into 49ers territory quickly, this time with an 11-yard completion to Nacua and an 18-yard catch by Davante Adams, followed by a five-yard penalty for defensive holding. Runs by Williams with another defensive penalty moved the Rams to the 3-yard line, but then the improbable happened courtesy of Collins. As Williams seemed headed towards the end zone on a first down run, Collins punched the ball loose and recovered it at the 1-yard line, giving the 49ers the ball with just over a minute to play.
what
a
playFOOTBALL! pic.twitter.com/fgKXfFU6jF
— NFL (@NFL) October 3, 2025
The 49ers ran three consecutive running plays, forcing the Rams to take all three of their timeouts. With 53 seconds remaining, punter Thomas Morstead booted the ball past the 50, then a holding penalty wiped out what would have been a 26-yard return and gave the Rams the ball at midfield with 42 seconds. Two consecutive incompletions followed by a seven-yard completion to Williams put the Rams in a 4th-and-3, then Stafford found Williams again for a 13-yard gain to move the ball to the 49ers' 30-yard line. After an unsuccessful pass attempt towards the end zone, the Rams brought out Karty for a 48-yard attempt, which he hit to send the game to overtime tied at 23.
Another defensive stand in overtime
The 49ers opened overtime with possession after losing the coin toss, starting at their own 40 after Karty's kickoff landed outside of the 20-yard line. A 12-yard pass to Kyle Juszczyk moved the ball across the 50, then a 15-yard catch by McCaffrey moved the ball to the Rams' 33. Back-to-back completions to Tonges gave the 49ers another first down at the 22-yard line, then a 7-yard catch by McCaffrey moved the ball to the 14. But the 49ers moved backwards from there as Jones was sacked on second down by linebacker Byron Young, then after an incompletion on third down, Pineiro came on for 41-yard field goal attempt. Pineiro's kick was good, but barely, as it bounced off the upright and through for a 26-23 lead.
The Rams took over at their own 33-yard line after Pineiro's kickoff and began with a 9-yard completion to Nacua. Stafford then fired deep downfield on second down to Atwell, who picked up a 38-yard gain to the 49ers' 20-yard line. After an incomplete pass and a 4-yard catch by Williams followed by a 5-yard catch by Williams, the Rams faced a 4th-and-1 at the 11-yard line. The teams traded timeouts, then the Rams decided to try to get the first down with a run by Williams. But the 49ers penetrated for the stop, tackling Williams for no gain to seal the win.
49ERS GET THE STOP! 49ERS WIN! pic.twitter.com/zw5Hvr25NS
— NFL (@NFL) October 3, 2025
The 49ers moved to 4-1 with the win, while the Rams fell to 3-2 with the loss.
Game Notes
The Rams opened the week as 1.5-point favorites over the 49ers but moved to 8.5-point favorites by gameday... The win snapped a three-game losing streak to the Rams for the 49ers, who now hold a 79-71-3 edge in the series... Nacua set an NFL record in the second half by becoming the first player to reach 50 receptions in a team's first five games of the season... The 49ers will be back in action on October 12 in a road contest against the 3-1 Tampa Bay Buccaneers (4:25 p.m. ET/1:25 p.m. PT, CBS). Pearsall and Jennings are expected to be back for that game, as is tight end George Kittle (IR, hamstring). Purdy, according to pregame reports on Thursday, may not be ready to play.
Scoring Summary
- Q1 10:12 — SF 7, LA 0
J. Tonges 6 yd. pass from M. Jones (E. Pineiro kick) (8 plays, 72 yds, 4:51) - Q2 13:47 — SF 14, LA 0
C. McCaffrey 1 yd. pass from M. Jones (E. Pineiro kick) (17 plays, 91 yds, 8:15) - Q2 02:15 — SF 14, LA 7
K. Williams 14 yd. pass from M. Stafford (J. Karty kick) (8 plays, 85 yds, 4:02) - Q2 00:02 — SF 17, LA 7
E. Pineiro 37 yd. Field Goal (12 plays, 48 yds, 2:09) - Q3 06:36 — SF 20, LA 7
E. Pineiro 20 yd. Field Goal (12 plays, 55 yds, 6:13) - Q3 03:48 — SF 20, LA 14
P. Nacua 1 yd. pass from M. Stafford (J. Karty kick) (7 plays, 69 yds, 2:48) - Q4 10:43 — SF 20, LA 20
K. Williams 8 yd. pass from M. Stafford (kick blocked) (9 plays, 88 yds, 3:24) - Q4 02:57 — SF 23, LA 20
E. Pineiro 59 yd. Field Goal (12 plays, 57 yds, 5:12) - Q4 00:06 — SF 23, LA 23
J. Karty 48 yd. Field Goal (7 plays, 20 yds, 0:40) - Q5 05:55 — SF 26, LA 23
E. Pineiro 41 yd. Field Goal (8 plays, 37 yds, 4:09)
Game and Player Stats
| SF | Team Stats | LA |
| 333 | Passing Yards | 378 |
| 74 | Rushing Yards | 78 |
| 407 | Total Yards | 456 |
| 6.98 | Avg Yards per Pass | 8.28 |
| 2.24 | Avg Yards per Run | 4.88 |
| 0 | Fumbles Lost | 2 |
| 0 | Int Thrown | 0 |
| 1 | Sacks Allowed | 1 |
| 00:40:04 | Time of Pos | 00:26:20 |
| 8 | Penalties | 5 |
| 49ers Player Stats | ||||
| Passing | Cmp/Att | Yds | TDs | INTs |
| Mac Jones | 33/49 | 342 | 2 | 0 |
| Rushing | Att | Yds | Avg | TDs |
| Christian McCaffrey | 22 | 57 | 2.6 | 0 |
| Brian Robinson | 5 | 12 | 2.4 | 0 |
| Mac Jones | 4 | 5 | 1.3 | 0 |
| Skyy Moore | 1 | 1 | 1 | 0 |
| Kyle Juszczyk | 1 | -1 | -1 | 0 |
| Receiving | Rec | Tgt | Yds | TDs |
| Kendrick Bourne | 10 | 11 | 142 | 0 |
| Christian McCaffrey | 8 | 9 | 82 | 1 |
| Jake Tonges | 7 | 11 | 41 | 1 |
| Demarcus Robinson | 3 | 7 | 39 | 0 |
| Kyle Juszczyk | 3 | 4 | 21 | 0 |
| Marquez Valdes-Scantling | 1 | 3 | 9 | 0 |
| Luke Farrell | 1 | 2 | 8 | 0 |
| Malik Turner | 0 | 1 | 0 | 0 |
| Kicking | FG | Att | Lg | XP |
| Eddy Pineiro | 4 | 4 | 59 | 2 |
| Punting | No | Avg | I20 | Lg |
| Thomas Morstead | 4 | 36.8 | 2 | 50 |
| Defense | T-A | Sck | INTs | FF |
| Upton Stout | 8-6 | 0 | 0 | 0 |
| Deommodore Lenoir | 6-4 | 0 | 0 | 0 |
| Dee Winters | 4-1 | 0 | 0 | 0 |
| Sam Okuayinonu | 2-1 | 0 | 0 | 0 |
| Renardo Green | 2-1 | 0 | 0 | 0 |
| Bryce Huff | 2-1 | 1 | 0 | 0 |
| Alfred Collins | 2-0 | 0 | 0 | 1 |
| Marques Sigle | 13-6 | 0 | 0 | 0 |
| Fred Warner | 12-5 | 0 | 0 | 0 |
| Kalia Davis | 1-1 | 0 | 0 | 0 |
| Jordan Elliott | 1-0 | 0 | 0 | 0 |
| Jason Pinnock | 1-0 | 0 | 0 | 0 |
| Rams Player Stats | ||||
| Passing | Cmp/Att | Yds | TDs | INTs |
| Matthew Stafford | 30/47 | 389 | 3 | 0 |
| Rushing | Att | Yds | Avg | TDs |
| Kyren Williams | 14 | 65 | 4.6 | 0 |
| Blake Corum | 1 | 13 | 13 | 0 |
| Matthew Stafford | 1 | 0 | 0 | 0 |
| Receiving | Rec | Tgt | Yds | TDs |
| Davante Adams | 5 | 11 | 88 | 0 |
| Puka Nacua | 10 | 12 | 85 | 1 |
| Tutu Atwell | 2 | 4 | 72 | 0 |
| Kyren Williams | 8 | 10 | 66 | 2 |
| Jordan Whittington | 2 | 3 | 33 | 0 |
| Davis Allen | 2 | 2 | 24 | 0 |
| Terrance Ferguson | 1 | 1 | 21 | 0 |
| Colby Parkinson | 0 | 1 | 0 | 0 |
| Blake Corum | 0 | 2 | 0 | 0 |
| Fumbles | Fum | Lost | ||
| Matthew Stafford | 1 | 1 | 0 | 0 |
| Kyren Williams | 1 | 1 | 0 | 0 |
| Kicking | FG | Att | Lg | XP |
| Joshua Karty | 1 | 2 | 48 | 2 |
| Punting | No | Avg | I20 | Lg |
| Ethan Evans | 2 | 55 | 2 | 59 |
| Punt Returns | Att | Avg | TDs | Lg |
| Xavier Smith | 3 | 7 | 0 | 13 |
| Defense | T-A | Sck | INTs | FF |
| Poona Ford | 7-4 | 0 | 0 | 0 |
| Kam Curl | 7-3 | 0 | 0 | 0 |
| Cobie Durant | 6-2 | 0 | 0 | 0 |
| Jared Verse | 6-2 | 0 | 0 | 0 |
| Byron Young | 6-2 | 0.5 | 0 | 0 |
| Tyler Davis | 5-2 | 0 | 0 | 0 |
| Kobie Turner | 4-3 | 0.5 | 0 | 0 |
| Omar Speights | 4-1 | 0 | 0 | 0 |
| Braden Fiske | 3-2 | 0 | 0 | 0 |
| Darious Williams | 3-1 | 0 | 0 | 0 |
| Kamren Kinchens | 2-1 | 0 | 0 | 0 |
| Jaylen McCollough | 2-0 | 0 | 0 | 0 |
| Nate Landman | 14-6 | 0 | 0 | 0 |
| Quentin Lake | 11-4 | 0 | 0 | 0 |
| Ty Hamilton | 1-1 | 0 | 0 | 0 |
| Emmanuel Forbes | 1-0 | 0 | 0 | 0 |