SAN FRANCISCO — Any road win in the NFL is a good win, especially when it comes 3,000 miles from home. So the Patriots should be happy with their 30-17 win over the 49ers.
But in rewatching the game Monday, it struck me how difficult it was to evaluate the Patriots and where they stand with six games to go in the regular season. Sunday’s game was an anomaly that likely won’t translate moving forward, for several reasons:
■ The weather was atrocious. The Patriots probably won’t play many more games in monsoon-like conditions. The rain made passing difficult for both teams, making the ball heavier and more slippery, and the footing slicker. And it makes it tough to make definitive statements about the state of the Patriots’ passing game or their pass defense.
Advertisement
■ They missed Rob Gronkowski. It’s remarkable how much less dynamic the offense becomes when Gronk is not in the game. The 49ers double-covered Martellus Bennett for much of the day, holding him to one catch on two targets for 14 yards. Tom Brady locked in on Julian Edelman, targeting him a whopping 17 times (James White was next with six), and connecting only eight times for 77 yards.
Removing Gronk from the offense, of course, takes away the best red zone target in the game. It also reduces the effectiveness of the play-action passing game.
RELATED: Key plays from the Patriots’ win over the 49ers
■ The 49ers are terrible. This has to be one of the three worst rosters in the league, particularly with receiver Torrey Smith (shoulder) not playing. Colin Kaepernick badly missed on several throws in the second half, sailing them well beyond his receivers or skipping them at their feet. None of their offensive skill players requires extra attention or double teams. Same with their defense, which is filled with no-names and doesn’t have a player with more than 3½ sacks this season.
Advertisement
The 49ers couldn’t stop tripping over themselves, literally lining up offsides on four occasions and rolling two snaps on the ground due to the rain. Chip Kelly flat-out admitted that his team didn’t have the firepower to keep pace with the Patriots.
“We’re not good enough to throw it every down,” he said. “We don’t have a go-to wide receiver that’s going to elicit double coverage.”
So enjoy the win, Patriots fans. But don’t assume that Sunday’s game is a sign that the defense is fixed and all is well as they enter the stretch run.
Other observations after rewatching the game:
When the Patriots had the ball
■ Interesting day for the run game. The final stats look fantastic — the team rushed for 171 yards on 5.7 yards per carry, while LeGarrette Blount had 19 rushes for 124 yards, a 6.5-yard average. But in watching the game, it felt like the run game struggled for much of the day, and a closer examination of Blount’s numbers bear that out.
Blount rushed for 44 yards one play in the first quarter, a run that was created by terrific blocks from Shaq Mason, David Andrews, Joe Thuney, and James Develin, plus a great downfield blocking effort by Malcolm Mitchell.

And Blount rushed seven times for 57 yards after the Patriots had taken a 27-10 lead in the fourth quarter and the 49ers looked like they had given up. Otherwise, Blount rushed 11 times for 23 yards, getting stuffed at the line of scrimmage by eight- and nine-man fronts. With the rainy conditions and Gronkowski out of the lineup, the 49ers sold out to stop the run and basically dared Brady to pass.
Advertisement
■ But the 49ers didn’t attack Brady. Instead they did what the Seahawks and most teams have done to Brady this year — rush only three or four, and flood the passing lanes with seven or eight defenders. The 49ers’ first true blitz came on the final play of the first half — the long catch-and-run by White — and we counted only four blitzes all day. Brady went 1 for 4 on those plays, with a 14-yard completion to Bennett.
■ The 49ers played zone defense most of the day, and didn’t allow the Patriots’ receivers to get much separation. Only once Brady started scrambling and improvising and giving his receivers time to get open did the offense blossom (the touchdowns to Danny Amendola and Mitchell as the prime examples). The Patriots got 104 yards and 13 points on their first two drives, then 112 yards and zero points on their next five drives, then finished with a flurry – 245 yards and 17 points on their final five drives.
■ Brady’s 4-yard touchdown pass to Edelman in the corner was an absolute dime, and the 56-yard touchdown to Mitchell was also a beauty, whizzed just over the head of the defender.


But his best pass on the run may have been a 14-yarder to White on the sideline, after Brady ducked and avoided two defenders, stepped up, and threw.
Advertisement

■ But Brady really struggled with the deep ball on Sunday, most of which were improvised throws on broken plays. He was 0 for 6 on deep passes to Edelman, 0 for 1 to Amendola, and 2 for 2 to Mitchell. It was interesting to hear Trent Green say on the broadcast that Josh McDaniels was excited to see Mitchell get his opportunity on Sunday with Chris Hogan out. The Patriots seem to like their fourth-round rookie.
■ How great was it to see Dion Lewis back in the offense? He played 21 snaps (compared with 24 for White and 34 for Blount), and slipped and juked around five defenders on his eight touches (49 yards).

