FantasyHQ · Game Recap

NFL · Week 15 · December 17, 2023 · 12 min read

San Francisco 49ers vs. Arizona Cardinals: 2023 Week 15 Recap

49ers defeat Cardinals 45–29 in Week 15

Brock Purdy led Fantasy Impact as 49ers prevailed in a 45–29 Week 15 finish.

San Francisco 49ers 45 11–3 Winner
Final 45–29
Arizona Cardinals 29 3–11
Winner
San Francisco 49ers
Final score
45–29
Halftime
San Francisco 49ers 27–13 Arizona Cardinals
Top passer
Kenneth Murray, Jr.
FantasyHQ MVP
Brock Purdy
Game date
December 17, 2023

Top fantasy performers · 49ers

  • Brock Purdy
    Brock Purdy 16/24 · 242 YDS · 4 TD +18.2 Fantasy Impact
  • Christian McCaffrey
    Christian McCaffrey 5 REC · 72 YDS · 2 TD +5.2 Fantasy Impact
  • George Kittle
    George Kittle 2 REC · 54 YDS +5.0 Fantasy Impact

Top fantasy performers · Cardinals

  • Elijah Higgins
    Elijah Higgins 4 REC · 44 YDS · 1 TD +6.1 Fantasy Impact
  • Emari Demercado
    Emari Demercado 4 CAR · 64 YDS · 1 TD +3.5 Fantasy Impact
  • James Conner
    James Conner 14 CAR · 86 YDS · 1 TD +3.2 Fantasy Impact

Game story

The San Francisco 49ers defeated the Arizona Cardinals 45–29 in Week 15 of the 2023 NFL season on 2023-12-17, a matchup that controlled the game from start to finish. The decisive swing (-17.9% win probability) came in the opening quarter when Arizona Cardinals swung the momentum.

In Week 15 of the 2023 NFL season on 2023-12-17, the San Francisco 49ers took care of business against the Arizona Cardinals, pulling away with a 45–29 final that controlled the game from start to finish.

The highest-scoring period was Q1 with 27 combined points — the stretch that most shaped the final margin.

K. Murray (Arizona Cardinals) paced the passing game, with -5.34 total EPA, and -1.0% completion percentage over expected.

On the individual side, B. Purdy (San Francisco 49ers) delivered the top overall EPA impact at +18.23 — the clearest player-of-the-game signal on the analytics sheet.

