After a Week 18 finale that saw nine comeback opportunities, the 2025 regular season is in the books. I can’t recall a crazier season than this one with none of the Chiefs, Ravens, or Bills winning their division, and the first two didn’t even have a winning record.
Seven new division winners is a record, and somehow the only team that repeated (Eagles) is from the division that never repeats (first time since 2004).
We might see a Trevor Lawrence vs. Sam Darnold Super Bowl at this point. That’s why I was worried my preseason predictions would be the worst they ever were, but they weren’t. In fact, by being off by an average of 2.72 wins, I’ve had five seasons since 2013 that were less accurate.

One difference this year is I only got one team exactly right, and it was the Steelers finishing 10-7. Barely. But I only had five teams where I was off by 5+ games, so that’s not too bad.

Onto the playoffs.
This season in NFL Stat Oddity:
- Week 1
- Week 2
- Week 3
- Week 4
- Week 5
- Week 6
- Week 7
- Week 8
- Week 9
- Week 10
- Week 11
- Week 12
- Week 13
- Week 14
- Week 15
- Week 16
- Week 17
Seahawks at 49ers: The No. 1 Seed
It didn’t necessarily look like a battle for the No. 1 seed in the NFC, because the Seahawks and 49ers repeatedly made mistakes to keep the score so low in this 13-3 final. In fact, the game set history for the fewest points ever in the NFL despite both quarterbacks completing over 70% of their passes and both running games averaging over 4.0 yards per carry:
But the Seahawks prevailed because their defense was the best unit in the game. It helps when the 49ers didn’t have Trent Williams or Ricky Pearsall, but the 49ers scored their fewest points in a game under Kyle Shanahan since they managed just a field goal in his debut against Carolina way back in 2017.
Brock Purdy was held to 127 yards on 19 completions, and Christian McCaffrey had a rough night with 23 yards on 8 carries. He also tipped a pass deep in the red zone for a killer interception in the fourth quarter when the 49ers trailed 13-3.
Speaking of which, the 49ers are now 0-50 when trailing by 8+ points in the fourth quarter under Shanahan. I’ve seen the stat posted as 0-47, but I think that misses a couple playoff games, and it’s possible Stathead has a data error for a game that doesn’t belong. But I know the 0 wins is 100% accurate as Shanahan’s teams have never been able to make these comebacks, and butterfingers on a pick like that won’t help.
Sam Darnold got through a big game without any turnovers, though he did nearly lose a fumble and got lucky on a sideline throw where a defender only got one foot in bounds. But he was okay outside of taking a brutal sack on 1st-and-goal at the 1 on the opening drive before misfiring on fourth-and-goal. His running backs absolutely dominated with 230 yards from scrimmage between the duo.
The Seahawks missed field goals from 47 and 26 (WTF?), so that kept the score low too even though they dominated the game in first downs (23-9) and yards (361-173).
It means Seattle has a week off and home-field advantage throughout the playoffs, something they had in their three previous Super Bowl trips (2005, 2013-14). The 49ers will have to travel and win some road games if they want to get back to Levi’s Stadium for Super Bowl 60.
The 49ers’ stock definitely takes a hit from this game, but I’m still not sold on the Seahawks as a Super Bowl team. But we have time to get into that the next two weeks or more.
Ravens at Steelers: Game of the Weekend
I can tell my Steelers fandom isn’t what it used to be, because I should have been a basket case watching that fourth quarter, which was as dramatic as any game this season with everything on the line.
But I was almost resigned to the fact of a Baltimore win, and I had a good vision for the playoffs with a Baltimore win, including a potential AFC Championship Game between the Bills and Ravens.
But that’s all moot now after Aaron Rodgers delivered one of his most clutch comebacks in his long career given the D.K. Metcalf suspension and the way they leaned on him heavily with a season-high 294 passing yards. That good old Baltimore defense, always ripe for hitting up for big yards and a double-digit comeback. You could see things trending that way even before Kyle Hamilton was injured in the third quarter as the Steelers should have finished the last drive of the first half with 6 before a goal-line stop.
However, the Steelers had some mental lapses on defense and left receivers wide open for Lamar Jackson, who hit them either for long touchdowns or what should have been a game-winning play to Likely to set up the field goal. But you definitely don’t love taking a 2-yard knee and not giving the ball to Derrick Henry for some more yards to get closer when you had a timeout left. Always get closer in that stadium for a kick of 40+ yards.
I had picked the Ravens to win the Super Bowl this year with the idea that 2025 would finally be the year they protect the ball and not screw things up with the season on the line. But my worry this summer was the rookie kicker, Tyler Loop, screwing things up in taking over for [REDACTED] and missing a do-or-die field goal.
Remember, the Ravens were in this position because Chris Boswell, usually one of the most reliable kickers in the game, missed the extra point. He’s been terrible the last three weeks for some reason, and he almost helped end the team’s season as they hung onto a 26-24 lead instead of 27-24.
But whether it was nerves for a rookie, a cold night, or the holy water thrown on that end of the end zone before the game, but fate smiled on the Steelers and Loop’s 44-yard field goal was wide right, ending Baltimore’s season, maybe John Harbaugh’s coaching tenure, and sending the Steelers to the playoffs with their first AFC North title since 2020.
Talk about streaks colliding next week. The Steelers are on a 6-game losing streak in the playoffs, allowing at least 28 points in every game (NFL record). But they’ve won 23 straight home games on Monday night with no losses since 1991, and it’s a Monday night game with Houston, who I felt last year was the kind of team the Steelers would need to face to end the streak as they shouldn’t have the offense that can light up the Steelers.
Maybe things with Rodgers, who gets Metcalf back, will be different this time. Maybe it’ll be another 21-0 deficit before you can blink (Chargers did fall behind 14-0 to Houston in 5:00 two weeks ago).
But in this twisted AFC, I’m actually feeling a little optimistic about the Steelers again and looking forward to Monday night.
Panthers at Buccaneers: The Funniest NFC South Ending, Part 1
Objectively, this game sure felt like the officiating was in favor of Tampa Bay to make sure it came down to Sunday’s game in Atlanta. There were some atrocious calls on a fumble, a weak OPI call that wiped out a big play in the third quarter, Cade Otton getting DPI for tripping over his own feet, a missed facemask, etc.
Officiating aside, I thought the quarterbacks handled the wet and rainy conditions well outside of a bad pick thrown by each. Bryce Young didn’t take any sacks, and he still threw for 266 yards and 2 touchdowns with literally no help from the running game (12 carries for 20 yards).
In fact, the running back position killed this game for Carolina in the fourth quarter when Rico Dowdle fell to the ground and tried to pitch the ball back to Young on a flea-flicker, and the Bucs recovered that fumble in a 16-7 game. Killer stuff, and no, you should never be trying a flea-flicker at the opponent 20 as that takes away the real long deep ball you’d like to set up from that. That’s why I question if that was actually the call or if Dowdle just tried to ad-lib after falling.
That was a crushing blow even with the Bucs getting their 36-yard field goal blocked on the other end. By the time the Panthers scored their touchdown and used their timeouts to get the ball back in a 16-14 game, just 18 seconds remained at their own 3-yard line. Tough for even the Carolina Reaper to do anything in that spot.
Alas, they had a backup route to the playoffs…
Saints at Falcons: The Funniest NFC South Ending, Part 2
We got the perfect ending to the 2025 NFC South as the Falcons did in fact beat the Saints to help Carolina win the division for the first time since 2015. Everything was coming up Carolina’s way in this game, including a late interception by Tyler Shough (otherwise played well) that probably locked up OROY for Tetairoa McMillan too.
Wild that you can get this much going your way by losing your last two games like Carolina did. But even with winning enough games to get to 8-9 and force that three-way tie, the Falcons still fired coach Raheem Morris. Can’t say I disagree with that one. This team should have won the division this year and blew it.
Now, the Saints might end up being the winner next year if they can add a few pieces around Shough.
Chargers at Broncos: Trey Lance Tried (Sorta)
The Chargers started Trey Lance instead of Justin Herbert, and it went about as poorly as you expected. He threw a pick-six, but the defense kept the Chargers hanging around all day before the Broncos pulled away late to win the No. 1 seed.
I get the idea of Sean Payton “saving things” for the playoffs on offense since he could see this team again in two weeks if the Chargers upset the No. 2 Patriots on the road. But it was still not an encouraging game on offense from Bo Nix and company.
Dolphins at Patriots: No Repeat of 2019
I guess you need a Ryan Fitzpatrick at quarterback to go into Foxboro for a finale upset if you’re Miami. That’s a callback to 2019 when the Patriots blew a first-round bye. You don’t get a bye for the No. 2 seed anymore, but the Patriots wrapped it up by making short order of the Dolphins. The running back duo scored five touchdowns in a variety of ways.
I haven’t seen any news on Mike McDaniel getting fired, so maybe he ends up coming back without Tua Tagovailoa in 2026.
Jets at Bills: Mitch Trubisky Caps Off Historic Season for QBs Facing Jets
You see why the schedule matters? The Jets played such a pathetic month of football that they gave up 6 touchdowns to Trevor Lawrence, 5 touchdowns to Drake Maye, and Mitch Trubisky hit them with 4 to end their season allowing 36 touchdown passes with 0 interceptions, new NFL records for futility. Only the Jets.
James Cook is lucky Derrick Henry slowed down in the second half or he would have lost that rushing title to him. But the Bills got to pad some defensive stats in the win and now have to face the Jaguars on the road in maybe the most interesting game of wild card weekend.
Colts at Texans: Maybe Riley Leonard Should Have Started?
I’m not saying the Colts make the playoffs if they start Riley Leonard instead of bringing Philip Rivers out of retirement. But maybe they should trust their coach and start Leonard when he was healthy? I was shocked at how he was taking it to Houston on the road in his first NFL start, and they were playing starters on defense when he did his most damage in the first half.
Unfortunately, even with the Texans calling off some dogs in the second half, Davis Mills led a game-winning drive and the Texans still won 32-30 to get to 12-5. But Steichen can coach offense, and it’s just unfortunate what happened to the Colts this year and how poorly the Sauce Gardner trade will age, especially if they try to get the draft resources together to steal Arch Manning in 2027.
Titans at Jaguars: Short Work
Watching Trevor Lawrence scramble in the third quarter with a 31-7 lead had me holding my breath. Get him on the sideline; this one was over. But great winning streak by the Jaguars to end the season, and Lawrence is playing the best ball of his career. Cam Ward unfortunately got injured on a touchdown scramble run, the first time he missed snaps this year. Get him a coach and he could be much better in 2026.
Chiefs at Raiders: Damn, Can Spags Hold Any Lead?
The Chiefs finish 2025 with 0 saves on defense (upheld a one-score lead in the fourth quarter/overtime) and 4 blown leads. They even gave up two more game-winning drives in the games Mahomes didn’t start. Spags really can’t stop anyone in crunch time, including Aidan O’Connell in the final minute.
The 2025 Chiefs without Mahomes are the first offense since the 2009 Raiders (JaMarcus Russell) to go three straight games without 170 yards of offense. If that was Travis Kelce’s final game, yikes. The Raiders got the win and still got the No. 1 pick on top of it.
But that’s also probably the last game in the coaching career of Pete Carroll. He was fired on Monday after one terrible season.
Browns at Bengals: Garrett Gets the Record in Stunning Fashion
It didn’t look like Myles Garrett was going to set the sack record after all. But with just over 5:00 left, he timed the snap perfectly and buried Joe Burrow for No. 23. I thought it was a little odd the way the game just stopped for it, but the Bengals should have used the time to come up with a better play.
While Joe Burrow did lead a rare go-ahead drive in the final minutes, he botched the critical 2-point conversion. That’s so costly in a 18-17 game where you open yourself up to losing by a field goal, which is more likely than ever now with the new kickoff rule and kicker’s range. Sure enough, Shedeur Sanders led his first game-winning drive with the Browns getting the walk-off field goal to make Garrett’s happy day even happier.
That makes up for Week 1 when the Browns choked on a go-ahead field goal late in the game against the Bengals. But what a sign of the times. The Browns win this game and fire Kevin Stefanski after six years. The Bengals lose again and are keeping Zac Taylor for 2026, reportedly.
Never change, Bungles.
Cardinals at Rams: Stafford Should Wrap Up MVP
The Rams played starters to go for the No. 5 seed, and it was one of those weeks where the Cardinals made it a close game, trailing only 23-20 to start the fourth quarter. But Stafford threw two more touchdowns to push his season total to 46, and the Rams finished 12-5, making the 2025 NFC West the first division ever with three 12-win teams.
I already wrote that I’m voting Stafford for MVP this year. Oddly enough, I think the Seattle loss cemented his case for me, doing what he did that night on the road without Adams in what should have been a win that led to the No. 1 seed. Then you watch what Bryce Young and Brock Purdy, two quarterbacks going to the playoffs, did against that Seattle defense in the next two games. Like two different sports.
The Rams should be disappointed with a 12-5 record though. They were in every game late and just didn’t close enough of them, and quarterback play is far down the list of reasons for that.
But maybe they’ll get a revenge tour in the playoffs, starting with the Carolina Panthers on Saturday.
Lions at Bears: Not Loving the Vibes, Ben
Can’t say I liked the way the Bears were down 16-0 at home when they had a chance to lock up the No. 2 seed with a win and drop Detroit under .500 in the process. They did eventually tie the game, but they didn’t close this time, and the Lions got a walk-off field goal to finish 9-8.
The No. 2 seed still worked out for them, but I wasn’t a big fan of the way Johnson handled this finale. Now it’s a rematch with Green Bay.
Commanders at Eagles: Backup Bowl
It’s not like the Eagles knew the Bears would lose to Detroit, but I’m still a bit down on Nick Sirianni for not trying to win this one with starters and get the No. 2 seed. I think I’d much rather play the Packers (injured team) first than the 49ers, and I’d much rather have home-field than go to Chicago should that 3-2 matchup come to fruition in the divisional round.
But the Eagles blew a 17-10 lead in the fourth quarter to Josh Johnson, and that’s why they’re going to play the 49ers now. A matchup we should have seen in the playoffs by now to get a rematch for the 2022 NFC-CG spoiled by Brock Purdy’s elbow injury on the 49ers’ first drive.
Cowboys at Giants: Why’d They Do Dak Like That?
Dak Prescott had won 12 games in a row against the Giants, had a chance to lead the NFL in passing yards, had a chance to finish .500 (8-8-1), and the Cowboys just ran it and benched him at halftime with 70 yards while the Giants rolled to a 34-17 win. I don’t get that at all, except maybe they wanted the Giants to get a weaker draft pick.
Packers at Vikings: [REDACTED]
If Matt LaFleur and the Packers didn’t care about losing their fourth in a row going into the playoffs, why should I care about their 16-3 loss? Ugly game. Had to call timeout and kick a field goal to avoid a shutout. I’ll just say “Nine” doesn’t seem capable of staying healthy, so that’s a problem for Minnesota going forward.
Next week: Playoffs? You kidding me? I’m somehow going to do the final QB rankings of 2025 for Monday, get Fraud Alert Rating for the season by Tuesday, full wild card previews for Wednesday/Thursday, and betting picks by Friday.




