Want the latest Bay Area sports news delivered to your inbox? Sign up here to receive regular email newsletters, including “The Dime.”
SEATTLE — Every bad and bedeviling thing that happened to the 49ers last year happened at all the worst times again in their 2025 opener here Sunday.
Except for one big thing: The 49ers wiped away the blood, shrugged at the wayward kicks and turnovers, kept plugging away through more injuries ... and actually won the dang game.
ADVERTISEMENT
Or maybe more accurately, they failed to lose; they didn't succumb to their own errors and the Seattle Seahawks; they just didn't screw this up when screwing up might as well have been the motto of the 2024 season.
Hey, it's the 2025 49ers. Maybe they're not cursed anymore and sort of proved it to themselves by surviving Sunday.
"We have a really new team," Christian McCaffrey said after the steely-eyed 17-13 victory at Lumen Field. "I think there's so much talk about our past teams. But we try to wipe all the past noise away and focus on this team.
"To have a bunch of new guys come out for the first time together and to play with each and get a gritty win against a good team in a tough environment, that's a big deal. There's so much we can build from that we're excited about."
That was easier said, of course, minutes after Jake Tonges of all people came down with a jump-ball touchdown in the final minutes and Nick Bosa's trifecta sack-force fumble-fumble recovery sealed it only as a superstar can.
It was, as several 49ers said in the aftermath, far from a perfect game. And the 49ers may or may not ever address Jake Moody's perpetual unreliability (a bad miss from 27 yards and a blocked field-goal try that probably wasn't his fault) and still have to deal with the injuries that sidelined George Kittle and Jauan Jennings on Sunday.
But those aren't quite existential issues when you're 1-0 with a road win against a divisional rival instead of losing every single one of these tight games the way you did last season.
In fact, the 49ers' locker room was so jovial afterwards that I got back-slapped several times by jubilant coaches and executives who were clearly busting at the seams with happiness, relief, and everything else you can imagine.
They got through this one when there were a lot of reasons for them not to. And now, for the first time since at least early last season and possibly longer, the 49ers can rumble into the next week feeling like they're gearing up for full engine power.
"I'm just so happy with our team," Kyle Shanahan said. "There was a lot of adversity in that game that we had to overcome. Offense, defense, special teams, a number of injuries, those two turnovers, being able to get two to even it out, and still find a way to win. ...
"That was our first game together. Didn't like everything, but I liked how our guys played. I liked the attitude, that they never wavered. I expect us to get better as we go."
Shanahan's main theme from the end of last season's blight was getting back to the standard that got the team to the Super Bowl two seasons ago — but with a younger twist. They changed much of the roster. They added a fleet of rookies, who are inexperienced and certainly made some mistakes on Sunday, but also who carry no baggage from 2024.
But the 49ers kept their biggest stars, and on Sunday, the stars led the way — which is exactly how this is supposed to work.
Among other star moments, Christian McCaffrey was as essential as ever on his way to 162 total yards on 31 touches. Brock Purdy threw two interceptions, but kept firing, kept moving the team, and threw some incredible balls on the last drive, including the lob to Tonges. (Oh, by the way, Purdy is now a career 4-0 in Seattle, which is just amazing, even if you hate QB Wins as a stat.) Fred Warner took a big shot to the stomach and a bloody nose and only missed a couple of snaps and never missed a beat.
And, of course, there was the Bosa capper, when the Seahawks' late drive was silenced after Bosa pushed tackle Abraham Lucas back so far that he bumped into Sam Darnold and jarred the football loose, teed up for Bosa to recover.
"Now you know my pain," Trent Williams said with a laugh, referring to the time he spends matched up against Bosa in practice.
That was a familiar way to finish off a 49ers victory, but it did feel different from the most recent vintages. And Bosa, in his own way, seemed to differentiate what happened on Sunday from what happened for most of last season.
Maybe this really is just a tougher, more focused team now.
"It was a rollercoaster, and in the NFL, you have to stay even-keeled, no matter what happens," Bosa said. "Because if I'm not locked in on that last play, maybe we lose."
Bosa also made sure to praise Robert Saleh, back for his second stint as defensive coordinator after the 49ers saw serious slippage there the past two seasons.
The numbers were clear on Sunday: The 49ers held Seattle to just 230 total yards and 4.6 yards per play and forced the two turnovers to balance out the two Purdy interceptions.
"Saleh's the man," Bosa said. "He called it great."
If there's a ridiculous overreaction about this game that might not actually be an overreaction, it's that Saleh really could be putting together something real on defense. He had rookies Mykel Williams, Upton Stout, and Marques Sigle in major roles, and other young players scattered throughout the play-count.
And while the 49ers didn't totally shut down the Seahawks offense, Darnold looked uncertain most of the time and Seattle scored just three points in the second half.
There's some momentum — if the 49ers can keep this up in New Orleans next weekend and on through the schedule.
Also: If Moody doesn't mess up a game, like he almost messed up this one. I asked Shanahan directly if there's any question that Moody will be the 49ers' kicker on Sunday. His answer was not a surprise (to me at least): "No, no, no question."
Shanahan seemed to be trying to stay away from Moody late by going for it on a few fourth downs, but he also sent Moody out there for the wobbly make from 32 yards to tie the game 10-10 in the third quarter. And like always with Moody, Shanahan wasn't lingering on the negatives. He's sticking with him. At least for now.
So the 49ers, in this one regard, are still lingering in the 2024 Doom Loop. At some point, I believe even Shanahan and John Lynch will lose faith in this kicker. It's taking time. Probably too much time.
But they won on Sunday and they're allowed to give some leeway to their guy. And to frame their 1-0 start in any way they want to.
"We're trying not to have this year be tied to any other year from the past," Shanahan said.
Especially the last one. The cursed one. What happened on Sunday felt tied to the bad things, but also better and stronger than that. And now the 49ers have to keep telling this new story, week by week.