Fantasy Football Week 8 Wrap: Christian McCaffrey joins history with TD trifecta

San Francisco 49ers @ Los Angeles Rams

Christian McCaffrey became just the fourth player since the merger to rush, catch and throw a touchdown in the same game during an epic fantasy and real-life performance Sunday (CMC pulled off the trifecta in Stanford as well). Playing for the first time after practicing with the 49ers, McCaffrey became just the second fantasy back to score 40+ PPR points in a game this season (Alvin Kamara also accomplished the feat Sunday). It certainly helped that Deebo Samuel was out, but it was incredibly encouraging to see McCaffrey get a team-high nine targets from a quarterback who ranked toward the bottom of the league in RB target rate this season.

San Francisco’s schedule starts easing up after the upcoming bye, when McCaffrey will return to being a weekly top-three fantasy back.

Cooper Kupp had his usual first two quarters but was held without a catch in the second half until the final minute when he suffered an ankle injury during a completely meaningless play. Kupp is reportedly optimistic he "dodged a bullet" but was spotted noticeably limping with his ankle wrapped after the game (the same fate just as easily could've happened to CMC, who was curiously getting carries during SF's final pointless drive as well).

Fantasy managers will be holding their breath waiting for more definitive word on the star wideout’s health. LA’s offense could legit become the worst in the NFL should Kupp be forced to miss time.

Undrafted rookie Ronnie Rivers started at running back for LA, but no Rams RB should be sniffing fantasy lineups at this point. Van Jefferson failed to record a catch during his season debut, while Tyler Higbee suffered a brutal fourth-quarter drop that could've gone for a long touchdown … Allen Robinson remains among the leaders in end-zone targets yet is toward the bottom of the league in yards per route run … San Francisco allowed just 40 yards in the second-half shutout during the 49ers' eighth straight regular-season win versus the Rams.

Denver Broncos @ Jacksonville Jaguars (London)

Both quarterbacks struggled, with Trevor Lawrence continuing to throw bad picks. He has the most red-zone interceptions since entering the league … No Broncos running back is exciting for fantasy purposes, but Greg Dulcich has emerged as a top-12 tight end … Travis Etienne completely took over Jacksonville's backfield with James Robinson gone, running for 154 yards while seeing 20 carries for the first time in his career. He's a locked-in top-10 RB moving forward.

In hindsight, Nathaniel Hackett and Russell Wilson are absolutely perfectly matched (enjoy it while it lasts, which won't be much longer).

Carolina Panthers @ Atlanta Falcons

Marcus Mariota attempted his most passes (28) since Week 1 and finished as a top-10 QB. He's averaged at least 9.0 YPA in three straight games and has the seventh-most rushing yards among quarterbacks this season … Damiere "Dirty" Byrdhit the turbo button during his TD catch ... PJ Walker had the most air yards since the stat started being recorded in 2006 during his touchdown toss to DJ Moore, who was then flagged for removing his helmet. The penalty resulted in a missed extra point and the Panthers losing in overtime.

Walker missed a wide-open Moore for another 81-yard score earlier in the game, but Moore finished as a top-five WR this week anyway … D'Onta Foremanwas terrific while running in three touchdowns and finished as a top-five RB in a rare week that saw multiple top Panthers fantasy producers. How quickly Chuba Hubbard returns will be key to Foreman's future value … And Kyle Pitts is alive!

Chicago Bears @ Dallas Cowboys

Both Justin Fields and Dak Prescott put up top-five QB numbers in a fantasy friendly matchup that also saw Tony Pollard finish as a top-five RB despite seeing just 15 touches. Fields was highly impressive (10.8 CPOE) despite traveling during a short week and facing a Dallas defense with the league's best pressure rate. Fields is averaging 77 rushing yards with two scores on the ground over the last three games, and he looks like a top-10 fantasy QB moving forward (and judging by his tackling, Fields even appears to know that often the best thing for a QB's fantasy stats is a pick-six!).

Prescott looked much better during his second game back, and it will be Week 10 before his first road game this season … Ezekiel Elliott has never run for three touchdowns in a game in his career. Pollard didn't even need 15 carries to accomplish the feat Sunday when both teams had 200+ rushing yards … I'll be comfortably ranking Khalil Herbert ahead of David Montgomery moving forward. Herbert is a beast, and Fields' sudden growth is big news for the RB's future fantasy value.

Miami Dolphins @ Detroit Lions

