Final2025 Week 12

Levi's Stadium, Santa Clara, CA

Carolina Panthers vs San Francisco 49ers

Carolina Panthers

Away

9

San Francisco 49ers

HomeWon

20

Scoring by quarter
TeamQ1Q2Q3Q4Final
Panthers03609
49ers737320

CAR 9SF 20 Final

  • Passing leader

    Brock Purdy

    SF · QB

    10.3PPR pts

    23/32, 193 YDS, 1 TD, 3 INT

  • Top fantasy scorer

    Christian McCaffrey

    SF · RB

    27.2PPR pts

    24 ATT, 89 YDS, 1 TD, 7 REC, 53 REC YDS

  • Panthers leader

    Tetairoa McMillan

    CAR · WR

    11.5PPR pts

    2 REC, 35 YDS, 1 TD

  • Defensive playmaker

    Ji'Ayir Brown

    SF

    2 INT, 5 TKL

49ers 20, Panthers 9: San Francisco beats Carolina

San Francisco led 10–3 at halftime and outscored Carolina 10–6 after the break to win 20–9. The 49ers finished with a 340–230 edge in total offense.

The Panthers went 1-for-7 on third down and committed two turnovers, while the 49ers kept the ball for 37:42.

Key advantages

  • +110 total yards SF 340 · CAR 230
  • +40% third-down rate SF 54% · CAR 14%
  • +15:24 time of possession SF 37:42 · CAR 22:18

Game Highlights

Official NFL highlights · Opens from YouTube

Got a Panther or 49er on your fantasy team?

Check their next matchup with the Start/Sit Tool, compare their value in the Fantasy Trade Calculator, or connect your league for personalized advice in Redraft Command.

Connect your league

Works with Sleeper, ESPN and Fleaflicker. No password needed.

Why the 49ers Won

San Francisco won the third-down and time of possession battles.

Team stats comparison, Panthers vs 49ers
PanthersStat49ers
230Total yards340
14%Third-down conversion54%
22:18Time of possession37:42
Other team stats
5.3Yards per play4.9
43Plays70
2Turnovers3

Scoring Summary

The 49ers scored two touchdowns and two field goals; the Panthers scored one touchdown and one field goal.

Scoring plays, Panthers vs 49ers
TimeTeamPlayCARSF
1st quarter
6:17SFBrock Purdy → Jauan Jennings, 12-yard TD Takes leadMatt Gay XP07
2nd quarter
2:28CARRyan Fitzgerald 25-yard FG37
1:00SFMatt Gay 47-yard FG Extends lead310
3rd quarter
4:42SFChristian McCaffrey 12-yard TD run Extends leadMatt Gay XP317
0:49CARBryce Young → Tetairoa McMillan, 29-yard TD2-pt try failed917
4th quarter
9:21SFMatt Gay 29-yard FG Extends lead920

Fantasy Points: Panthers vs 49ers, Week 12 2025

Fantasy leaders

  1. Christian McCaffreySFRB27.2 PTSRB2
  2. Jauan JenningsSFWR15.1 PTSWR19
  3. George KittleSFTE13.8 PTSTE6
  4. Tetairoa McMillanCARWR11.5 PTSWR29

Player Stats

Quarterbacks

Quarterback statistics
PlayerFPTSFINCMP/ATTPass YDSTDINTRush ATTRush YDSRush TDRateStart/Sit
Brock PurdySFQB10.3QB2023/3219313616058.5Start/Sit →
Bryce YoungCARQB10.3QB2118/2916912415060.8Start/Sit →

WRs, RBs, & TEs

