Quick answer
- Winner
- Baltimore Ravens
- Final score
- Baltimore Ravens 33–19 San Francisco 49ers
- Halftime
- Baltimore Ravens 16–12 San Francisco 49ers at halftime
- FantasyHQ MVP
- Lucky Jackson
- Top passer
- Lucky Jackson
- Biggest EPA play
- (12:07) (Shotgun) 13-B.Purdy pass short left intended for 23-C.McCaffrey INTERCEPTED by 6-…
- Game date
- 2023-12-25
Game summary
The Baltimore Ravens beat the San Francisco 49ers 33–19 on 2023-12-25. Lucky Jackson posted a game-high +9.59 total EPA in the passing.
The highest-scoring period was Q2 with 20 combined points.
Line score
Final score and points by quarter.
| Q1 | Q2 | Q3 | Q4 | — | T | |
|---|---|---|---|---|---|---|
| 3 | 13 | 17 | 0 | 0 | 33 | |
| 5 | 7 | 0 | 7 | 0 | 19 |
Stars of the game
Top performers by total expected points added (EPA).
- 1

Lucky Jackson · Baltimore Ravens · Passing · +9.59 total EPA · 44 snaps · +0.22 EPA/play - 2

Brandon Aiyuk · San Francisco 49ers · Receiving · +9.54 total EPA · 7 snaps · +1.36 EPA/play - 3

Zay Flowers · Baltimore Ravens · Receiving · +4.50 total EPA · 13 snaps · +0.35 EPA/play - 4

Isaiah Likely · Baltimore Ravens · Receiving · +2.99 total EPA · 4 snaps · +0.75 EPA/play - 5

Ronnie Bell · San Francisco 49ers · Receiving · +2.93 total EPA · 1 snaps · +2.93 EPA/play - 6

Gus Edwards · Baltimore Ravens · Receiving · +2.86 total EPA · 1 snaps · +2.86 EPA/play - 7

Christian McCaffrey · San Francisco 49ers · Rushing · +2.44 total EPA · 14 snaps · +0.17 EPA/play - 8

Sam Darnold · San Francisco 49ers · Passing · +2.15 total EPA · 18 snaps · +0.12 EPA/play
FantasyHQ Game MVP
Highest total EPA with the player's top snap and the game's biggest single play when different.

FantasyHQ Game MVP
Lucky Jackson — BAL · Passing
Lucky Jackson posted the highest total EPA (+9.59) in the game, the strongest overall impact for Baltimore Ravens. Across 44 counted snaps, they averaged +0.22 EPA per play.
Lucky Jackson's top snap (+2.86 EPA): (13:17) (Shotgun) 8-L.Jackson pass short right to 35-G.Edwards pushed ob at SF 5 for 39 yards (54-F.Warner).
Biggest single play (-6.56 EPA): Brock Purdy — (12:07) (Shotgun) 13-B.Purdy pass short left intended for 23-C.McCaffrey INTERCEPTED by 6-P.Queen (98-T.Jones) [98-T.Jones] at SF 30. 6-P.Queen to SF 9 for 21 yards (55-J.Feliciano, 71-T.Williams).
Quarterback report card
Lucky Jackson led all passers in efficiency for Baltimore Ravens, setting the tone in the passing game according to FantasyHQ analytics.

Lucky Jackson (Baltimore Ravens) · 44 dropbacks · 52.3% completion · -1.7% CPOE · +0.22 EPA/play · +9.59 total EPA
Brock Purdy (San Francisco 49ers) · 35 dropbacks · 51.4% completion · -10.0% CPOE · -0.46 EPA/play · -16.12 total EPA
Team stats comparison
Side-by-side offensive and defensive efficiency.
| Stat | ||
|---|---|---|
| Offensive EPA/play | +0.092 | -0.144 |
| Offensive success rate | 49.4% | 41.4% |
| Pass EPA/play | +0.218 | -0.264 |
| Rush EPA/play | -0.140 | +0.144 |
| Defensive EPA/play | +0.144 | -0.092 |
| Defensive success rate | 58.6% | 50.6% |
Drive & efficiency notes
Despite the final score, Baltimore Ravens generated the better offensive EPA per play (+0.09 vs -0.14), suggesting they moved the ball more efficiently.
Season benchmark context (offensive EPA per play):
- Baltimore Ravens: +0.09 EPA/play (79th percentile vs. 2023 team-game averages)
- San Francisco 49ers: -0.14 EPA/play (24th percentile vs. 2023 team-game averages)
- Baltimore Ravens: 12 drives, +7.81 total EPA, 8 scoring drives
- San Francisco 49ers: 11 drives, -12.55 total EPA, 3 scoring drives
Who scored touchdowns and field goals
Every touchdown and field goal from official play-by-play.
Touchdowns