And White showed impressive toughness, barreling through Rashard Robinson to finish his 9-yard touchdown pass. The Patriots used Lewis and White together in the backfield on a handful of plays, and we love the matchup problems that personnel package creates.
■ White’s touchdown was a thing of beauty.

The 49ers’ entire defense bit on a fake bubble screen to Edelman to the right side, leaving the left side wide open for a screen pass to White.


Once Thuney delivered a perfect cut block, White had plenty of space to get to the end zone, and he finished it off with a powerful move on Robinson at the goal line.
■ The offensive line held up pretty well, although Nate Solder struggled a bit on Eli Harold and allowed two pressures. Rookie first-round pick DeForest Buckner also caused problems, generating a sack against Andrews and a quarterback hit against Thuney (on Amendola’s touchdown). But Andrews made up for it with an awesome cut block on a 21-yard bubble screen to Edelman.
Advertisement
When the 49ers had the ball
■ It was an up-and-down day for the Patriots’ run defense. We counted seven stuffed runs, including two for rookie Vincent Valentine, who was impressive in his 17 snaps (and will need to be even more impressive in the wake of Alan Branch’s four-game suspension). Logan Ryan had a hand in a couple of stuffs, Devin McCourty showed great pursuit and tackling ability on one run play, Rob Ninkovich did a great job in holding the edge on an option run by Kaepernick, Duron Harmon saved a touchdown with a shoestring tackle on Carlos Hyde, and Chris Long, Trey Flowers, Shea McClellin, and Branch also got into the act.
But we also counted a bunch of missed tackles. Dont’a Hightower was a step too slow in getting to Hyde, who turned what should have been a small gain into a 13-yarder. Long was blocked pretty well by rookie Joshua Garnett and Joe Staley for much of the game, and whiffed on a tackle for loss. McClellin whiffed on a tackle, as well, and didn’t have any impact plays while playing 36 snaps in place of Jabaal Sheard.
■ The Patriots were super aggressive early in the game, particularly on third down. They sent a six-man blitz on the first third down of the game, and Patrick Chung ended up with his first sack in five years after disguising his blitz well and running right past the running back.

The Patriots blitzed six again on the next third down, with Hightower plowing right through the running back and getting the sack.
■ Newcomer Kyle Van Noy played 29 snaps in his Patriots debut and looked pretty good rushing the passer. Long got the initial pressure on Kaepernick, but Van Noy beat the right tackle cleanly with an inside move and ended up with the sack. Van Noy also got good pressure on a third-and-7 stop, and played the flats in zone coverage. Long had three pressures on the day, Valentine had two, and Branch, Flowers, and Hightower had one each.
■ The Patriots still struggled to cover running backs, however. The 49ers used a lot of bunch formations, crossing routes, and legal picks to create separation (because their skill players are so bad). Hightower got caught up in a screen and couldn’t catch up with Shaun Draughn on the wheel route, who hauled in a 26-yard pass.

Elandon Roberts, who only played 11 snaps after a disappointing performance against Seattle, also got burned badly by Draughn on his 13-yard touchdown catch out of the backfield.
■ The Patriots have been playing McCourty down near the line of scrimmage more often this season, but it was really noticeable on Sunday, when they used him and Chung to cover the tight ends with Harmon as the deep safety. McCourty allowed a 24-yard catch to Vance McDonald and a 19-yard touchdown to him, as well.
■ Cornerback Eric Rowe, who didn’t play against Seattle, played all 62 snaps against San Francisco and did a nice job in coverage against Quinton Patton, holding him to two catches for 17 yards. Ryan played 41 snaps as the slot cornerback and held Jeremy Kerley to no catches on six targets.
■ Hightower saw his play time decrease to 48 snaps, after playing all 70 against the Seahawks. But it’s unclear if this was performance related, or if the Patriots wanted to give other guys a look. Barkevious Mingo got 10 snaps in garbage time and missed a tackle. Cyrus Jones continued his disappointing rookie season and played one snap.
Special teams
■ Stephen Gostkowski pushed his first extra point wide right, a problem he’s had all season.

So what did he do on his next three extra points? Instead of kicking from the middle of the field, he moved over to the left hash, to give him more room on the right side.

He nailed all three of those kicks.
■ Geneo Grissom and Jonathan Jones each had nice blocks on Amendola’s 30-yard punt return. And why was Cyrus Jones returning punts in the fourth quarter, after Amendola did a nice job of it all game? Given Jones’s mental errors and fumbling problems this season, we have a hard time trusting him back there.
Ben Volin can be reached at ben.volin@globe.com. Follow him on Twitter @BenVolin.