Receiver, running back and tight end statistics
PlayerFPTSFINPOSRush ATTRush YDSRush TDTGTRECRec YDSRec TDStart/Sit
Christian McCaffreySFRB27.2RB2RB2489177530Start/Sit →
Jauan JenningsSFWR15.1WR19WR———75411Start/Sit →
George KittleSFTE13.8TE6TE———106780Start/Sit →
Tetairoa McMillanCARWR11.5WR29WR———72351Start/Sit →
Rico DowdleCARRB11.4RB21RB638044360Start/Sit →
Chuba HubbardCARRB8.3RB29RB316044270Start/Sit →
Jalen CokerCARWR6.2WR47WR———43320Start/Sit →
Brian RobinsonSFRB5.4RB40RB74002140
Xavier LegetteCARWR5.2WR55WR———53220Start/Sit →
Ricky PearsallSFWR2.8WR77WR1204260
Jimmy HornCARWR2.1WR83WR———11110
Demarcus RobinsonSFWR1.8WR88WR———1180
Ja'Tavion SandersCARTE1.6TE50TE———1160Start/Sit →
Luke FarrellSFTE1.3TE55TE———1130Start/Sit →
Mitchell EvansCARTE0.0—TE———1000Start/Sit →

Fantasy Usage

Carolina Panthers

Snap Share

  1. Tetairoa McMillanWR42 snaps91%
  2. Jalen CokerWR38 snaps83%
  3. Xavier LegetteWR31 snaps67%
  4. Rico DowdleRB30 snaps65%
  5. Ja'Tavion SandersTE26 snaps57%

Target Share27 targets

  1. Tetairoa McMillan26%, 7 targets
  2. Xavier Legette19%, 5 targets
  3. Rico Dowdle15%, 4 targets
  4. Chuba Hubbard15%, 4 targets
  5. Jalen Coker15%, 4 targets
  6. Other11%, 3 targets

Carry Share13 carries

  1. Rico Dowdle46%, 6 carries
  2. Bryce Young31%, 4 carries
  3. Chuba Hubbard23%, 3 carries

San Francisco 49ers

Snap Share

  1. George KittleTE64 snaps91%
  2. Jauan JenningsWR63 snaps90%
  3. Christian McCaffreyRB58 snaps83%
  4. Ricky PearsallWR53 snaps76%
  5. Demarcus RobinsonWR38 snaps54%

Target Share32 targets

  1. George Kittle31%, 10 targets
  2. Christian McCaffrey22%, 7 targets
  3. Jauan Jennings22%, 7 targets
  4. Ricky Pearsall13%, 4 targets
  5. Brian Robinson6%, 2 targets
  6. Other6%, 2 targets

Carry Share38 carries

  1. Christian McCaffrey63%, 24 carries
  2. Brian Robinson18%, 7 carries
  3. Brock Purdy16%, 6 carries
  4. Ricky Pearsall3%, 1 carries
View full usage tableHide full usage table
Offensive snaps and share for the skill positions
PlayerSNAPSSNAP %TGTTGT %CAR
George KittleSFTE6491%1031%0
Tetairoa McMillanCARWR4291%726%0
Jauan JenningsSFWR6390%722%0
Christian McCaffreySFRB5883%722%24
Jalen CokerCARWR3883%415%0
Ricky PearsallSFWR5376%413%1
Xavier LegetteCARWR3167%519%0
Rico DowdleCARRB3065%415%6
Ja'Tavion SandersCARTE2657%14%0
Demarcus RobinsonSFWR3854%13%0
Tommy TrembleCARTE2248%00%0
Chuba HubbardCARRB1635%415%3
Luke FarrellSFTE1927%13%0
Mitchell EvansCARTE1022%14%0
Jimmy HornCARWR1022%14%0
Brian RobinsonSFRB1217%26%7
Brycen TremayneCARWR49%00%0
Kendrick BourneSFWR69%00%0
Skyy MooreSFWR57%00%0
Jake TongesSFTE23%00%0

Fantasy Points vs Expected

Expected points (xFP) are what a player's pass attempts, carries and targets are worth at the league's average rates; the difference is what the player made of them.