The momentum swing (-17.9% win probability) landed in the opening quarter when Arizona Cardinals changed the game: (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN.

Line score

Final score and points by quarter.

Q1Q2Q3Q4T
San Francisco 49ers2071413045
Arizona Cardinals76313029

Stars of the game

Top performers by total expected points added (EPA) across passing, rushing, and receiving.

  1. 1 B. Purdy · San Francisco 49ers · Passing · +18.23 total EPA · 24 snaps · +0.76 EPA/play
  2. 2 E. Higgins · Arizona Cardinals · Receiving · +6.06 total EPA · 4 snaps · +1.52 EPA/play
  3. 3 C. McCaffrey · San Francisco 49ers · Receiving · +5.22 total EPA · 5 snaps · +1.04 EPA/play
  4. 4 G. Kittle · San Francisco 49ers · Receiving · +4.97 total EPA · 4 snaps · +1.24 EPA/play
  5. 5 D. Samuel · San Francisco 49ers · Receiving · +4.80 total EPA · 7 snaps · +0.69 EPA/play
  6. 6 C. McCaffrey · San Francisco 49ers · Rushing · +3.58 total EPA · 19 snaps · +0.19 EPA/play
  7. 7 E. Demercado · Arizona Cardinals · Rushing · +3.51 total EPA · 4 snaps · +0.88 EPA/play
  8. 8 J. Conner · Arizona Cardinals · Rushing · +3.17 total EPA · 14 snaps · +0.23 EPA/play

Player of the game

FantasyHQ analytics player-of-the-game pick based on total EPA and signature plays.

B. Purdy — SF · Passing

B. Purdy posted the highest total EPA (+18.23) in the game, making the biggest overall impact on San Francisco 49ers's efficiency. Across 24 counted snaps, they averaged +0.76 EPA per play.

The signature play (-7.61 EPA) came from Arizona Cardinals: (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN.

Who scored touchdowns and field goals

Every touchdown and field goal with the player named in official play-by-play.

Touchdowns

  • Arizona Cardinals — J. Conner (Q1 55:45)
  • San Francisco 49ers — D. Samuel (B. Purdy pass) (Q1 51:38)
  • San Francisco 49ers — C. Ward (Q1 49:33)
  • San Francisco 49ers — C. McCaffrey (B. Purdy pass) (Q2 31:18)
  • San Francisco 49ers — C. McCaffrey (B. Purdy pass) (Q3 28:28)
  • San Francisco 49ers — C. McCaffrey (Q3 16:11)
  • Arizona Cardinals — E. Demercado (Q4 11:39)
  • San Francisco 49ers — D. Samuel (B. Purdy pass) (Q4 7:14)
  • Arizona Cardinals — E. Higgins (K. Murray pass) (Q4 0:53)

Field goals

  • Arizona Cardinals — M. Prater (Q2 44:15)
  • Arizona Cardinals — M. Prater (Q2 36:18)
  • Arizona Cardinals — M. Prater (Q3 19:23)
  • San Francisco 49ers — J. Moody (Q4 3:12)
  • San Francisco 49ers — J. Moody (Q4 3:09)

How it unfolded, quarter by quarter

A quarter-by-quarter recap built from live scoring plays and play descriptions.

The opening quarter: San Francisco 49ers won the period 20–7. Arizona Cardinals found the end zone from the SF 2 (Q1 55:45) — (10:45) (Shotgun) 6-J.Conner up the middle for 2 yards, TOUCHDOWN.; Arizona Cardinals added 1 points from the SF 15 (Q1 55:40) — 5-M.Prater extra point is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.; San Francisco 49ers found the end zone from the ARI 12 (Q1 51:38) — (6:38) 13-B.Purdy pass short left to 19-D.Samuel for 12 yards, TOUCHDOWN.; San Francisco 49ers found the end zone from the ARI 15 (Q1 51:33) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; San Francisco 49ers found the end zone from the SF 42 (Q1 49:33) — (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the ARI 15 (Q1 49:22) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky..

The second quarter: San Francisco 49ers won the period 7–6. Arizona Cardinals connected on a field goal from the SF 40 (Q2 44:15) — (14:15) 5-M.Prater 58 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.; Arizona Cardinals connected on a field goal from the SF 25 (Q2 36:18) — (6:18) 5-M.Prater 43 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.; San Francisco 49ers found the end zone from the ARI 5 (Q2 31:18) — (1:18) (Shotgun) 13-B.Purdy pass short middle to 23-C.McCaffrey for 5 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the ARI 15 (Q2 31:14) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky..

The third quarter: San Francisco 49ers won the period 14–3. San Francisco 49ers found the end zone from the ARI 41 (Q3 28:28) — (13:28) 13-B.Purdy pass deep left to 23-C.McCaffrey for 41 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the ARI 15 (Q3 28:18) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; Arizona Cardinals connected on a field goal from the SF 9 (Q3 19:23) — (4:23) 5-M.Prater 28 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.; San Francisco 49ers found the end zone from the ARI 1 (Q3 16:11) — (1:11) (Shotgun) 23-C.McCaffrey up the middle for 1 yard, TOUCHDOWN.; San Francisco 49ers added 1 points from the ARI 15 (Q3 16:08) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky..

The fourth quarter: The quarter finished even at 13–13. Arizona Cardinals found the end zone from the SF 49 (Q4 11:39) — (11:39) (No Huddle, Shotgun) 31-E.Demercado left guard for 49 yards, TOUCHDOWN.; San Francisco 49ers found the end zone from the ARI 19 (Q4 7:14) — (7:14) (Shotgun) 13-B.Purdy pass deep left to 19-D.Samuel for 19 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the ARI 15 (Q4 7:09) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; San Francisco 49ers connected on a field goal from the ARI 25 (Q4 3:12) — (3:12) 4-J.Moody 43 yard field goal is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; San Francisco 49ers connected on a field goal from the SF 35 (Q4 3:09) — 4-J.Moody kicks 65 yards from SF 35 to end zone, Touchback.; Arizona Cardinals found the end zone from the SF 8 (Q4 0:53) — (:53) (No Huddle, Shotgun) 1-K.Murray pass short left to 84-E.Higgins for 8 yards, TOUCHDOWN.; Arizona Cardinals added 1 points from the SF 15 (Q4 0:47) — 5-M.Prater extra point is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin..

Turning points

Plays that moved win probability the most — the swings that decided the game.

  • Arizona Cardinals (Q1 49:33) — (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN. [WPA -17.9% · EPA -7.61]
  • Arizona Cardinals (Q2 40:15) — (10:15) 6-J.Conner up the middle to SF 43 for 2 yards (5-R.Gregory). [WPA +9.0% · EPA +1.86]
  • Arizona Cardinals (Q1 58:41) — (13:41) 1-K.Murray pass deep right to 85-T.McBride to SF 21 for 38 yards (54-F.Warner). [WPA +8.8% · EPA +2.47]
  • San Francisco 49ers (Q3 29:14) — (14:14) (Shotgun) 13-B.Purdy pass short middle to 85-G.Kittle to ARI 41 for 35 yards (3-B.Baker). [WPA +7.9% · EPA +4.17]
  • San Francisco 49ers (Q2 31:18) — (1:18) (Shotgun) 13-B.Purdy pass short middle to 23-C.McCaffrey for 5 yards, TOUCHDOWN. [WPA +7.6% · EPA +1.70]

Impact plays

Highest expected-points added snaps that flipped field position and scoring chances.

  • Arizona Cardinals (Q1 49:33) — (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN. [WPA -17.9% · EPA -7.61]
  • Arizona Cardinals (Q4 6:23) — (6:23) (No Huddle, Shotgun) 1-K.Murray pass deep middle intended for 0-Z.Pascal INTERCEPTED by 7-C.Ward at SF 40. 7-C.Ward to ARI 47 for 13 yards (4-R.Moore). [WPA -0.1% · EPA -5.06]
  • San Francisco 49ers (Q3 29:14) — (14:14) (Shotgun) 13-B.Purdy pass short middle to 85-G.Kittle to ARI 41 for 35 yards (3-B.Baker). [WPA +7.9% · EPA +4.17]
  • Arizona Cardinals (Q4 11:39) — (11:39) (No Huddle, Shotgun) 31-E.Demercado left guard for 49 yards, TOUCHDOWN. [WPA +1.9% · EPA +4.06]

Quarterback report card

K.Murray led all passers in efficiency for Arizona Cardinals, setting the tone in the passing game according to FantasyHQ analytics.

  • K.Murray (Arizona Cardinals) · 47 dropbacks · 55.3% completion · -1.0% CPOE · -0.11 EPA/play · -5.34 total EPA
  • B.Purdy (San Francisco 49ers) · 24 dropbacks · 66.7% completion · +7.1% CPOE · +0.76 EPA/play · +18.23 total EPA

Team stats comparison

Side-by-side offensive and defensive efficiency from FantasyHQ analytics.

StatSan Francisco 49ersArizona Cardinals
Offensive EPA/play+0.340+0.048
Offensive success rate54.2%40.2%
Pass EPA/play+0.680-0.114
Rush EPA/play+0.159+0.231
Defensive EPA/play-0.048-0.340
Defensive success rate59.8%45.8%

By the numbers

Despite the final score, San Francisco 49ers generated the better offensive EPA per play (+0.34 vs +0.05), suggesting they moved the ball more efficiently.

  • Arizona Cardinals: 10 drives, +4.41 total EPA, 7 scoring drives
  • San Francisco 49ers: 11 drives, +24.49 total EPA, 6 scoring drives

Key takeaways

What to remember for fantasy research, film review, and follow-up box score digging.

  • San Francisco 49ers leaves with the win and the better postgame narrative for Week-to-week momentum.
  • B. Purdy (San Francisco 49ers) is the first name to pull up for highlight reels and prop-retrospective research.
  • B. Purdy (SF) beat expectation through the air — positive CPOE game for stack builds.

Every scoring play

Chronological scoring with field position and full play-by-play context.

  1. Arizona Cardinals TD (+6) — Q1 55:45 · SF 2 · Score 0-6
    (10:45) (Shotgun) 6-J.Conner up the middle for 2 yards, TOUCHDOWN.
  2. Arizona Cardinals XP (+1) — Q1 55:40 · SF 15 · Score 0-7
    5-M.Prater extra point is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.
  3. San Francisco 49ers TD (+6) — Q1 51:38 · ARI 12 · Score 6-7
    (6:38) 13-B.Purdy pass short left to 19-D.Samuel for 12 yards, TOUCHDOWN.
  4. San Francisco 49ers TD (+7) — Q1 51:33 · ARI 15 · Score 7-7
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  5. San Francisco 49ers TD (+6) — Q1 49:33 · SF 42 · Score 13-7
    (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN.
  6. San Francisco 49ers XP (+1) — Q1 49:22 · ARI 15 · Score 14-7
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  7. Arizona Cardinals FG (+3) — Q2 44:15 · SF 40 · Score 14-10
    (14:15) 5-M.Prater 58 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.
  8. Arizona Cardinals FG (+3) — Q2 36:18 · SF 25 · Score 14-13
    (6:18) 5-M.Prater 43 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.
  9. San Francisco 49ers TD (+6) — Q2 31:18 · ARI 5 · Score 20-13
    (1:18) (Shotgun) 13-B.Purdy pass short middle to 23-C.McCaffrey for 5 yards, TOUCHDOWN.
  10. San Francisco 49ers XP (+1) — Q2 31:14 · ARI 15 · Score 21-13
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  11. San Francisco 49ers TD (+6) — Q3 28:28 · ARI 41 · Score 27-13
    (13:28) 13-B.Purdy pass deep left to 23-C.McCaffrey for 41 yards, TOUCHDOWN.
  12. San Francisco 49ers XP (+1) — Q3 28:18 · ARI 15 · Score 28-13
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  13. Arizona Cardinals FG (+3) — Q3 19:23 · SF 9 · Score 28-16
    (4:23) 5-M.Prater 28 yard field goal is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.
  14. San Francisco 49ers TD (+6) — Q3 16:11 · ARI 1 · Score 34-16
    (1:11) (Shotgun) 23-C.McCaffrey up the middle for 1 yard, TOUCHDOWN.
  15. San Francisco 49ers XP (+1) — Q3 16:08 · ARI 15 · Score 35-16
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  16. Arizona Cardinals TD (+6) — Q4 11:39 · SF 49 · Score 35-22
    (11:39) (No Huddle, Shotgun) 31-E.Demercado left guard for 49 yards, TOUCHDOWN.
  17. San Francisco 49ers TD (+6) — Q4 7:14 · ARI 19 · Score 41-22
    (7:14) (Shotgun) 13-B.Purdy pass deep left to 19-D.Samuel for 19 yards, TOUCHDOWN.
  18. San Francisco 49ers XP (+1) — Q4 7:09 · ARI 15 · Score 42-22
    4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  19. San Francisco 49ers FG (+3) — Q4 3:12 · ARI 25 · Score 45-22
    (3:12) 4-J.Moody 43 yard field goal is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
  20. San Francisco 49ers FG (+3) — Q4 3:09 · SF 35 · Score 45-22
    4-J.Moody kicks 65 yards from SF 35 to end zone, Touchback.
  21. Arizona Cardinals TD (+6) — Q4 0:53 · SF 8 · Score 45-28
    (:53) (No Huddle, Shotgun) 1-K.Murray pass short left to 84-E.Higgins for 8 yards, TOUCHDOWN.
  22. Arizona Cardinals XP (+1) — Q4 0:47 · SF 15 · Score 45-29
    5-M.Prater extra point is GOOD, Center-46-A.Brewer, Holder-12-B.Gillikin.

Frequently asked questions

Who won San Francisco 49ers vs Arizona Cardinals?

The San Francisco 49ers beat the Arizona Cardinals 45-29 in Week 15, 2023 on 2023-12-17.

What was the final score of San Francisco 49ers vs Arizona Cardinals?

The final score was San Francisco 49ers 45, Arizona Cardinals 29 (SF 45-29 ARI) in Week 15, 2023 on 2023-12-17.

What was the score by quarter in San Francisco 49ers vs Arizona Cardinals?

Q1: San Francisco 49ers 20, Arizona Cardinals 7; Q2: San Francisco 49ers 7, Arizona Cardinals 6; Q3: San Francisco 49ers 14, Arizona Cardinals 3; Q4: San Francisco 49ers 13, Arizona Cardinals 13; Final: San Francisco 49ers 45, Arizona Cardinals 29.

Who scored touchdowns and field goals in San Francisco 49ers vs Arizona Cardinals?

Arizona Cardinals touchdown — J. Conner (Q1 55:45) San Francisco 49ers touchdown — D. Samuel (B. Purdy pass) (Q1 51:38) San Francisco 49ers touchdown — C. Ward (Q1 49:33) San Francisco 49ers touchdown — C. McCaffrey (B. Purdy pass) (Q2 31:18) San Francisco 49ers touchdown — C. McCaffrey (B. Purdy pass) (Q3 28:28) San Francisco 49ers touchdown — C. McCaffrey (Q3 16:11) Arizona Cardinals touchdown — E. Demercado (Q4 11:39) San Francisco 49ers touchdown — D. Samuel (B. Purdy pass) (Q4 7:14) Arizona Cardinals touchdown — E. Higgins (K. Murray pass) (Q4 0:53) Arizona Cardinals field goal — M. Prater (Q2 44:15, 3 pts) Arizona Cardinals field goal — M. Prater (Q2 36:18, 3 pts) Arizona Cardinals field goal — M. Prater (Q3 19:23, 3 pts) San Francisco 49ers field goal — J. Moody (Q4 3:12, 3 pts) San Francisco 49ers field goal — J. Moody (Q4 3:09, 3 pts) Extra points followed each touchdown unless noted in the play-by-play.

How did the quarterbacks play in San Francisco 49ers vs Arizona Cardinals?

K. Murray (Arizona Cardinals), 55.3% completion, -1.0% CPOE, -0.11 EPA per dropback, -5.34 total passing EPA. B. Purdy (San Francisco 49ers), 66.7% completion, +7.1% CPOE, +0.76 EPA per dropback, +18.23 total passing EPA.

Who was the most impactful player in San Francisco 49ers vs Arizona Cardinals?

B. Purdy (San Francisco 49ers) led the game in total EPA with +18.23 on passing plays. across 24 snaps. The top single-play swing was (-7.61 EPA): (4:33) (Shotgun) 1-K.Murray pass short middle intended for 85-T.McBride INTERCEPTED by 7-C.Ward at SF 34. 7-C.Ward for 66 yards, TOUCHDOWN.. The biggest win-probability swing was -17.9%.

Season records after this game

San Francisco 49ers

Entered 10-3 Now 11-3 W

Arizona Cardinals

Entered 3-10 Now 3-11 L