For the complete documentation index, see llms.txt. Markdown variants are available only for registry-approved public pages by appending .md to eligible URLs or by sending Accept: text/markdown.
Sync your league to My Playbook for custom advice

2025 Week 16 · Mon, Dec 22, 2025 · Lucas Oil Stadium

San Francisco 49ersWinner

48

Indianapolis Colts

27

SF -4.5 ✓O 46.5 ✓Dome

San Francisco 49ers 48–27 — never really in doubt late. Biggest swing: Q2 14:19, IND +13% win probability on one snap.

The game in one curve — scrub to replay it

Win probability

0255075100End Q1End Q2End Q3INDSF
Q2 · 14:19SF 14IND 13IND ball · 3rd & 16SF 80%

(14:19) (Shotgun) 17-P.Rivers pass deep middle to 14-A.Pierce for 16 yards, TOUCHDOWN. Penalty on SF-28-D.Luter, Defensive Pass Interference, declined.

Market-anchored home win probability, play by play. Drag across the curve or use arrow keys to replay the game; gold diamonds mark the biggest momentum swings — tap one to jump there.

Highest-leverage plays

  1. Q2 · 14:19IND +13% win prob(14:19) (Shotgun) 17-P.Rivers pass deep middle to 14-A.Pierce for 16 yards, TOUCHDOWN. Penalty on SF-28-D.Luter, Defensive Pass Interference, declined.
  2. Q1 · 7:14SF +11% win prob18-E.Pineiro kicks 56 yards from SF 35 to IND 9. 26-A.Abdullah to IND 27 for 18 yards (27-J.Brown). FUMBLES (27-J.Brown), RECOVERED by SF-88-J.Tonges at IND 26.
  3. Q1 · 11:45IND +9% win prob(11:45) (Shotgun) 17-P.Rivers pass short right to 2-J.Downs to SF 23 for 13 yards (20-U.Stout).
  4. Q2 · 9:42IND +8% win prob(9:42) 13-B.Purdy pass short right to 85-G.Kittle for 11 yards, TOUCHDOWN.

How the points landed

Scoring summary

  1. Q1 · 10:36IND Touchdown

    (10:36) (Shotgun) 17-P.Rivers pass deep middle to 14-A.Pierce for 20 yards, TOUCHDOWN. Penalty on SF-96-C.Ferrell, Defensive Offside, declined. (kick good)

    Score after this play: SF 0IND 7
  2. Q1 · 7:19SF Touchdown

    (7:19) (Shotgun) 13-B.Purdy pass deep middle to 5-D.Robinson for 22 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 7IND 7
  3. Q1 · 4:37SF Touchdown

    (4:37) (Shotgun) 13-B.Purdy pass short right to 23-C.McCaffrey for 2 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 14IND 7
  4. Q2 · 14:19IND Touchdown

    (14:19) (Shotgun) 17-P.Rivers pass deep middle to 14-A.Pierce for 16 yards, TOUCHDOWN. Penalty on SF-28-D.Luter, Defensive Pass Interference, declined. (kick good)

    Score after this play: SF 14IND 14
  5. Q2 · 9:42SF Touchdown

    (9:42) 13-B.Purdy pass short right to 85-G.Kittle for 11 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 21IND 14
  6. Q2 · 1:55SF Field goal

    (1:55) 18-E.Pineiro 25 yard field goal is GOOD, Center-46-J.Weeks, Holder-7-T.Morstead.

    Score after this play: SF 24IND 14
  7. Q2 · 0:21IND Field goal

    (:21) 10-B.Grupe 39 yard field goal is GOOD, Center-46-L.Rhodes, Holder-8-R.Sanchez.

    Score after this play: SF 24IND 17
  8. Q3 · 11:02SF Touchdown

    (11:02) (Shotgun) 13-B.Purdy pass short right to 15-J.Jennings for 3 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 31IND 17
  9. Q3 · 8:21IND Field goal

    (8:21) 10-B.Grupe 51 yard field goal is GOOD, Center-46-L.Rhodes, Holder-8-R.Sanchez.

    Score after this play: SF 31IND 20
  10. Q3 · 4:07SF Field goal

    (4:07) 18-E.Pineiro 38 yard field goal is GOOD, Center-46-J.Weeks, Holder-7-T.Morstead.

    Score after this play: SF 34IND 20
  11. Q4 · 12:45IND Touchdown

    (12:45) (Shotgun) 28-J.Taylor up the middle for 1 yard, TOUCHDOWN. (kick good)

    Score after this play: SF 34IND 27
  12. Q4 · 7:42SF Touchdown

    (7:42) (Shotgun) 13-B.Purdy pass short left to 23-C.McCaffrey for 9 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 41IND 27
  13. Q4 · 3:38SF Touchdown

    (3:38) (No Huddle, Shotgun) 17-P.Rivers pass short middle intended for 84-T.Warren INTERCEPTED by 53-D.Winters at SF 26. 53-D.Winters for 74 yards, TOUCHDOWN. (kick good)

    Score after this play: SF 48IND 27

Down-to-down truth

Situational splits