Usage and expected fantasy points
PlayerPTSxFPvs xFPSnap%UsageRte%Pass attCarCar%TgtTgt%
Christian McCaffreySF · RB27.227.4−0.283%63% car—02463%722%
Brock PurdySF · QB10.318.1−7.8100%32 att—32616%00%
George KittleSF · TE13.817.0−3.291%31% tgt—000%1031%
Bryce YoungCAR · QB10.315.5−5.2100%29 att—29431%00%
Jauan JenningsSF · WR15.111.9+3.290%22% tgt—000%722%
Tetairoa McMillanCAR · WR11.511.9−0.491%26% tgt—000%726%
Rico DowdleCAR · RB11.410.7+0.765%46% car—0646%415%
Chuba HubbardCAR · RB8.38.8−0.535%23% car—0323%415%
Xavier LegetteCAR · WR5.28.5−3.367%19% tgt—000%519%
Brian Robinson Jr.SF · RB5.47.9−2.517%18% car—0718%26%
Ricky PearsallSF · WR2.87.5−4.776%13% tgt—013%413%
Jalen CokerCAR · WR6.26.8−0.683%15% tgt—000%415%
Demarcus RobinsonSF · WR1.81.7+0.154%3% tgt—000%13%
Ja'Tavion SandersCAR · TE1.61.7−0.157%4% tgt—000%14%
Jimmy Horn Jr.CAR · WR2.11.7+0.422%4% tgt—000%14%
Luke FarrellSF · TE1.31.7−0.427%3% tgt—000%13%
Mitchell EvansCAR · TE0.01.7−1.722%4% tgt—000%14%

Team totals: Panthers 27 targets and 13 carries; 49ers 32 targets and 38 carries. Shares are from the box score. Snap counts are from the weekly player logs (Sleeper), and include plays wiped out by penalties. Route counts, air yards and red-zone touches appear when the tracking feed is connected. League-average rates from the 2025 season: 1.70 PPR points per target (67% catch rate), 0.65 per carry and 0.44 per pass attempt. They don't adjust for field position or target depth.

Fantasy Verdicts

Bryce Young Unlucky

CAR · QB · 10.3 pts on 15.5 expected

18 of 29 passing for 169 yards, 1 touchdown, 2 interceptions; 4 carries for 15 yards.

Verdict: The role was there, worth 15.5 points at league-average rates; the production wasn't.

Start/Sit: Bryce Young →

Brock Purdy Unlucky

SF · QB · 10.3 pts on 18.1 expected

23 of 32 passing for 193 yards, 1 touchdown, 3 interceptions; 6 carries for 16 yards.

Verdict: The role was there, worth 18.1 points at league-average rates; the production wasn't.

Start/Sit: Brock Purdy →

Tetairoa McMillan

CAR · WR · 11.5 pts on 11.9 expected

