Quick Slant: MNF - All Shred, No Shed

Quick Slant: MNF - All Shred, No Shed

Mat Irby’s Quick Slant

When the Giants cut WR Ed McCaffrey after his third season, the 49ers came calling a week later. It wasn’t a chance to relish some homecoming in Northern California, where he’d played at Stanford; it was a job, and McCaffrey was clinging to an NFL career that felt fragile. Gloveless—arms as naked as a reed—he caught two TD passes that season, never earning much behind Jerry Rice and John Taylor. In the end, he collected a Super Bowl ring for his trouble. Yet after that, McCaffrey found himself unemployed again, left to ponder the limits of his remaining days on NFL sidelines.

Then, in March, the phone rang. It was Denver. The 49ers’ OC, Mike Shanahan, had taken the head coaching job there and launched a free-agent spree, adding over a dozen players, including seven starters. Shanahan specifically targeted McCaffrey, having seen him handle practice reps against the likes of Deion Sanders and Eric Davis in San Francisco; he loved the versatility the 6’5” receiver offered. In Denver, McCaffrey finally found a permanent home, teaming with Rod Smith to form a duo that lasted from 1995 until McCaffrey retired in 2003, two more rings in tow.

Looking up at them, Shanahan’s son, Kyle, the ball boy, had aspirations of his own. While starring as a WR at Cherry Creek High School in nearby Greenwood Village, Kyle patterned his game after McCaffrey.

“Ed and Lisa are really good friends of mine,” Shanahan told David Bonilla in 2019. “His dad was my hero. He's why I wore No. 87 in college.”

Shanahan looked up at McCaffrey. McCaffrey’s toddler son, Christian, who would play on the field at Mile High with other players’ kids long after games were over, looked up at Shanahan. One famous anecdote purports that Shanahan even babysat McCaffrey as a teenager—though it was actually Kyle’s sister, Krystal, not Kyle.

When Shanahan finally got his own shot as HC, the first pick of the Shanahan/GM John Lynch era in San Francisco was Stanford DT Solomon Thomas in 2017. They had to pass on another Stanford legend—Christian—the little boy who used to run around and play after games—who was also, by then, the single-season and career NCAA all-purpose yards record holder and 2015 Heisman runner-up.

“It was tough, very tough, especially being an offensive coach and thinking all the fun things you can do with a guy like that,” Shanahan admitted to Bonilla about passing on the younger McCaffrey. Lynch confirmed the temptation.

“We thought long and hard about [drafting him], we really did,” Lynch said.

The team had multiple weaknesses, and analytics services like PFF had begun to warn against overvaluing RBs. McCaffrey’s size also made him a gamble—one the Panthers took just five picks later at number eight.

McCaffrey was a revelation in Carolina, with physics-defying quickness, surprising all-purpose durability, a relentless motor, and arguably the best receiving skills ever seen in an RB. Fantasy players already knew: McCaffrey was the second coming of Marshall Faulk.

But over time, Carolina QB Cam Newton declined, then departed. Ownership fired HC Ron Rivera and turned to Matt Rhule, who dragged what remained all the way to the bottom. During all that turbulence, McCaffrey suffered multiple significant injuries, prompting concerns about his durability (even sparking quiet validation for long-time skeptics of his size). Rumors swirled; a trade seemed imminent, though the team promised McCaffrey that he was safe.

Then McCaffrey’s agent called.

For Shanahan, it was a chance to redo 2017—an opportunity to add a missing element to a contending roster at a position where the 49ers had struggled for an answer. For McCaffrey, it was a front-office betrayal and a heartbreaking exit from a community he adored.

Over time, McCaffrey embraced his second chapter in Northern California, joining a friend of his father’s who had known him since birth. He quickly realized the fit was perfect, and Shanahan could elevate him to another level.

McCaffrey still loves Carolina—he even owns a home there. “Getting traded to San Francisco has opened my eyes to so much,” he told the Charlotte Observer this week. “It was a massive blessing. But it was also bittersweet at the time. I loved Charlotte. I loved Carolina.”

Today, it’s almost as strange to picture McCaffrey in Panther blue as it once was to see him out of it. Inviting his old team to Levi’s Stadium will be sentimental, but McCaffrey knows he’s right where he’s meant to be. Fantasy players, too, as McCaffrey flirts with his fourth RB1 overall season, which would tie Emmitt Smith for the all-time record.

On Monday, McCaffrey will be all shred, no shed. The 49ers, growing always healthier, have a job to do, and Carolina is now just another obstacle in their way.

Panthers

Implied Team Total: 21.25

According to Pythagorean expected wins, the 49ers and Panthers are each playing above their level. For the 49ers, their health catches up with their luck, as they have recently welcomed back QB Brock Purdy, TE George Kittle, and WR Ricky Pearsall. For the Panthers, they are probably not as good as their 6-5 record indicates, and no one is coming to save them.

A table of numbers and lines

AI-generated content may be incorrect.

The Panthers are below average in offensive and defensive EPA. This is the worst combination for real-life football and fantasy football.