Baltimore Ravens — Gus Edwards 
San Francisco 49ers — Christian McCaffrey 
Baltimore Ravens — Nelson Agholor (Lucky Jackson pass) 
Baltimore Ravens — Zay Flowers (Lucky Jackson pass) 
San Francisco 49ers — Ronnie Bell (Sam Darnold pass)
Field goals
San Francisco 49ers — Jaylen Moody 
Baltimore Ravens — Justin Tucker 
Baltimore Ravens — Justin Tucker 
Baltimore Ravens — Justin Tucker 
Baltimore Ravens — Justin Tucker
Quarter by quarter
Quarter-by-quarter recap from live scoring plays.
The opening quarter: San Francisco 49ers won the period 5–3. San Francisco 49ers registered a safety from the SF 80 (Q1 10:31); San Francisco 49ers connected on a field goal from the BAL 27 (Q1 6:03) — (6:03) 4-J.Moody 45 yard field goal is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; Baltimore Ravens connected on a field goal from the SF 10 (Q1 1:01) — (1:01) 9-J.Tucker 28 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout..
The second quarter: Baltimore Ravens won the period 13–7. Baltimore Ravens found the end zone from the SF 1 (Q2 9:38) — (9:38) (Shotgun) 35-G.Edwards up the middle for 1 yard, TOUCHDOWN.; Baltimore Ravens added 1 points from the SF 15 (Q2 9:35) — 9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.; Baltimore Ravens connected on a field goal from the SF 23 (Q2 7:07) — (7:07) 9-J.Tucker 41 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout.; San Francisco 49ers found the end zone from the BAL 9 (Q2 3:29) — (3:29) 23-C.McCaffrey left tackle for 9 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the BAL 15 (Q2 3:23) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.; Baltimore Ravens connected on a field goal from the SF 11 (Q2 0:04) — (:04) 9-J.Tucker 28 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout..
The third quarter: Baltimore Ravens won the period 17–0. Baltimore Ravens found the end zone from the SF 6 (Q3 12:13) — (12:13) (Shotgun) 8-L.Jackson pass short left to 15-N.Agholor for 6 yards, TOUCHDOWN.; Baltimore Ravens added 1 points from the SF 15 (Q3 12:07) — 9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.; Baltimore Ravens found the end zone from the SF 9 (Q3 11:52) — (11:52) (Shotgun) 8-L.Jackson pass short middle to 4-Z.Flowers for 9 yards, TOUCHDOWN.; Baltimore Ravens added 1 points from the SF 15 (Q3 11:49) — 9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.; Baltimore Ravens connected on a field goal from the SF 6 (Q3 2:43) — (2:43) 9-J.Tucker 24 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout..
The fourth quarter: San Francisco 49ers won the period 7–0. San Francisco 49ers found the end zone from the BAL 12 (Q4 6:23) — (6:23) (Shotgun) 14-S.Darnold pass short middle to 10-R.Bell for 12 yards, TOUCHDOWN.; San Francisco 49ers added 1 points from the BAL 15 (Q4 6:19) — 4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky..
Turning points
Plays that moved win probability the most.
- San Francisco 49ers (Q2 14:22) — (14:22) 13-B.Purdy pass short left intended for 19-D.Samuel INTERCEPTED by 44-M.Humphrey (21-B.Stephens) at BAL 44. 44-M.Humphrey to BAL 47 for 3 yards (13-B.Purdy).
- San Francisco 49ers (Q2 8:08) — (8:08) (Shotgun) 13-B.Purdy pass short middle intended for 85-G.Kittle INTERCEPTED by 14-K.Hamilton (44-M.Humphrey) at SF 32. 14-K.Hamilton to SF 35 for -3 yards (23-C.McCaffrey). PENALTY on SF-23-C.M
- San Francisco 49ers (Q1 13:17) — (13:17) (Shotgun) 13-B.Purdy pass short middle to 85-G.Kittle to BAL 28 for 58 yards (28-R.Darby).
- Baltimore Ravens (Q1 10:31) — (10:31) (No Huddle, Shotgun) 8-L.Jackson pass incomplete short left. PENALTY on BAL-8-L.Jackson, Intentional Grounding, 20 yards, enforced in End Zone, SAFETY.
- San Francisco 49ers (Q1 11:47) — (11:47) (Shotgun) 13-B.Purdy pass deep middle intended for 19-D.Samuel INTERCEPTED by 14-K.Hamilton at BAL -2. 14-K.Hamilton to BAL 8 for 10 yards (44-K.Juszczyk).
Impact plays
Highest EPA snaps that flipped field position.
- San Francisco 49ers (Q3 12:07) — (12:07) (Shotgun) 13-B.Purdy pass short left intended for 23-C.McCaffrey INTERCEPTED by 6-P.Queen (98-T.Jones) [98-T.Jones] at SF 30. 6-P.Queen to SF 9 for 21 yards (55-J.Feliciano, 71-T.Williams).
- San Francisco 49ers (Q2 14:22) — (14:22) 13-B.Purdy pass short left intended for 19-D.Samuel INTERCEPTED by 44-M.Humphrey (21-B.Stephens) at BAL 44. 44-M.Humphrey to BAL 47 for 3 yards (13-B.Purdy).
- San Francisco 49ers (Q1 13:17) — (13:17) (Shotgun) 13-B.Purdy pass short middle to 85-G.Kittle to BAL 28 for 58 yards (28-R.Darby).
- San Francisco 49ers (Q1 11:47) — (11:47) (Shotgun) 13-B.Purdy pass deep middle intended for 19-D.Samuel INTERCEPTED by 14-K.Hamilton at BAL -2. 14-K.Hamilton to BAL 8 for 10 yards (44-K.Juszczyk).
Every scoring play
Chronological scoring with play-by-play context.
San Francisco 49ers Safety (+2) — Q1 10:31 · SF 80 · Score 0-2
(10:31) (No Huddle, Shotgun) 8-L.Jackson pass incomplete short left. PENALTY on BAL-8-L.Jackson, Intentional Grounding, 20 yards, enforced in End Zone, SAFETY.
San Francisco 49ers FG (+3) — Q1 6:03 · BAL 27 · Score 0-5
(6:03) 4-J.Moody 45 yard field goal is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
Baltimore Ravens FG (+3) — Q1 1:01 · SF 10 · Score 3-5
(1:01) 9-J.Tucker 28 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
Baltimore Ravens TD (+6) — Q2 9:38 · SF 1 · Score 9-5
(9:38) (Shotgun) 35-G.Edwards up the middle for 1 yard, TOUCHDOWN.
Baltimore Ravens XP (+1) — Q2 9:35 · SF 15 · Score 10-5
9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
Baltimore Ravens FG (+3) — Q2 7:07 · SF 23 · Score 13-5
(7:07) 9-J.Tucker 41 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
San Francisco 49ers TD (+6) — Q2 3:29 · BAL 9 · Score 13-11
(3:29) 23-C.McCaffrey left tackle for 9 yards, TOUCHDOWN.
San Francisco 49ers XP (+1) — Q2 3:23 · BAL 15 · Score 13-12
4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
Baltimore Ravens FG (+3) — Q2 0:04 · SF 11 · Score 16-12
(:04) 9-J.Tucker 28 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
Baltimore Ravens TD (+6) — Q3 12:13 · SF 6 · Score 22-12
(12:13) (Shotgun) 8-L.Jackson pass short left to 15-N.Agholor for 6 yards, TOUCHDOWN.
Baltimore Ravens XP (+1) — Q3 12:07 · SF 15 · Score 23-12
9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
Baltimore Ravens TD (+6) — Q3 11:52 · SF 9 · Score 29-12
(11:52) (Shotgun) 8-L.Jackson pass short middle to 4-Z.Flowers for 9 yards, TOUCHDOWN.
Baltimore Ravens XP (+1) — Q3 11:49 · SF 15 · Score 30-12
9-J.Tucker extra point is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
Baltimore Ravens FG (+3) — Q3 2:43 · SF 6 · Score 33-12
(2:43) 9-J.Tucker 24 yard field goal is GOOD, Center-69-T.Ott, Holder-11-J.Stout.
San Francisco 49ers TD (+6) — Q4 6:23 · BAL 12 · Score 33-18
(6:23) (Shotgun) 14-S.Darnold pass short middle to 10-R.Bell for 12 yards, TOUCHDOWN.
San Francisco 49ers XP (+1) — Q4 6:19 · BAL 15 · Score 33-19
4-J.Moody extra point is GOOD, Center-46-T.Pepper, Holder-18-M.Wishnowsky.
Key takeaways
What to remember for fantasy research and follow-up box score digging.
- Baltimore Ravens earned the result — use the box score for snap-level context.
- Lucky Jackson (Baltimore Ravens) led total EPA — start here for highlight and prop research.
- Brock Purdy (SF) finished below expected efficiency despite volume.
Frequently asked questions
Who won Baltimore Ravens vs San Francisco 49ers on 2023-12-25?
The Baltimore Ravens beat the San Francisco 49ers 33-19 in Week 16, 2023.
What was the score by quarter in Baltimore Ravens vs San Francisco 49ers?
Q1: Baltimore Ravens 3, San Francisco 49ers 5; Q2: Baltimore Ravens 13, San Francisco 49ers 7; Q3: Baltimore Ravens 17, San Francisco 49ers 0; Q4: Baltimore Ravens 0, San Francisco 49ers 7; Final: Baltimore Ravens 33, San Francisco 49ers 19.
Who scored touchdowns and field goals in Baltimore Ravens vs San Francisco 49ers?
Baltimore Ravens touchdown — G. Edwards (Q2 9:38) San Francisco 49ers touchdown — C. McCaffrey (Q2 3:29) Baltimore Ravens touchdown — N. Agholor (L. Jackson pass) (Q3 12:13) Baltimore Ravens touchdown — Z. Flowers (L. Jackson pass) (Q3 11:52) San Francisco 49ers touchdown — R. Bell (S. Darnold pass) (Q4 6:23) San Francisco 49ers field goal — J. Moody (Q1 6:03, 3 pts) Baltimore Ravens field goal — J. Tucker (Q1 1:01, 3 pts) Baltimore Ravens field goal — J. Tucker (Q2 7:07, 3 pts) Baltimore Ravens field goal — J. Tucker (Q2 0:04, 3 pts) Baltimore Ravens field goal — J. Tucker (Q3 2:43, 3 pts) Extra points followed each touchdown unless noted in the play-by-play.
How did the quarterbacks play in Baltimore Ravens vs San Francisco 49ers?
Lucky Jackson (Baltimore Ravens), 52.3% completion, -1.7% CPOE, +0.22 EPA per dropback, +9.59 total passing EPA. Brock Purdy (San Francisco 49ers), 51.4% completion, -10.0% CPOE, -0.46 EPA per dropback, -16.12 total passing EPA.
Who was FantasyHQ's player of the game in Baltimore Ravens vs San Francisco 49ers?
Lucky Jackson (Baltimore Ravens) was FantasyHQ's Game MVP with +9.59 total EPA on Passing plays. across 44 snaps. Their top snap (+2.86 EPA): (13:17) (Shotgun) 8-L.Jackson pass short right to 35-G.Edwards pushed ob at SF 5 for 39 yards (54-F.Warner)..
Season records after this game
Baltimore Ravens
Entered 11-3 Now 12-3 W
San Francisco 49ers
Entered 11-3 Now 11-4 L