7 targets (26% of the team's), 2 catches for 35 yards and 1 touchdown.

Verdict: The points matched the role, 11.9 expected.

Start/Sit: Tetairoa McMillan →

Rico Dowdle

CAR · RB · 11.4 pts on 10.7 expected

4 targets (15% of the team's), 4 catches for 36 yards; 6 carries (46% of the team's) for 38 yards.

Verdict: The points matched the role, 10.7 expected.

Start/Sit: Rico Dowdle →

Christian McCaffrey Volume, no payoff

SF · RB · 27.2 pts on 27.4 expected

7 targets (22% of the team's), 7 catches for 53 yards; 24 carries (63% of the team's) for 89 yards and 1 touchdown.

Verdict: The points matched the role, 27.4 expected.

Start/Sit: Christian McCaffrey →

George Kittle Volume, no payoff

SF · TE · 13.8 pts on 17.0 expected

10 targets (31% of the team's), 6 catches for 78 yards.

Verdict: The points matched the role, 17.0 expected.

Start/Sit: George Kittle →

Jalen Coker

CAR · WR · 6.2 pts on 6.8 expected

4 targets (15% of the team's), 3 catches for 32 yards.

Verdict: The points matched the role, 6.8 expected.

Start/Sit: Jalen Coker →

Stock Up, Stock Down

Carolina Panthers

  • Stock up: Jalen Coker played 83% of the snaps, up from a 62% season average.

Fantasy Matchups

Fantasy points allowed per game by position, 2025 through Week 18.

Fantasy points allowed per game by position, Panthers defense and 49ers defense
Points allowed toPanthers D49ers D
QBs14.717.5
RBs23.521.2
WRs27.132.1
TEs13.714.8

Regular season, summed from each game's box score and scored with this page's rules.

How the Game Swung

San Francisco opened at 70% win probability and passed 98% in the third quarter on the way to the win.

49ers win probability

49ers win probability by game minute49ers started at 70%, stood at 86% at halftime and finished at 100%, across 6 scoring plays.Q1Q2Q3Q4100%50%0%

Key Swings

  1. +17Purdy → Jennings, 12-yd TD68% → 85%Q1 6:17
  2. −8Fitzgerald 25-yd FG86% → 78%Q2 2:28
  3. +8Gay 47-yd FG78% → 86%Q2 1:00
  4. +10McCaffrey 12-yd TD run89% → 98%Q3 4:42
  5. −7Young → McMillan, 29-yd TD99% → 92%Q3 0:49

Swing in 49ers win probability, in points

Play Calling and Possessions

Play calling, Panthers vs 49ers
Carolina PanthersMeasureSan Francisco 49ers
43Plays70
70%Pass rate46%
5.4Yds / dropback6.0
5.3Yds / carry3.9
1/7Third downs7/13

Efficiency edge San Francisco ran 27 more plays and gained 0.6 more yards per dropback.

  • Top targets
  • CAR McMillan 26% · Legette 19% · Hubbard 15%
  • SF Kittle 31% · McCaffrey 22% · Jennings 22%

Possession Results

How each possession ended, Panthers vs 49ers
ResultCARSF
Touchdowns12
Field goals12
Punts41
Turnovers23
Missed field goals10

CAR turnover edge: +1

  • The 49ers opened the scoring on their first possession, a 15-play, 72-yard drive that ended in a touchdown.
  • The 49ers drained the clock with two second-half drives of six to eight minutes.
All 19 possessions, drive by drive
Drive chart
TeamStartPlaysYardsTimeResult
SFQ1 15:0015728:43Touchdown
CARQ1 6:17372:37Punt
SFQ1 3:40100:11Interception
CARQ1 3:294152:07Interception
SFQ1 1:2212526:47Interception
CARQ2 9:35381:35Punt
SFQ2 8:003181:41Interception
CARQ2 6:197263:51Field goal
SFQ2 2:286251:28Field goal
CARQ2 1:003-40:43Punt
SFQ2 0:173280:17End of half
CARQ3 15:004212:35Punt
SFQ3 12:2513807:43Touchdown
CARQ3 4:428683:53Touchdown
SFQ3 0:4910596:28Field goal
CARQ4 9:216322:54Interception
SFQ4 6:27361:43Punt
CARQ4 4:447272:03Missed FG
SFQ4 2:416102:41End of game
About these numbers

Possessions that ended with the clock running out at the half or the end of the game aren't counted.

Personnel groupings, average depth of target and pass rate over expected appear when the tracking feed is connected.

Panthers vs 49ers Head-to-Head

The Panthers and 49ers first met in 1995 and have played 24 times since.

All-time series
13–11Panthers lead, 24 meetings since 1995
Postseason
1–049ers won in 2013
Largest Panthers win
23–32017
Largest 49ers win
51–132019

Since 2021

2–0 49ers lead

2 meetings since the 2021 season, regular season and playoffs.

Oldest to newest. 4 = 49ers win, P = Panthers win, outlined = this game.

Recent Meetings

Season to Date (Through Week 18)

The 2025 regular season, from each game's box score.

Season to date, Panthers vs 49ers
PanthersStat49ers
8-9Record12-5
18.3Points per game25.7
295.6Yards per game351.4
5.0Yards per play5.5
22.4Points allowed per game21.8
327.2Yards allowed per game340.2

Panthers vs 49ers Odds and Results

How this game finished against the betting lines.

Spread
SF −749ers covered by 4
Total
48.5Under: 29 points scored (by 19.5)

Expected vs Actual Scoring

Implied team totals against the actual score
TeamImpliedActualDifference
49ers27.820−7.8
Panthers20.89−11.8

Both offenses finished under the market's expectation, which matches the low fantasy output in the Fantasy tab.

Betting Trends

Last 2 meetings: 49ers 2–0 ATS, overs and unders 1–1.

Each team's 2025 season through this game. Over/under is overs first.

Carolina Panthers

Against the spread
0–1
Over/under
0–1
ATS as underdog
0–1
ATS on the road
0–1

San Francisco 49ers

Against the spread
1–0
Over/under
0–1
ATS as favorite
1–0
ATS at home
1–0

Lines: ESPN's consensus, captured at kickoff. Individual sportsbooks varied.

21+. Gambling problem? Call 1-800-GAMBLER. Betting availability depends on your state.

Panthers and 49ers in Fantasy

The two teams don't meet again this season. If you roster a Panther or a 49er, these answer the week-to-week question.

Keep Exploring

2025 Game Logs for Players in This Game

Panthers vs 49ers Game FAQ

Who won the 2025 Panthers vs 49ers Week 12 game?

The San Francisco 49ers beat the Carolina Panthers 20–9 in Week 12 of the 2025 season. The game was played at Levi's Stadium in Santa Clara, CA, on November 24, 2025. See the 49ers' 2025 schedule.

What was the final score of Panthers vs 49ers?

The final score was 49ers 20, Panthers 9. The 49ers led 10–3 at halftime, and the second half went Panthers 6, 49ers 10.

What happened in the Panthers vs 49ers game?

San Francisco led 10–3 at halftime and outscored Carolina 10–6 after the break to win 20–9. The 49ers finished with a 340–230 edge in total offense. Christian McCaffrey led all players with 7 catches for 53 yards, plus 24 carries for 89 rushing yards and a touchdown. The 49ers committed 3 turnovers, the Panthers 2.

Who scored the most fantasy points in Panthers vs 49ers?

Christian McCaffrey led the game with 27.2 PPR fantasy points, the RB2 of Week 12, on 7 catches for 53 yards, plus 24 carries for 89 rushing yards and a touchdown. Jauan Jennings was next with 15.1 (WR19). See Christian McCaffrey's 2025 game log.

Who led Panthers vs 49ers in passing, rushing and receiving?

Brock Purdy (SF) led all passers with 23 of 32 for 193 yards, a touchdown and 3 interceptions. Christian McCaffrey (SF) led in rushing with 24 carries for 89 yards and a touchdown. George Kittle (SF) led in receiving with 6 catches for 78 yards.

How many fantasy points did Christian McCaffrey score against the Panthers?

Christian McCaffrey scored 27.2 points in PPR leagues, 23.7 in half-PPR and 20.2 in standard scoring against the Panthers in Week 12 of the 2025 season, on 7 catches for 53 yards, plus 24 carries for 89 rushing yards and a touchdown. He drew 22% of his team's targets.

Who outperformed and underperformed expected fantasy points in Panthers vs 49ers?

Jauan Jennings outperformed his expected fantasy points the most, scoring 15.1 PPR points on 11.9 xFP (+3.2). Brock Purdy fell furthest short, with 10.3 points on 18.1 xFP (−7.8). A gap either way reflects efficiency and touchdowns in one game; it is not a forecast. For matchups ahead, see fantasy points allowed by position.

How did the 49ers beat the Panthers?

The 49ers beat the Panthers 20–9 because they outgained them 340–230.

Which team won the turnover battle in Panthers vs 49ers?

The Panthers won the turnover battle 3–2: the 49ers gave the ball away 3 times and the Panthers 2 times. The 49ers won the game anyway.

What is the all-time Panthers vs 49ers record?

The Panthers lead the all-time series 13–11 across 24 meetings since 1995, including a 0–1 record in the postseason.

When did the Panthers and 49ers last play before this game?

Before Week 12 of 2025, they last met in the 2022 season on October 9, 2022, when the 49ers beat the Panthers 37–15.

Have the Panthers and 49ers met in the playoffs?

Yes, 1 time, most recently in the 2013 playoffs. The Panthers are 0–1 against the 49ers in the postseason.

What was the closing spread for Panthers vs 49ers?

The consensus closing spread at kickoff was 49ers −7, making the San Francisco 49ers 7-point favorites, with a closing total of 48.5. That implied about 27.8 points for the 49ers and 20.8 for the Panthers.

Did Panthers vs 49ers go over or under the total?

The game went under. The consensus closing total was 48.5, and the teams combined for 29 points, 19.5 under the number.

Who covered the spread in Panthers vs 49ers?

The 49ers covered by 4 against the closing line of 49ers −7. The final margin was 11 points.