A screenshot of a game

AI-generated content may be incorrect.
Image Courtesy: rbsdm.com

Carolina ranks 26th in offensive EPA per play and 15th in offensive success rate. They rank 25th in offensive EPA per dropback and 14th in offensive success rate on dropbacks.

A screen shot of a chart

AI-generated content may be incorrect.

The Panthers are relatively slow at the line (27.3 seconds to snap, T-19th). They have a 55% pass rate (T-21st). They rarely have larger leads, but they spend a fair amount of time behind by seven or more (37.1% of offensive plays, 24th). When down by as much, their pass rate increases to 63% (24th). Their natural inclination is to run; their pass rate over expected (PROE) is -5.06% (30th).

A screenshot of a computer

AI-generated content may be incorrect.

Bryce Young has 35 dropbacks per game (20th), converting them into 31.4 attempts per game (17th). Young has 23 rushing attempts (24th), which he’s turned into 83 rushing yards (26th). His rushing expected fantasy points according to Fantasy Points’ model (XFP) rank 35th among all QBs. So, Young has a low rushing platform with medium-to-low passing opportunity—not a preferred combination.

This makes Young a TD-dependent option. He has been a QB1 just twice in 10 games and a QB2 three additional times. He has three 3-TD games this season, corresponding with his three highest fantasy outputs.

A graph of a graph of a number of people

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

Young has 14 TDs thus far, which is decent enough. His TD rate is still at just 4.2%, which is nothing out of whack or screaming for regression. Young’s issue has been the combination of mediocre volume and low efficiency, leading him to complete 20 passes or gain 200 passing yards only twice.

On those two occasions, Young has gone big, completing 31 and 35 passes and hitting yardage totals of 328 and 448. In a way, this has hyper-accelerated his production rates. However, in reality, because he’s delivered so much of his production in these isolated one-offs, generally speaking, no one has been playing him when he's gone off.

Even with two monster games lumped in, though, Young is below average in EPA and CPOE.

A graph with numbers and dots

AI-generated content may be incorrect.
Image Courtesy: rbsdm.com

San Francisco's defense has been very beatable recently, and they’ve allowed the third-most fantasy points to opposing QBs in their last five games.

A screenshot of a graph

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The Panthers have only two pass-catchers with at least a 15% target share per game in their last five games: WR Tetairoa McMillan (26.7%) and WR Xavier Legette (17.8%).

A diagram of a football game

AI-generated content may be incorrect.

McMillan’s target share is plenty in most offensive environments. In fact, his 24.2% share across the entire season is 16th. He shows up in a similar range across other predictive metrics, including percentage of team yards (11th), yards after catch (YAC, 16th), targets inside the 20 (T-4th), end zone targets (T-5th), first-read targets (12th), and first downs (3rd). But his production has been uneven, hitting as a WR1 only twice (once barely) and as a WR2 twice.  

A graph of a graph with numbers and a line

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

Part of it is that McMillan is tied to Young’s inefficiencies, so even with WR2 usage, his TD production has been a drag. What is disappointing for those who took the plunge on McMillan this summer is that his involvement and peripheral metrics are good enough to chase WR1 season-long output. Instead, he’s been a spotty, up-and-down fantasy option with more downs than ups.

Legette, the second-year first-rounder, has been far worse. For the year, he lacks the type of involvement necessary to make an impact in a run-first offense. In nine games, Legette has seven games where he has finished outside the top 24, including six where he’s been an absolute disaster.

A graph with red and green bars

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

Many were excited for WR Jalen Coker this summer before an injury caused him to miss the first six games of the year. But Coker is the clear third target, and his market share, even at its highest, is not overly high. Without insane team passing volume or efficiency, Coker can’t be trusted at this point.

A graph with red bars

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The 49ers struggle against WRs, as they have against QBs; they have surrendered the second-most points to WRs in their last five games—surrendering both expected points (EP), which indicates quality opportunities, and fantasy points over expected (FPOE), indicating efficiency. This means teams are opting to throw to their WRs against San Francisco, and those efforts are roundly succeeding.

A screenshot of a graph

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The Panthers’ top TE is Ja’Tavion Sanders, who has not been a viable fantasy contributor. Sanders has posted one TE1 week and one additional TE2 week; otherwise, he is outside of the top 24. He’s only had a target share higher than 10% three times, which means he’s usually unplayable.

A graph with red and green lines and numbers

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

If ever there were a reason to use him, it might be that San Francisco is horrible at defending TEs in their last five games as well; LB Fred Warner is an excellent coverage LB, but his injury in Week 6 has left the team without good answers in the middle.

Even with the savage matchup, the Panthers' team total is still pretty low. Sanders was tough to stream in single-TE, non-premium formats, where other options like A.J. Barner, Mike Gesicki, and Mason Taylor were far more appealing and generally available. But if you're past that and thinking about Sanders here on Monday night, it's not a terrible stab in the dark.

A screenshot of a computer

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The 49ers’ defense is broken. They rank 26th in EPA per play allowed and 30th in defensive success rate.

