The Primer: Week 12 Edition (2025 Fantasy Football)

For Week 12 in the NFL, I wanted to open the Primer differently. Usually, I wax poetic about injuries, make jokes, or pick some other humorous topic to ramble about. With the holidays upcoming, I wanted to change the flavor of this week’s intro Kool-Aid.
Why do we all love fantasy football so much? There are a lot of reasons I can mention here and many roads I could meander down, but I think at the core of it… it’s community. A common ground that can tie us all together. Something we can all love, at times hate, tilt over, rant about, cry about, stress about, and talk smack about. That community aspect is important. It’s essential.
In the year 2025, it can be so easy to lose touch with your community. To get busy with work, family, life, goals, etc. We all see how each other’s lives are unfolding daily on social media in pictures, reels, and posts. Something that can give us the facade of real connection, but that’s just it. It’s not real connection. It’s not the same thing as picking up the phone and talking to your best friend from college and seeing how they are doing before smack-talking about their defeat last week in your home league.
I bring this up because the holidays are coming up, and for some, that is the best time of the year. You get to see family and friends and enjoy each other’s company. That’s not the experience that everyone has around the holidays, though. Some feel disconnected. Stressed. Depressed. You never know what your family member or friend is going through unless you take the time to reconnect.
Fantasy Football can be part of that glue that keeps those connections strong year-round and into the holiday season. Text, call, or message a leaguemate before kickoff this week. If only to talk smack.
I love you all. Welcome to the Week 12 Primer. Enjoy.
BUF vs. HOU | NYJ vs. BAL | NYG vs. DET | PIT vs. CHI | NE vs. CIN | MIN vs. GB | IND vs. KC | SEA vs. TEN | JAC vs. ARI | CLE vs. LV | PHI vs. DAL | ATL vs. NO | TB vs. LAR | CAR vs. SF
Want to read about only your players? Sync your team (free) to get My Primer
Fantasy Football Primer
Buffalo Bills vs. Houston Texans
Bills Players & Weekly Rankings
Texans Players & Weekly Rankings
Must-Start
These are no-brainer MUST starts.
Strong Starts
Here are players that should be in starting consideration for most fantasy teams.
Woody Marks (RB)
Woody Marks has fully taken over the Houston backfield. Across the last two games, he has had all seven of the team’s red zone rushing attempts while playing 72.3 % of the snaps with a 37.5% route share (4.7% target share), 17.5 touches per game, and 66 total yards per game. Marks has been a top-20 back in weekly scoring in three of his last five games (RB16, RB15, RB11). He hasn’t been impressive on a per-touch basis, ranking 24th in explosive run rate and 33rd in yards after contact per attempt (among 54 qualifying backs). He should have a strong showing this week against the Bills’ Swiss cheese run defense. Since Week 7, they have allowed the fifth-most rushing yards per game, the highest missed tackle rate, and the second-highest yards after contact per attempt.
Fantasy Football Flex & Deep Plays to Consider
Let’s fill out those flex spots.
Khalil Shakir (WR)
Last week, Khalil Shakir had the highest route share out of any of the Bills’ wide receivers with only a 62.5% clip. No other Bills wide receiver eclipsed a 47% route share. He’s the only Bills’ receiving option worth considering for fantasy this week. Overall, Shakir is the WR37 in fantasy points per game, leading the team with a 19.7% target share while posting 45.4 receiving yards per game, 1.81 yards per route run, and a 23.1% first-read share. Shakir leads the team with eight red zone targets and ranks second on the team with only five deep targets. Shakir is a solid flex again this week. Since Week 7, Houston has ranked 15th in PPR points per target allowed to slot receivers while giving up the 13th-most PPR points per target to the position.
Jayden Higgins (WR)
Across his last three games, Jayden Higgins‘ route share has climbed from 40.8% to 53.2%. Since Week 10, he has had a 16.3% target share (29% target per route run rate), 48.5 receiving yards per game, 1.98 yards per route run, and an 18.5% first-read share (third on the team). In those two games, Higgins has had two red zone targets and three deep targets. Buffalo has the seventh-highest two-high rate in the NFL (54.7%). Since Week 10, against two high, Higgins has led the team with a 33% target per route run rate against two high while also posting 1.93 yards per route run. He’s a viable flex this week, but the matchup isn’t great. Since Week 7, Buffalo has allowed the 13th-fewest PPR points per target and the fifth-fewest receiving yards per game to perimeter wide receivers.
Concerning Starts & Players to Fade
Players in consideration for lineups, but temper your expectations this week.
Davis Mills (QB)
Over the last two weeks, Davis Mills has played well as the QB1 and QB10 in weekly fantasy scoring. Among 34 qualifying quarterbacks in that span, Mills ranks fifth in passing yards per game, 15th in highly accurate throw rate, 12th in hero throw rate, and 14th in fantasy points per dropback. Mills should be considered a middling QB2 this week with a horrible matchup. Since Week 7, Buffalo has allowed the eighth-lowest success rate per dropback, the seventh-fewest passing yards per game, and the fourth-lowest passer rating and CPOE.
Dalton Schultz (TE)
Since Week 3, Dalton Schultz has been the TE12 in fantasy points per game, garnering a 19% target share with 54 receiving yards per game, 1.71 yards per route run, and a 20.7% first-read share. In those eight games, he has five red zone targets and four deep targets. He’s a volume play only this week. Schultz draws arguably the worst matchup for tight ends in the NFL. Buffalo has allowed the fewest receiving yards per game and the second-fewest fantasy points per game to tight ends.
**Last week, the Bills utilized a true wide receiver committee behind Khalil Shakir and Dawson Knox, with no receiver logging more than a 46.9% route share. I expect this rotation to continue in Week 12 even if Keon Coleman is back in the lineup. None of those receiving options can be trusted in fantasy this week. The Texans have a similar goofy plan of attack weekly. Jayden Higgins‘ playing time is trending up, which is why he makes the Primer this week, but Christian Kirk, Xavier Hutchinson, and Jaylin Noel all lived in the 29.8-55.3% route share bucket last week. I can’t trust any of those players for fantasy right now.**
BUF vs. HOU | NYJ vs. BAL | NYG vs. DET | PIT vs. CHI | NE vs. CIN | MIN vs. GB | IND vs. KC | SEA vs. TEN | JAC vs. ARI | CLE vs. LV | PHI vs. DAL | ATL vs. NO | TB vs. LAR | CAR vs. SF
New York Jets vs. Baltimore Ravens
Jets Players & Weekly Rankings
Ravens Players & Weekly Rankings
Must-Start
These are no-brainer MUST starts.
Strong Starts
Here are players that should be in starting consideration for most fantasy teams.
Breece Hall (RB)
Breece Hall is the RB17 in fantasy points per game, averaging 18.5 touches and 94.8 total yards. Among backs, he ranks 16th in snap share, 11th in opportunity share, and 34th in red zone touches. Among 65 qualifying backs, Hall ranks second in explosive run rate and 20th in missed tackle rate. He faces a Baltimore run defense that, since Week 7, has allowed the third-highest explosive run rate, tenth-highest missed tackle rate, and has ranked 15th in yards after contact per attempt. This is a great matchup for the Jets to feed Hall.
Zay Flowers (WR)
Zay Flowers is the WR21 in fantasy points per game, commanding a 26.7% target share with 70.3 receiving yards per game, 2.48 yards per route run, and a 32.5% first-read share. Flowers leads the team with nine deep targets and ranks second with only five red zone targets. This week, he faces a Jets’ secondary that, since Week 8, has utilized two high at the third-highest rate (61.2%). Against two high, Flowers leads the team with a 21% target per route run rate and 1.82 yards per route run. He should be heavily involved this week. Since Week 7, the Jets have ranked 15th in fantasy points per game allowed to perimeter wide receivers. This isn’t a secondary to fear.
Fantasy Football Flex & Deep Plays to Consider
Let’s fill out those flex spots.
Mark Andrews (TE)
Mark Andrews has been boom or bust this season, but he’s currently riding a hot streak with three consecutive TE1 weekly finishes (TE5, TE9, TE5). Across his last three games, he has four touchdowns, which have helped immensely as he hasn’t had more than 32 receiving yards in any of these games. Andrews leads the team with nine red zone targets. He has a 16.4% target share with 27.6 receiving yards per game, 1.43 yards per route run, and a 21.7% first-read share. Andrews will need a touchdown to pay off again this week, but he might get it. The Jets have allowed the tenth-fewest receiving yards per game and the eighth-lowest yards per reception to tight ends, but they have also surrendered the third-most receiving touchdowns per game.
Concerning Starts & Players to Fade
Players in consideration for lineups, but temper your expectations this week.
Tyrod Taylor (QB)
In his only full start this season, Tyrod Taylor was the QB9 in weekly scoring while logging 48 rushing yards. Among 43 qualifying passers, he has been impressive in a number of metrics. While ranking 41st in yards per attempt isn’t great, he is also first in highly accurate throw rate, third in catchable target rate, and first in CPOE. Taylor will have his hands full this week with what could be an improving Baltimore pass defense. Yes, I have some skepticism surrounding their stats since Week 7. In Weeks 7-11, they faced Caleb Williams, J.J. McCarthy, Tua Tagovailoa, and a combination of Dillon Gabriel and Shadeur Sanders. Their pass defense could be for real, but they likely won’t be heavily tested this week, considering the state of the Jets’ passing attack. Since Week 7, Baltimore has allowed the third-lowest success rate per dropback, the sixth-fewest yards per attempt, and the second-lowest CPOE. Taylor will have to generate some fantasy points with his legs to put up solid QB2 numbers this week.
Adonai Mitchell (WR)
Last week, Adonai Mitchell had a 60.6% route share with a 22.2% target share (six targets), a 53.3% air-yard share (17.2 aDOT), only one reception, ten receiving yards, and a 40% first-read share. Mitchell dropped three of his six targets. You don’t have to be a math whizz to know that isn’t great. I have zero interest in flexing him this week against a secondary that, since Week 7, has allowed the seventh-fewest PPR points per target to perimeter wide receivers.
Mason Taylor (TE)
Since Week 4, Taylor has been the TE24 in fantasy points per game with a 74.3% route share, a 19.5% target share, 33.3 receiving yards per game, 1.26 yards per route run, and a 20.5% first-read share. In those seven games, he has had seven red zone targets and one touchdown. Taylor is best left on the bench this week. Baltimore ranks 16th in receiving yards per game allowed to tight ends while also giving up the tenth-fewest schedule-adjusted fantasy points per game.
BUF vs. HOU | NYJ vs. BAL | NYG vs. DET | PIT vs. CHI | NE vs. CIN | MIN vs. GB | IND vs. KC | SEA vs. TEN | JAC vs. ARI | CLE vs. LV | PHI vs. DAL | ATL vs. NO | TB vs. LAR | CAR vs. SF
New York Giants vs. Detroit Lions
Giants Players & Weekly Rankings
Lions Players & Weekly Rankings
Must-Start
These are no-brainer MUST starts.
Strong Starts
Here are players that should be in starting consideration for most fantasy teams.
Jared Goff (QB)
Philly’s pass rush destroyed Jared Goff last week as he was under duress on 38.5% of his dropbacks. If the Lions can keep Goff in clean pockets this week, he should have a monstrous bounce-back game. Since Week 7, the Giants are 13th in pressure rate, so there is some risk here. Goff is the QB15 in fantasy points per game with two QB1 outings this season. Among 43 qualifying quarterbacks, Goff ranks sixth in yards per attempt, ninth in passing yards per game, second in passing touchdowns (tied), and 16th in highly accurate throw rate. Since Week 7, the Giants have allowed the 12th-highest success rate per dropback, the second-most passing touchdowns, the sixth-highest passer rating, and the 12th-highest CPOE.
David Montgomery (RB)
David Montgomery is the RB25 in fantasy points per game, averaging 12.5 touches and 60.9 total yards. Montgomery is an RB2/3 that is highly touchdown dependent. He’s run dry with touchdowns, with only one in his last five games. Montgomery ranks 19th in red zone touches among backs. Among 54 qualifying backs, Montgomery ranks 32nd in explosive run rate and 18th in yards after contact per attempt. Montgomery is a good spot for his early down role this week. Since Week 7, the Giants have continued to field one of the worst run defenses in the NFL, allowing the second-most rushing yards per game, the highest explosive run rate, the third-highest missed tackle rate, and the fourth-most yards after contact per attempt.
Jameson Williams (WR)
Jameson Williams has been a top 20 fantasy receiver in four of his last five games (WR12, WR19, WR2, WR8). Since Week 9, he has had a 17.4% target share, a 30.9% air-yard share (11.0 aDOT), 91 receiving yards per game, 2.73 yards per route run, and an 18.2% first-read share. In those three games, he has had three red zone targets and two deep targets as the team has been utilizing him as more than just a field stretcher. Williams is in a good spot to continue the second-half scorching production this week. Since Week 7, New York has allowed the ninth-most PPR points per target and the 11th-most receiving yards per game to perimeter wide receivers.
Fantasy Football Flex & Deep Plays to Consider
Let’s fill out those flex spots.
Wan’Dale Robinson (WR)
Wan’Dale Robinson is the WR34 in fantasy points per game with a 24.1% target share, 58 receiving yards per game, 1.73 yards per route run, and a 28.9% first-read share. He has been the Giants’ high-volume slot option all season. He has seven red zone targets and a surprising 13 deep targets. Robinson is a PPR volume-driven flex. Since Week 7, Detroit has allowed the eighth-fewest PPR points per target and the 11th-fewest receiving yards per game to slot receivers.
Concerning Starts & Players to Fade
Players in consideration for lineups, but temper your expectations this week.
Jaxson Dart (QB)
I’ll update Dart’s outlook on Friday when we have a better estimate of his ability to clear the concussion protocol this week.
Tyrone Tracy Jr. (RB)
Tyrone Tracy Jr. has been handling the heavy lifting for the Giants’ run game over the last two games, but he has almost zero touchdown equity. Across the last two games, he has averaged a 59.3% snap rate, 19 touches, and 105 total yards, but he has only two red zone rushing attempts, as Devin Singletary has handled 12. Tracy will likely rack up volume again this week, but he won’t sniff a score unless he manages a long run. Among 54 qualifying backs, he ranks 33rd in explosive run rate and 30th in yards after contact per attempt. Tracy is a volume-driven middling flex play this week. Since Week 7, Detroit has allowed the ninth-lowest explosive run rate, the 13th-fewest rushing yards per game, and the lowest yards after contact per attempt.
Devin Singletary (RB)
Over the last two games, Singletary has averaged 41% of the snaps with 14 touches and 60 total yards as the RB28 and RB14 in weekly scoring. He has been the Giants’ primary goal-line back with 12 red zone rushing attempts in those two games (Tyrone Tracy Jr., two). He had two scores last week. Singletary doesn’t have an explosive run this season while managing a 10% missed tackle rate and 2.02 yards after contact per attempt. He’s a touchdown-dependent flex play with a bad matchup. Since Week 7, Detroit has allowed the ninth-lowest explosive run rate, the 13th-fewest rushing yards per game, and the lowest yards after contact per attempt.
Darius Slayton (WR)
Darius Slayon opened this week with a DNP (hamstring). I lean that he’ll be out again this week, but I’ll update his outlook on Friday.
Theo Johnson (TE)
Since Week 4, Theo Johnson has been the TE13 in fantasy points per game with an 18.6% target share, 37.6 receiving yards per game, 1.36 yards per route run, and a 22.2% first-read share. In those eight games, he has seven red zone targets, two deep targets, and five touchdowns. Johnson has four TE1 weekly finishes this season. Johnson is a middling streaming option at tight end this season. If he scores a touchdown, he likely flirts with low-end TE1 production, but if he doesn’t, he’ll be a locked-in TE2. Detroit has allowed the 13th-fewest receiving yards per game and the 15th-fewest schedule-adjusted fantasy points per game to tight ends.
BUF vs. HOU | NYJ vs. BAL | NYG vs. DET | PIT vs. CHI | NE vs. CIN | MIN vs. GB | IND vs. KC | SEA vs. TEN | JAC vs. ARI | CLE vs. LV | PHI vs. DAL | ATL vs. NO | TB vs. LAR | CAR vs. SF
Pittsburgh Steelers vs. Chicago Bears
Steelers Players & Weekly Rankings
Bears Players & Weekly Rankings
Must-Start
These are no-brainer MUST starts.
N/A
Strong Starts
Here are players that should be in starting consideration for most fantasy teams.
D’Andre Swift (RB)
D’Andre Swift has had a resurgent season as the RB13 in fantasy points per game. Since Week 10, he has averaged 19.5 touches and 94 total yards with a 59.1% snap rate, a 40.3% route share, and a 13.2% target share. He has held the lead job for the backfield with five red zone rushing attempts. Among 54 qualifying backs, he ranks 13th in explosive run rate and 17th in missed tackle rate. This week, he faces an average Steelers’ run defense that, since Week 7, has ranked 16th in explosive run rate, 17th in yards before contact per attempt, and 16th in rushing success rate.
Rome Odunze (WR)
Rome Odunze is the WR18 in fantasy points per game with a 22.1% target share, a 40.1% air-yard share, 60 receiving yards per game, 1.94 yards per route run, and a 26.8% first-read share. His play has ebbed and flowed this season because of his quarterback. I expect it to be like this for the rest of the season. This week, he faces a Steelers’ secondary that has the fourth-highest single high rate in the NFL (59.3%). Against single high, Odunze is tied for the team lead with a 25% target per route run rate with 1.94 yards per route run. He should have a bounce-back game this week if Caleb Williams can get him catchable targets. Since Week 7, the Steelers have allowed the most receiving yards per game and the 12th-most PPR points per target to perimeter wide receivers.
D.K. Metcalf (WR)
D.K. Metcalf is the WR28 in fantasy points per game, ranking 19th in deep targets and 23rd in red zone targets among wide receivers. He has a 20.5% target share with 55.1 receiving yards per game, 1.91 yards per route run, and a 26.3% first-read share. This week, he faces a Bears’ secondary that, since Week 6, has had the ninth-highest single high rate in the NFL (55%). Against single high, his target share has jumped to 27.1% with 2.00 yards per route run and a 32.7% first-read share. Metcalf is set up for a strong week. Since Week 7, Chicago has ranked 15th in receiving yards per game and 16th in PPR points per target allowed to perimeter wide receivers.
Fantasy Football Flex & Deep Plays to Consider
Let’s fill out those flex spots.
Caleb Williams (QB)
Caleb Williams continues his best 2024 Kyler Murray approach this season with five games inside the top ten fantasy quarterbacks in weekly scoring and five games as the QB20 or lower. Last week, he was the QB22 in fantasy with only 10.3 fantasy points against the Vikings. The Steelers offer a decent matchup for Williams to rebound this week. Since Week 7, they have allowed the second-most passing yards per game, the eighth-most passing touchdowns (tied), and ranked 18th in success rate per dropback. Also, during this stretch, they have had the fourth-lowest pressure rate and only logged two sacks.
Kyle Monangai (RB)
Kyle Monangai has returned to touchdown-dependent flex territory. Since Week 10, he has averaged only ten touches and 32.5 total yards while seeing three red zone rushing attempts (Swift, five) and a 38% snap rate. Among 54 qualifying backs, Monangai ranks 21st in explosive run rate and 16th in yards after contact per attempt. If he doesn’t score this week, you’ll likely be sad that you played him. This week, he faces an average Steelers’ run defense that, since Week 7, has ranked 16th in explosive run rate, 17th in yards before contact per attempt, and 16th in rushing success rate.
Luther Burden (WR)
Last week, Luther Burden finally overtook Olamide Zaccheaus to become a starter in the Bears’ offense. In Week 11, he had a 61.1% route share with a 15.6% target share, 27 receiving yards, and a 23.8% first-read share (second on the team). Burden ran 54.5% of his routes from the slot. This week, he faces a Steelers’ secondary that has the fourth-highest single high rate in the NFL (59.3%). Against single high, Burden ranks third in target per route run rate (21%) while leading the team with 3.30 yards per route run. Burden is a viable flex play this week. Since Week 7, Pittsburgh has allowed the seventh-most PPR points per target and the eighth-most receiving yards per game to slot receivers.
Colston Loveland (TE)
Since Week 10, with Cole Kmet back in the lineup, Colston Loveland has had a 51.9% route share with an 11.8% target share, 47.5 receiving yards per game, 2.38 yards per route run, and a 9.1% first-read share. In those two games, he has had one red zone target. Loveland is a viable streaming option this week. Pittsburgh has allowed the sixth-most receiving yards per game, the 11th-highest yards per reception, and the third-most schedule-adjusted fantasy points per game to tight ends.
Concerning Starts & Players to Fade
Players in consideration for lineups, but temper your expectations this week.
Aaron Rodgers (QB)
Aaron Rodgers is dealing with a fractured left wrist and his status for Week 12 is up in the air. I’ll update his status on Friday.
Jaylen Warren (RB)
Jaylen Warren opened this week with a DNP after sustaining an ankle injury last week. I’ll update his status on Friday.
Kenneth Gainwell (RB)
Kenneth Gainwell could lead the Steelers ground game this week with Jaylen Warren dealing with an ankle issue. Warren opened the week with a DNP. I’ll update Gainwell’s status on Friday once we know more about Warren.
DJ Moore (WR)
The Steelers have been giving to perimeter wide receivers since Week 7, allowing the most receiving yards per game and the 12th-most PPR points per target to the position. I would love to tell you that it’s a great week to flex DJ Moore, but it isn’t. The coverage matchup isn’t in his favor. This week, he faces a Steelers’ secondary that has the fourth-highest single high rate in the NFL (59.3%). Against single high, Moore has disappeared with a 14% target per route run rate and only 1.12 yards per route run. He ranks fifth and sixth in those statistical categories among the Bears’ receiving options against single high. Sit Moore this week.
**The Steelers’ tight end room remains a wasteland for fantasy production. None of them surpassed a 55% route share last week. This is a fluid situation, and I won’t be surprised if any of them step up in any week.**
BUF vs. HOU | NYJ vs. BAL | NYG vs. DET | PIT vs. CHI | NE vs. CIN | MIN vs. GB | IND vs. KC | SEA vs. TEN | JAC vs. ARI | CLE vs. LV | PHI vs. DAL | ATL vs. NO | TB vs. LAR | CAR vs. SF




