Quick Slant: SNF - Not Dead Yet
Mat Irby’s Quick Slant
On Monday, December 8, Philip Rivers turned 44. In the quiet southern tradition of his Alabama home in picturesque Fairhope, just off the eastern shore of Mobile Bay, it should have been a day of birthday cake celebration for the St. Michael Catholic Cardinals, who had completed their best year ever. Instead, Rivers was in Indianapolis, sitting on a trainer’s table, under the fluorescent lights of the Colts’ indoor facility.
Rivers wasn’t there to visit old friends—at least not directly. He had known Colts head coach Shane Steichen for years. Steichen was with the Chargers in 2011 and 2012, then again from 2014 to 2020 after a brief detour with Norv Turner and the Browns in between. Over that time, he worked his way up the ranks, from quality control coach to QBs coach to interim OC, and eventually permanent OC.
When Steichen first arrived in the NFL, a 26-year-old defensive assistant—not his preference, but it was a foot in the door—Rivers, already a star, noticed him. One day, seeing Steichen sitting alone in the lunchroom at the Chargers’ facility, Rivers walked over and sat down with him. He told Steichen he could tell he’d been a QB before, which led them into a conversation about Steichen’s time at UNLV. Rivers is from Alabama; for people from Alabama, college football is a forever-interest.
When Steichen later became Rivers’ position coach, they realized quickly that they were “wired the same,” as Steichen put it. To Steichen’s relief, Rivers treated him as an equal, someone whose input mattered. By both accounts, their working relationship couldn’t have been better.
They became friends, too. Long after Rivers left for Indianapolis and later retired, and long after Steichen went to Philadelphia and called plays in a Super Bowl, they stayed in touch. During football season, they spoke weekly, Rivers leaning on Steichen not just as a friend but as a sounding board for the high school team he coached. Eventually, the small Catholic school in Fairhope, quarterbacked by one of Rivers’ 10 children, ran a simplified version of Steichen’s offense.
Rivers wasn’t in Indianapolis on this cold, gray Monday morning—piles of dirty, plowed snow still clinging to the corners of the parking lot, amplifying the contrast with his South Alabama salt life—to see Steichen, or anyone else who still worked there: Theresa from sales, whose family went to his church, or Matt from PR, whose wife went to N.C. State, and whose family once gathered with Rivers’ for a barbecue during a bye-week game against UNC. Nor Dr. Tom, the same team doctor from 2020, now poking and prodding him, testing his nerves with a Taylor Hammer and a cold stethoscope as Rivers sat upright, flexing his right hand in thought.
Could one of these machines detect the nerve damage, he wondered, the dullness in his pinky and ring finger that made gripping a football harder than it used to be? He glanced down at his stomach. He’d never been some bronzed Adonis, but if he was being honest, he wasn’t quite the same shape through the middle anymore. Then the knee, the one with the torn ACL he’d played through, the one people warned him he’d later regret; he would never say it out loud, but it hurt like hell. And the toe, that freaking big toe that had basically ended his career in 2020; for a tough-as-bedrock ironman like him, it was strange that this single digit haunted him most. Achilles, eat your heart out.
Would he really be able to do this? Could he jump straight out of civilian life and back into the NFL after nearly five years away?
Steichen entered the room with the familiar smile of an old friend.
“You good to go spin it a little?” he asked.
Rivers stood, hugged him, and off they went to the practice field.
Rivers knew the arm that had been dormant for 1,800 days wasn’t what it once was, but he believed it was still enough. And as he zipped a fifteen-yard out route to a practice-squad receiver, Steichen glanced over at Chris Ballard and nodded, confirming as much. Just like that, the Hall of Fame clock, only weeks from ticking toward a possible induction, reset. By Tuesday morning, Rappaport and Schefter were tweeting the unbelievable news.
And literally five days later, Rivers—his “Uncle Phil” nickname lovingly converted to “Grandpa Phil” by his Gen-Z teammates—led a come-from-behind drive against one of the best teams in football, sealed by a 60-yard-field goal. Seattle would sneak down the field and take that win off the board, but the truth was already revealed: Rivers was better than whatever else the Colts could throw out there, and the Colts weren’t dead yet.
Monday, Rivers jumps right into another test against the class of the NFL. Questions remain: can his body hold up over multiple games, or can a man who was, only weeks ago, prepping for Jackson high school in the semifinals of the 4A state playoffs be ready to take on the mind of Robert Saleh? And most of all, what other twists and turns are still in store for this Disney-ready tale? All due respect to the 49ers’ unreal tale of resiliency through attrition, but come Monday, America will be rooting for Grandpa Phil.
49ers
Implied Team Total: 26
It is an underreported story, but the 49ers are still in contention for the hardest division in football despite some of the most devastating injury luck possible. First, they had the bizarre story of WR Brandon Aiyuk, who was hurt last season and reportedly wouldn’t rehab with the team, who essentially broke up with him mid-season, before he ever came back; his days with San Francisco are done. Then, they started adding: Kittle missed four games, Purdy missed eight of nine games, Bosa was lost for the year, and then Warner was lost for the year. Mykel Williams, Ben Bartch, Ricky Pearsall for six games, Nick Martin, Renardo Green, and then, Pearsall again.
The fact that they are now 10-4 and have a puncher’s chance for the West is genuinely remarkable. According to Pythagorean expected wins, however, they have overachieved, winning 2.3 wins over expected.