The teams combined for the most yards at halftime of any game this season. Jared Goff continues to play far better at home, and Tua Tagovailoa finished as fantasy's top quarterback this week while continuing to lead the NFL in YPA. Both Tyreek Hill and Jaylen Waddle were top-five WRs this week; Waddle clearly scored a third touchdown but was ruled inches short, and Miami didn't bother challenging with an upcoming first-and-goal (that resulted in Alec Ingold's first career rushing TD).

Meanwhile, Hill remains the player most due for touchdown regression across the league (especially after Alvin Kamara's week) after he recorded another 188 scoreless yards. Tua might've cost Hill two touchdowns on underthrows Sunday, but the receiver still managed to have five catches for 117 yards with more than 12 minutes left in the second quarter.

D'Andre Swift had a TD catch, but fantasy managers expected more than five carries for six yards. He lost two short scores to Jamaal Williams, who's quietly been a top-10 RB during 43% of the weeks the Lions have played this season … Detroit became the first team all year to score on each of its first five drives Sunday yet lose the game (and most importantly, failed to cover) anyway.

Arizona Cardinals @ Minnesota Vikings

Kyler Murray is set up for fantasy success with DeAndre Hopkins back and Arizona struggling both to run the ball and play defense. Murray hadn't thrown three touchdowns in a game in more than a year, as D-Hop's return is huge (Murray hadn't surpassed 6.5 YPA in any game before reaching at least 7.0 during the last two games with the WR back). Hopkins made a sick one-handed TD grab Sunday, has seen 27 targets over two games since returning from suspension and should be considered a top-five fantasy wideout moving forward … Rondale Moore had one of the best games of his career, thanks mainly to this nice play  … Dalvin Cook was a top-10 RB this week despite losing rushing touchdowns to both Alexander Mattison and Kirk Cousins (speed kills). ... Justin Jefferson has 506 receiving yards over the last four games but hasn't scored since Week 1.

Las Vegas Raiders @ New Orleans Saints

The Raiders seemed ill-prepared having multiple important players miss a lot of practice throughout the week. Las Vegas would commit their first giveaway since Week 3 in an ugly loss that didn't see their offense cross midfield until 3:15 left in the fourth quarter. It was a rough game for Derek Carr, and Davante Adams was held to three scoreless yards while seeing a lot of one-on-one coverage by impressive rookie Alontae Taylor with Marshon Lattimore out … Andy Dalton starting continues to be terrific news for Alvin Kamara's fantasy value, as he scored the most fantasy points by a back in PPR leagues in any game this season thanks to a season-high 10 targets. Kamara entered without a TD on the year despite 100+ touches, and he made it up for it by scoring three times Sunday.

New England Patriots @ New York Jets

Credit Zach Wilson for getting 8.7 YPA (355 yards) and two touchdowns against Bill Belichick with no help from a running game badly missing Breece Hall (and Alijah Vera-Tucker), although his three picks were no doubt egregious. If Elijah Moore is completely ignored the week following a suspension for complaining about his lack of involvement during a game in which Corey Davis was out and Wilson attempted 41 passes, then there's no hope after all.

Rhamondre Stevenson has quickly emerged as one of the league's best runners but also made a nice one-handed grab while securing 7-of-8 targets to lead the Pats in receiving Sunday. He's fully developed into NE's passing-down back, as many hoped … Mac Jonesthrew an awful pick-six that was called back thanks to a roughing the passer penalty — that didn't affect the play whatsoever — in what was arguably the most game-changing flag of the season.

Tennessee Titans @ Houston Texans

Despite Houston having the benefit of knowing what's coming (rookie Malik Willis attempted a paltry 10 passes, netting 40 yards with a pick), Derrick Henry still rushed for 210+ yards with two touchdowns for the fourth straight game against the Texans. King Henry tied O.J. Simpson and Adrian Peterson for the most 200-yard rushing games (six) in NFL history during a vintage performance. Despite seeing just one target, Henry was one of three backs to top 35 fantasy points in PPR leagues Sunday (there have been five weeks where zero RBs reached that many).

Willis is incredibly raw as a passer but can be treated as a top-15 fantasy QB if Ryan Tannehill continues to miss time despite Sunday's disastrous outcome. There's huge rushing upside right away.

Brandin Cooks would tie Eric Dickerson as the most traded player in NFL history should he be moved again before Tuesday's deadline.

Washington Commanders @ Indianapolis Colts

Sam Ehlinger was a DFS bust but got 8.7 YPA (7.9 CPOE), had a 20+ yard run called back by penalty, drew a long pass interference flag and watched Michael Pittman get tackled an inch short of the end zone and then later drop a pass.

In other words, Ehlinger's fantasy day could've been much better (he also had at least one goal-line carry), but Indy did admittedly turn back into a run-heavy offense with the QB switch (and this with Jonathan Taylor requiring his ankle to be re-taped in the first quarter).

Ehlinger can be helpful in Superflex leagues and in DFS moving forward, but the change in offensive philosophy is bad news for Colts receivers (and possibly even Taylor, who saw just one target and still hasn't scored since Week 1) … Antonio Gibson appears to remain Washington's most valuable fantasy back, as he's seeing far more targets than Brian Robinson Jr. Neither are more than flex options … The move to Taylor Heinicke continues to pay off for Terry McLaurin, who pulled down a terrific game-winning catch Sunday.

New York Giants @ Seattle Seahawks

The Giants badly missed RT Evan Neal and could've really used Kadarius Toney during a game in which Daniel Jones had just 17 passing yards at halftime. Danny Dimes was a fantasy bust while also taking five sacks and finishing with an ugly -12.8 CPOE. Seattle won in the only matchup between two winning teams across the league this week despite New York recovering its NFL-high ninth fumble of the season … Kenneth Walker's fantasy day was saved by a late touchdown run, while Saquon Barkley was held in check despite being given 20+ touches against a Seahawks defense that entered allowing the fifth-most fantasy points to running backs.

Tyler Lockett had an eventful day while playing through both hamstring and oblique injuries, losing a fumble at Seattle's two-yard line and dropping a sure 35-yard touchdown only to later bounce back and totally redeem himself with a TD grab. Lockett then became the latest former teammate to take a shot at Russell Wilson after the game … I'm willing to admit DK Metcalf might be tougher than me.

Green Bay Packers @ Buffalo Bills

Josh Allen wasn't a top-10 QB this week for the first time all season, but Buffalo won easily anyway. Gabe Davis remains boom-or-bust and was close to a much bigger game, while Devin Singletary continues to act as the Bills clear workhorse (with James Cook overtaking Zack Moss as the team's RB2) … Sean McDermott improved to 6-0 following a bye with the win … Aaron Jones had a season-high in carries (20) and rush yards (143), getting 7.2 YPC against a Buffalo run defense that entered allowing just 3.5 YPC and an NFL-low 52.8 rush yards per game while ranked No. 1 in DVOA.

Romeo Doubs rebounded from a rough few weeks with a nice touchdown grab Sunday night. The rookie wideout led Green Bay in targets and would be a fantasy must-start in Detroit next week should Allen Lazard miss another game.