A table of numbers and symbols

AI-generated content may be incorrect.

They rank 28th in EPA per dropback allowed and 29th in defensive success rate on dropbacks.

The temptation is to blame all of San Francisco's defensive woes on injuries, as they are without a pair of All-Pros, DE Nick Bosa and LB Fred Warner, both out for the season. That certainly is a contributing factor.

The splits through Week 4, when Bosa was lost, are relatively stark: San Francisco ranked 14th in EPA per-play allowed at that point. By Week 6, when Warner was lost, they were already down to 22nd. Even before all of that, the 49ers may have been weaker on defense than we are accustomed; the injuries only exacerbated the problem.

The 49ers are above average in rush EPA allowed and below average in pass EPA allowed, so they are a bit of a pass funnel—something that is reinforced by the 427 dropbacks they’ve faced (4th).

A graph with different football logos

AI-generated content may be incorrect.
Image Courtesy: rbsdm.com

DC Robert Saleh is back in San Francisco, left to clean up after the team let Charvarius Ward, Talanoa Hafunga, and Dre Greenlaw go this summer in a massive team reset. Now, without Bosa and Warner, the defense is missing five of its most significant starters from its recent run of dominance.

Saleh was a disciple of Pete Carroll, Gus Bradley, and Dan Quinn with the Legion of Boom in the 2010s. He employs a similar Wide-9/Cover-3 scheme. The 49ers run zone 77.3% (6th) and single-high 54.8% (9th). Unsurprisingly, they would then favor Cover 3 zone (37.7%, 6th). They also run quarters 20.6% (4th). They blitz at the third-lowest rate in the league at 18.0%.

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, McMillian’s matchup shows up as unfavorable (-8.2%), as does Legette’s (-13.0%); Sanders’s matchup grades out as favorable (+11.1%). Coker doesn’t have enough routes to qualify.

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, Coker’s matchup grades out as great, Legette’s grades out as fair, and Sanders and Young’s grade out as poor.

McMillan’s pretty much in auto-start territory, even with so many mediocre finishes, because his peripherals are just too good to ignore. However, he’s the only Carolina pass-catcher who can be trusted.

Carolina allows 9.35% pass rush over expected (PrROE, 19th), while San Francisco generates -3.98% PrROE, dead last in the NFL. This sets up Carolina with the seventh-best advantage in pass-blocking for the week.

A graph of a football player

AI-generated content may be incorrect.

Carolina’s offensive run-blocking has been functional this year, generating 1.97 adjusted yards before contact/attempt (adj. YBC/Att, 11th of 28 Week 12 teams). The 49ers allow 2.06 adj. YBC/Att (13th of 28 Week 12 teams). This makes for a relatively neutral matchup when Carolina is on offense.

Carolina is 13th in offensive EPA per rush and 15th in offensive success rate on rushes. San Francisco is 13th in EPA per rush allowed and 29th in defensive success rate on rushes.

The disparity between San Francisco's defensive efficiency and success rate means it's easier for an opponent to sustain consistent wins in the running game against the team. However, they aren’t prone to giving up big plays in the running game.

To start the season, RB Chuba Hubbard got the incumbent treatment after a solid 2024 campaign, and Hubbard didn’t necessarily play badly to start the season. However, an injury paved the way for RB Rico Dowdle to earn a larger role after back-to-back games with over 200 scrimmage yards. Eventually, it became undeniable that Dowdle was the better option.

Since relinquishing control of the backfield to Dowdle three games ago, Dowdle has operated as a bell cow, earning a 79% snap share, a 15% target share, and 77% of the team’s rush attempts. This is elite usage. Only Miami RB De’Von Achane has a larger percentage of team opportunities (49%) during the last three weeks.

A screenshot of a computer

AI-generated content may be incorrect.
Image Courtesy: RotoViz Weekly Stat Explorer

Dowdle’s best two games came during Hubbard’s injury absence against Miami and Dallas, two lightweight run defenses. Since taking on the primary role in Week 9, he has been an RB1 in only one of three games; however, he has yet to bottom out.

A graph of a graph with numbers and a line

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The 49ers will prioritize stopping the run, as most Carroll-type defenses do. As mentioned, the 49ers are a bit of a run funnel based on EPA. The problem with the thesis that the Panthers will come out passing is that they have been so committed to the run, and the 49ers don’t seem to provide enough resistance to divert that. So, if the Panthers can choose what to do, which it seems they might, they should likely choose to run against a defense that has allowed the 10th-most fantasy points to RBs in their last five games.

A screenshot of a computer

AI-generated content may be incorrect.
Image Courtesy: RotoViz Stat Explorer

The devil’s advocate case is that the 49ers, who are favored by seven, will play from a positive game script and force the Panthers to throw at some point. Even so, any lead the Niners build up would have to come early and be significant, as Carolina won’t likely come off the run until they feel they must.

Dowdle is tough to bench in managed leagues with such high workload totals.

49ers

Implied Team Total: 28.25

This post is for paying subscribers only

Subscribe
Already have an account? Log in