Fantasy football analyst Ray Garvin shares his thoughts on Week 12’s most noteworthy action.
Has George Pickens taken over?
This game had a little bit of everything, but the biggest storyline coming out of Cowboys–Eagles is that George Pickens has officially planted his flag as that guy in Dallas. But before we get there, let’s start with Philly. This was finally a get-right spot for A.J. Brown and it couldn’t have come at a better time. It’s been a frustrating few weeks — he’s voiced it publicly — and fantasy managers have been sweating it out. But he delivered. Eight catches, 110 yards and the touchdown, and it felt like the Eagles made a real effort to reestablish him early. That’s exactly what you want to see moving forward because the talent has never been in question.
Advertisement
DeVonta Smith wasn’t far behind. He had 6 for 89 and legitimately could have ended the night with an even bigger line. Jalen Hurts pushed the ball well, looked in control and the passing offense simply worked. The problem, again, was the ground game. Saquon Barkley just hasn’t had the juice or the running room this year. Ten carries for 22 yards tells the same story it has all season. He didn’t kill you thanks to his receiving involvement (7 receptions for 52 yards), but the explosive ceiling we drafted him for feels far away in this version of the Eagles offense.
Dallas, though … this was about Dak Prescott and this passing attack. Dak gave you everything you wanted from a mid-round quarterback who can go nuclear in the right matchup. Over 350 passing yards, two touchdowns and another on the ground. Javonte Williams didn’t score but he handled the rushing work as always and kept them ahead of the sticks.
But the real takeaway — the only one that matters — is what the Cowboys did when they needed plays. It wasn’t CeeDee Lamb. And Lamb, for as talented as he is, left a ton on the field again. Drops, missed opportunities and another game where you walk away wanting more. Dallas still fed him 11 targets and he gave you the big 48-yard shot, but this isn’t the dominant version of Lamb we drafted for.
Advertisement
Instead, it was George Pickens taking over.
When the Cowboys needed conversions, when they needed spark plays, when they needed someone Dak trusted, it was Pickens. Nine catches, 146 yards, another touchdown and he moves to second in the NFL in receiving yards. For a player many believed capped out as a WR2, he’s now playing like a high-end WR1 in fantasy and a legitimate superstar in this offense.
Going forward, the Cowboys are still alive in the playoff race and it’s going to be fascinating to see how far this Pickens-first passing attack goes. Right now though, he’s the best wide receiver on the roster — and it’s not close.
Advertisement
Instant Reaction: Treat George Pickens like a high-end WR1 the rest of the way.
Kansas City Chiefs offense
The Chiefs were down in the fourth quarter and had to claw their way back to a 23-20 overtime win where nothing came easy and nothing looked clean. Patrick Mahomes did his part, but it was really Kareem Hunt and his physical, tone-setting style that dragged this one across the finish line. Mahomes threw for 352 yards, yet it did not feel like a 300-yard day. No touchdowns, one interception, four sacks and a QBR of 67 tell the real story. The deep ball is still broken. Explosive plays are still missing. Every drive feels like a grind.
The Chiefs needed someone to settle this game down and it was Hunt from start to finish. Hunt was physical and relentless, handling a true workhorse load with 30 carries for 104 yards and a touchdown. He tacked on three catches for 26 yards and never came off the field in meaningful situations. He is the identity of this offense right now and the reason Kansas City’s playoff hopes stay alive heading into December.
Advertisement
Rashee Rice also continues to be the one receiver Mahomes can trust. Eight catches for 141 yards on 12 targets and the only consistent chain mover this passing attack has. Xavier Worthy had four for 59 but the volatility is obvious. Without the deep ball in this offense, those splash plays that used to be routine are now hopeful swings. Travis Kelce chipped in 43 yards on four grabs, but we are clearly watching a version of him that needs help around him — and he is not getting it.
On the other side, Daniel Jones hit a couple early touchdowns, then cooled off. The Chiefs defense erased Jonathan Taylor and outside of a Michael Pittman Jr. score, the Colts did not offer much resistance.
For fantasy managers, the big takeaway is simple. You start Kareem Hunt every week. You start Rashee Rice every week. Everything else in this passing attack is risky unless Kansas City finds a way to unlock even a fraction of their old explosive formula. Until then, the Chiefs will have to win like this, grinding through games and riding Kareem Hunt’s volume to stay afloat.
Instant reaction: Kareem Hunt is a volume-based RB2 you start weekly without hesitation.
Advertisement
Justin Jefferson is on alert
We’ve officially reached that uncomfortable territory with Justin Jefferson, where fantasy managers are no longer asking if they should be concerned, but how concerned they should be. And after what we just watched in Green Bay, the panic meter is absolutely heating up. With J.J. McCarthy under center, the Vikings simply do not present enough of a passing threat for Jefferson to operate like the top-five fantasy asset we drafted him to be. This wasn’t a game where Minnesota got overwhelmed or forced into a shootout. It was a game where they were boxed in from the start because the Packers knew McCarthy wasn’t going to beat them through the air.
Green Bay ran the ball 42 times for 146 yards and two touchdowns, and that was the entire ballgame. It controlled the pace, kept everything in front of it and never respected McCarthy enough to open up space for Jefferson. Meanwhile, Emanuel Wilson did exactly what he was supposed to do with Josh Jacobs out, grinding out 28 carries for 107 yards and two touchdowns. It wasn’t flashy, but it was starter-level production and he earned himself another week of relevance if Jacobs can’t return. He should be a priority waiver pickup.
Advertisement
The encouraging development for fantasy purposes was Christian Watson. He led the Packers in targets, picked up multiple chain-moving plays on back-to-back catches and looked like the clear preferred option even with Jayden Reed designated to return. Watson’s stock trending up is real.
But Jefferson … this is rough. Four catches for 48 yards on six targets make it three straight games under 61 receiving yards, three straight games with five or fewer receptions and still only two touchdowns all season. The talent hasn’t changed, but the environment and quarterback play have dragged him into WR2 territory.
Instant Reaction: The panic meter is officially hot for Justin Jefferson with J.J. McCarthy at quarterback.
Jahmyr Gibbs goes nuclear; Wan’Dale Robinson emerges
Jahmyr Gibbs just detonated Week 12. Fifty-five-point-four fantasy points. Two hundred and nineteen rushing yards. Eleven catches for 45 more. Every time he touched the ball against the Giants, it felt different. You could see it from the first quarter on. The burst, the bend, the acceleration, the ability to erase pursuit angles instantly — this is the version of Gibbs only a handful of players on the planet can reach. When he hit the corner on that long run and Javon Holland had absolutely no shot, it was one of those, “Yeah, this dude is different” moments. Then, to walk into overtime and end the game on the second snap? Silly. This is a fantasy RB who breaks matchups.
Advertisement
Fifteen carries for 219 speaks for itself, but what really matters is the deployment. Twelve targets. TWELVE. That’s how you maximize Gibbs. When you get the ground explosion plus legitimate receiver-level volume, you’re not dealing with an RB1 — you’re dealing with a weekly slate-breaking cheat code.
But the real actionable takeaway in this game was found on the other sideline because Wan’Dale Robinson just planted his flag as a legit fantasy starter with Jameis Winston under center. Winston did what Winston does: 366 passing yards, and Robinson was the biggest beneficiary. Fourteen targets. Nine catches. One hundred fifty-six yards. He was the engine of the passing attack and he looked every bit like the top option in the offense. The usage was elite, the efficiency was strong and the trust was obvious.
With Winston pulling the trigger, Wan’Dale isn’t a flex, isn’t a “maybe,” isn’t a matchup play. He’s a locked-in WR2 with real weekly upside because this style of quarterbacking funnels volume to players who separate quickly and create after the catch.
Advertisement
Instant reaction: Wan’Dale Robinson looks like a locked-in WR2 with legit upside as long as Jameis Winston stays at quarterback (which likely won’t be much longer, pending Jaxson Dart’s health).
Michael Wilson is for real
Every once in a while, you get one of these stretches in fantasy football where a player steps into an expanded role and immediately shows you, oh … this might be different. That’s exactly what we’re watching with Michael Wilson. Marvin Harrison Jr. has now missed two straight games after his appendectomy and Wilson has answered the bell in a big way. Last week, he saw 18 targets, hauled in double-digit receptions, went over 100 yards and led the Cardinals in receiving. This week? Same story. Fifteen more targets, 10 more grabs, 118 yards and once again he paced the team.
He plays different, moves different and right now, he looks like a player who has figured something out in Yaer 3. Jacoby Brissett deserves credit for keeping this offense afloat, gutting out 49 pass attempts while getting knocked around all afternoon, but when the Cardinals needed something positive to happen through the air, the ball kept finding No. 14.
Advertisement
The wild part is that Wilson is doing all of this without even running hot on touchdowns. He’s racking up volume and yardage like a true alpha, yet there is still room for his fantasy ceiling to climb if he starts getting more looks in the red zone.
I don’t know exactly when Marvin Harrison Jr. will return, but I do know this coaching staff would be making a mistake if they dial Wilson back to a background role. You might be looking at the Cardinals’ new WR1 for the rest of 2025.
Instant reaction: Michael Wilson is playing like a locked-in WR2 with real WR1 upside as long as this usage holds.
Shadur Sanders win — but the job isn’t safe
Shedeur Sanders got his first NFL start and his first NFL win, but it didn’t exactly scream “franchise answer.” Credit to Kevin Stefanski for how he handled it. The Browns were not asking Shedeur to drop back 40 times and play hero ball. They gave him a controlled game plan and let the defense do the heavy lifting.
Advertisement
Within that structure, Shedeur still created some juice. He gave Jerry Jeudy a shot downfield that turned into a fumble. He pushed the ball to Isaiah Bond on a vertical. He found Harold Fannin Jr.. The biggest gain came on a screen to Dylan Sampson that Shedeur sold perfectly and turned into a red-zone trip. The final line — 11-of-20 for 209 yards with 1 touchdown and 1 interception after he got tricked by a dropping defensive end — is fine, not earth-shattering. Stefanski already declining to name a Week 13 starter tells you this is still very much an open competition with San Francisco on deck.
The real show for the Browns, again, was Myles Garrett. Three sacks, constant chaos and he is now up to 18 sacks on the season. The single-season record is 22.5. He needs 5 in 6 games. We’re watching a Hall of Fame trajectory in real time. Enjoy it.
On the Raiders side, the offensive line is still a mess. Geno Smith was under duress all game and the run game never got going outside of one or two flashes.
Ashton Jeanty got banged up, but he handled all the work. He ran hard, took a ton of contact and that physicality clearly added up, yet he still gave you 17 carries for 50 yards and, more importantly, 8 catches for 58 yards and a touchdown. The usage is everything.
Advertisement
Instant reaction: Not much to say about the Browns, but Ashton Jeanty remains a volume-driven RB1 you lock into lineups every week, even behind this shaky Raiders offensive line.
Rome Odunze panic meter
What a difference two months make. The first four weeks of the season, Rome Odunze looked like a high-end wide receiver for fantasy football. The usage was there, the talent was obvious and everything about his connection with Caleb Williams looked like what you expect from the Bears’ top 10 picks. But here in Week 12, it’s getting harder and harder to ignore what’s happening.
I can tell you to follow the usage until I’m blue in the face. Odunze led the Bears with 9 targets, which normally is the exact signal we want, but it doesn’t matter much when the results keep flatlining. He converted just three of those nine opportunities for 53 yards — and this comes right after another week under 55 yards. The splash plays that defined his early season just are not showing up.
Advertisement
More Fantasy Football analysis
And the most frustrating part? The Bears passing attack is cooking. Caleb Williams threw for 239 yards and 3 touchdowns against Pittsburgh. DJ Moore scored twice. Colston Loveland added a touchdown. Luther Burden III got a touch and showed juice. This offense is working, but Odunze is stuck in the background while everyone else cashes in.
This isn’t a talent issue. It isn’t an effort issue. It feels like a timing issue and it’s absolutely a fantasy issue. Odunze has one touchdown in his last seven games after scoring five in his first four. Now the schedule ramps up with the Eagles, Packers, Browns, Packers again and Lions still ahead. There are no soft landings coming.
Advertisement
Instant reaction: Odunze has slid into low-end WR2/high-end WR3 territory and the panic meter is officially on.
Jameson Williams busts
Man, this one hurts. I spent all week talking about how explosive Jahmyr Gibbs looked and how this Lions offense shifts into a completely different gear when their playmakers touch the football. And then on the complete opposite end of the spectrum, we get this from Jameson Williams — zero catches, zero yards; nothing on three targets in a game that featured over 1,000 total yards of offense. You read that right. A game with that much production, fireworks everywhere and Jameson Williams gave you a goose egg.
That’s what makes this so frustrating. He entered Week 12 on a genuine mini-heater, getting seven targets a game, scoring in three straight matchups and looking like the version of Jameson Williams we’ve been waiting to see. Instead, the least explosive player on the field in Week 12 was the one who normally brings the juice, and fantasy managers felt every bit of that disappointment.
Advertisement
Even worse, this wasn’t a matchup where Detroit struggled or forgot how to throw the ball. Amon-Ra St. Brown smashed as expected — nine catches, 149 yards and a touchdown — and this offense moved the ball at will. Jahmyr Gibbs was electric. Jared Goff was efficient. The game went to overtime. There were opportunities everywhere. Yet Jameson Williams couldn’t earn anything meaningful, and you cannot convince me he wasn’t simply left out of the game plan.
If you started him, I’m sorry — this is as brutal as it gets. You had every right to expect production in a high-scoring environment, and instead, you got a zero in a game that exploded offensively. Sometimes the stars just align in the worst possible way.
Instant reaction: We move on from this one and flex Jameson Williams next week.
Jaxon Smith-Njigba is having a historic season
What Jaxon Smith-Njigba is doing right now should not feel normal. It should not feel routine. It should not feel like, “Yeah, that’s just JSN.” This is historic, and if you have him in fantasy football, you need to pause for a second and appreciate the type of season you’re getting — because these don’t come around often.
Advertisement
JSN set the Seattle Seahawks single-season receiving record today with 1,309 yards, passing DK Metcalf’s 1,303, and he did it in 11 games. Every other name on that franchise leaderboard needed 15 or 16 games to sniff these totals. JSN is doing it weekly, effortlessly and with style. The deep shots, the YAC, the body control, the touchdowns — it’s all there.
And speaking of touchdowns, he added two more today. Sam Darnold only threw two touchdowns and both went to JSN, because when you have a receiver playing at an MVP-like level, you simply feed him. He cleared 160 yards again, averaged 21 per catch, and now sits not only atop Seattle’s history books but squarely in range of the NFL single-season receiving record of 1,964 yards.
Yes, that record. Yes, that pace. And yes, through 11 games, he is actually ahead of Calvin Johnson’s 2012 pace.
Advertisement
This is special. This is rare. This is the type of season you talk about years later.
Next week, JSN draws the Minnesota Vikings and there is nothing in that matchup that says the ride slows down.
Instant reaction: Enjoy the historic ride JSN has given us.