The 49ers are above average in offensive EPA, and below average in defensive EPA allowed. This puts them in our favorite quadrant: good offense and bad defense. This tends to put teams in games with higher play volume and more scoring opportunities.

Offensively, the 49ers are well above average in dropback EPA and about average in rush EPA. This may surprise people since the 49ers have RB Christian McCaffrey. However, McCaffrey has been inefficient as a rusher, and most of his fantasy production has come from his usage and receiving acumen.

The 49ers rank ninth in offensive EPA per play and second in offensive success rate.

They rank ninth in offensive EPA per dropback and third in offensive success rate on dropbacks.
The 49ers have averaged 27 seconds to snap (15th). I’ve spent a lot of time detailing how the Shanahan acolytes have traditionally run slower-paced offenses, but have been slower in 2025. I won’t waste a ton of time, but it seems to be an intentional philosophical shift.
They have also been more inclined to pass, with a pass rate of 56% (T-19th) and a pass rate over expected (PROE) of 1.70% (12th), both higher than their rates from previous years. This seems to be a shift based on necessity, as the 49ers have had more success passing than running this year.
QB Brock Purdy has been out more than he has played, but when we’ve seen him, he has been productive. He has three QB1 weeks and three QB2 weeks, and last week, he had a 31-point spike game.

49ers’ QBs have dropped back 521 times this season (16th). With a near-average pass rate and near-average total dropbacks, the 49ers’ passing game has a medium level of volume. Purdy is the Q11 in PPR/G, which is about what we’ve come to expect from him.
The Colts have allowed the 21st-most fantasy points to opposing QBs in their last five games. They will be without CB Sauce Gardner for the third straight game. This should be a matchup Purdy can exploit.

The 49ers have three pass-catchers with a target share per game rate of at least 15%: TE George Kittle (24.8%), WR Jauan Jennings (19.7%), and RB Christian McCaffrey (16.6%).

Jennings has been solid, hitting WR1 thresholds twice this year, narrowly missing another, and having six single-digit PPR performances. Although he doesn’t appear on the list of carnage above, Jennings self-reported broken ribs to the press early in the year; since the majority of his weeks in the gutter were before Week 9, it can’t be ruled out that he was struggling due to injury and is perhaps feeling better lately, but that is conjecture.

I have a touchdowns-over-expected (TDOE) model based on TDs per yards, with each player's rate compared to the league average TDs/Yds. With it, we can detect impending regression in the outliers; Jennings ranks third among WRs in TDOE and is a negative TD regression candidate.

Ricky Pearsall, who suffered a knee/ankle setback, has been ruled out for Monday. Let’s pause here and explore all of the cause-and-effect of an offense with and without Pearsall, as well as with and without Purdy.
First, Jennings with and without Purdy: it’s very close and should probably be considered a push; technically, Jennings has been slightly better without Purdy.

Jennings with and without Pearsall: a very slight rise in targets and yardage in a limited sample, but it is also basically the same.

Kendrick Bourne, with or without Pearsall, shows the starkest difference. In six games without Pearsall in the lineup, Bourne has scored almost eight additional points and over 50 more yards. There is no TD data in this sample, which would increase its volatility.

Bourne recorded two WR1 games in back-to-back weeks. Both of these occurred while Pearsall was unavailable. I like Bourne as a desperation sleeper in deeper PPR leagues.

Another 49ers’ WR is Demarcus Robinson, who has benefitted from Pearsall’s absences for fantasy production, but not by a significant amount. He is better left on the bench. Bourne seems like the clear beneficiary.

The Colts are beatable through the air, especially while Gardner is out. They have surrendered the fifth-most fantasy points to opposing WRs in their last five games.

The weapon most will covet in the 49ers’ passing game is Kittle, who has been on fire since Week 8, scoring 96.1 PPR points during that time and ranking as the TE3 overall. He has had six TE1 weeks, one TE2 week, and two single-digit PPR games, including a goose egg. It is well-known that Kittle is sacrificed to the running game, where he is an excellent blocker; when that happens, he doesn’t score fantasy points.

Kittle has played far better with Purdy in the lineup since Purdy joined the team, scoring twice the TDs and five and a half more PPR points per game.

Kittle also plays better without Pearsall this year, having recorded roughly 5.5 more PPR points in games without him (these were taken over different sample sizes, so they are not simply the same 5.5 TDs).