Metric49ersColts
Offensive plays6358
Total yards443 (edge)312
Yards per play7.0 (edge)5.4
Expected points added / play0.40 (edge)-0.04
Success rate52% (edge)50%
Dropback rate57%66%
Dropback efficiency (EPA/play)0.57 (edge)-0.01
Rush efficiency (EPA/play)0.19 (edge)-0.09
Third downs7/10 (edge)5/10
Red-zone trips → TDs0 → 00 → 0
Explosive plays (10+ rush / 20+ pass)9 (edge)2
First downs gained on snaps28 (edge)17
Sacks taken1 (edge)2
Turnovers1 (edge)2

49ers won the down-to-down efficiency fight: 0.40 expected points added per play vs -0.04.

Who moved the needle

Top performers

Passing · SF

Brock PurdyQB

25/34, 295 yds, 5 TD, 1 INT

20.5 expected points added · +12.4% completion over expected

Passing · IND

Philip RiversQB

23/35, 277 yds, 2 TD, 1 INT

2.9 expected points added · -1.2% completion over expected

Rushing · SF

Christian McCaffreyRB

21 att, 117 yds, 0 TD

2.9 expected points added on the ground

Rushing · IND

Jonathan TaylorRB

16 att, 46 yds, 1 TD

-0.4 expected points added on the ground

Receiving · SF

George KittleTE

7/8 for 115 yds, 1 TD

24% of team targets · 9.8 expected points added

Receiving · IND

Alec PierceWR

4/4 for 86 yds, 2 TD

11% of team targets · 9.6 expected points added

Possession by possession

Drive chart

#TeamStartPlaysScrim ydsClockResult
1INDIND 2811824:29Touchdown +7
2SFSF 318693:17Touchdown +7
3IND100:06Fumble
4SFIND 266262:35Touchdown +7
5INDIND 3414765:18Touchdown +7
6SFSF 3112694:39Touchdown +7
7INDIND 20582:27Punt
8SFSF 1812725:18Field goal +3
9INDIND 358281:34Field goal +3
10SFSF 403140:17Missed field goal
11SFSF 3610644:02Touchdown +7
12INDIND 358172:42Field goal +3
13SFSF 329494:14Field goal +3
14INDIND 3514656:21Touchdown +7
15SFSF 3012705:04Touchdown +7
16INDIND 205-151:17Punt
17SFIND 445101:43Interception
18INDIND 293421:11Defensive touchdown
19INDIND 35591:30Turnover on downs
20SFIND 43301:56End of game

12 of 20 drives ended in points. Longest march: Colts gained 82 scrimmage yards over 11 plays for a touchdown.

Full stat lines

Box score

San Francisco 49ers

Passing

PlayerC/AttYdsTDINTSackedEPA
Brock Purdy25/3429551120.5

Rushing

PlayerAttYdsAvgTDEPA
Christian McCaffrey211175.602.9
Brian Robinson5204.00-0.3
Brock Purdy2115.502.2
Mac Jones3-3-1.00-3.0

Receiving

PlayerRecTgtYdsTDTgt shareEPA
George Kittle78115124%9.8
Jauan Jennings5671118%9.1
Christian McCaffrey6829224%3.2
Kendrick Bourne3527015%-4.3
Skyy Moore112303%2.0
Demarcus Robinson222316%2.2
Jake Tonges12706%0.6
Brian Robinson01003%-0.6

Defense (top contributors)

PlayerSoloAstSacksINTPD
Tatum Bethune450.001
Ji'Ayir Brown540.000
Malik Mustapha350.000
Darrell Luter Jr.510.001
Upton Stout330.002
Dee Winters120.012
Deommodore Lenoir210.000
Kalia Davis030.001
Sam Okuayinonu120.000
Keion White120.000

Indianapolis Colts

Passing

PlayerC/AttYdsTDINTSackedEPA
Philip Rivers23/352772122.9
Riley Leonard0/10000-3.3

Rushing

PlayerAttYdsAvgTDEPA
Jonathan Taylor16462.91-0.4
Tyler Goodson393.00-1.2
Josh Downs133.00-0.2

Receiving

PlayerRecTgtYdsTDTgt shareEPA
Alec Pierce4486211%9.6
Josh Downs5965025%3.3
Jonathan Taylor333308%3.1
Michael Pittman4532014%0.2
Tyler Warren3930025%-11.8
Mo Alie-Cox221606%1.4
Andrew Ogletree121106%0.5
Ameer Abdullah11403%0.9
Coleman Owen01003%-3.3

Defense (top contributors)

Closing number vs result

Betting context

Closing spread
SF -4.5
Closing total
46.5
SF moneyline
-225
IND moneyline
+185

49ers closed -4.5 and covered, winning by 21.

Total closed 46.5; the game landed 75 — over by 28.5.

Conditions and crew

Game environment

Venue
Lucas Oil Stadium
Roof / surface
closed · fieldturf
Kickoff weather
Indoors — weather neutralized
Referee
Ron Torbert
Rest
SF 8 days · IND 8 days
Coaches
Kyle Shanahan vs Shane Steichen