Kittle shows up as a negative TD regression candidate based on TDs/Yds TDOE, having scored more than two TDs over expected. Kittle’s career TD rate is 6.4%; his TD rate this season has been 11.1%. This is essentially right in line with his career year, 2022, when he had 11.2%, but it is well out with his 6.7% rate from last year. He’s probably set to regress a little, but don’t bank on a huge downturn. I love Kittle this week for a huge game.

The Colts have surrendered the 21st-most fantasy points to TEs in their last five games. They have been easier to beat with WRs.

The Colts’ defense is above average in both dropback EPA and rush EPA allowed.

Opponents throw on Indy 62.1% (5th). This makes them a pass funnel based on their opponents’ tendencies. They have seen 583 dropbacks (4th).

The Colts rank 11th in EPA per play allowed and 20th in defensive success rate. They rank 14th in EPA per dropback allowed and 21st in defensive success rate on dropbacks.
The Colts use man defense at a rate of 29.7% (8th) and single-high safety at a rate of 50.4% (19th). They use Cover 3 (28.1%) and Cover 1 (21.1%) more than any other alignment. Their blitz rate is 24.2%, only slightly above average.
Fantasy Points’ coverage matchup tool assigns a zero-based matchup grade to each pass-catcher based on their opponent’s use of specific types and rates of coverage and how that pass-catcher performs against them. Positive numbers indicate a favorable matchup and negative numbers indicate an unfavorable one.
Based on this model, Jennings (+14.7%), Kittle (+1.2%), and McCaffrey draw a favorable matchup, while Bourne draws an unfavorable one (-2.2%).
PFF’s matchup tool is player-based, pitting the PFF ratings of individual players against each other for an expected number of plays based on historical tendencies and rating on a scale from great to poor.
Based on this model, Jennings’ and Kittle’s matchups appear great, while Bourne’s grades out as good. As a receiver, McCaffrey’s matchup also shows up as great.
The 49ers’ pass-blocking unit has been excellent, allowing just a 1.79% pressure rate over expected (PrROE). The Colts’ defensive pass rush has been awful, generating just a 1.93% PrROE (29th). The combination of the two gives the 49ers one of the most significant pass-blocking advantages of the week while on offense.

On the other hand, the 49ers’ run blocking unit has been poor, generating just a 1.64 adjusted yards before contact per attempt (adj. YBC/Att, 28th), while the Colts’ run defense allows 1.91 adj. YBC/Att defensively (11th). This gives the 49ers a distinct disadvantage in run blocking.

The 49ers rank 19th in offensive EPA per rush and 13th in offensive success rate on rushes.
They utilize McCaffrey as a true bell cow; he has an 80% snap share, a 19% target share, and 59% of his team’s rushing attempts in the last five games. On the season, McCaffrey ranks second in snap share, behind only Jonathan Taylor, first in target share, and fifth in percentage of team rush attempts.

McCaffrey’s numbers look really great. We are used to seeing a straight line across the top with all top-3 values in his best seasons, but McCaffrey’s efficiency metrics are all down from his other three RB1 seasons; however, not all ranks are created equal, and McCaffrey’s passing stats are so far beyond the field’s that it can cover all sins.

His route percentage is over 7% higher than second-place Bijan Robinson’s. He has 211 air yards, over twice what second-place Kyren Williams has. He has 102 targets, 23 more than second-place De’Von Achane. He has 86 targets, leading Achane by 22. He has 820 yards, 136 more than Robinson. H has 20 targets inside the 20-yard line, six more than Kenneth Gainwell. He has 43 receiving first downs, 15 more than Robinson (this would be 12th among WRs).
But McCaffrey isn’t only a great receiver; he enters Week 16 ranking third in rushing attempts (259) and green zone rush attempts (30). His high-value touches (HVTs, 116) are so far out of the norm compared to other RBs that it looks as if he plays a different position entirely.

With this enormity of HVTs, of McCaffrey is still the RB1 by 20 PPR points despite a 3.6 YPC. He has been an RB1 in 12 of 14 games, barely missing the cut last week and barely missing the top 24 another. He also spikes regularly, putting up six games with more than 25 PPR points, three games with over 30, and one at almost 40. He is simultaneously one of the safest RBs in fantasy and one of its deadliest proximity mines, capable of destroying matchups all by himself.

With Purdy, McCaffrey is slightly better, but this is tied to TD luck. Without that, he is largely the same, if not slightly worse.

The Colts rank fourth in EPA per rush allowed and 14th in defensive success rate on dropbacks. This means they’re very good at shutting down the run on a play-to-play basis, but less effective at consistently disrupting opposing passing plays.

The Colts have surrendered the 17th-most fantasy points to RBs in their last five games. They have been more susceptible to giving up ground production than receiving production to RBs during that span, holding opposing RBs to 27th in receiving yards in their last five games.
