By Sam McPherson

The front page of the National Football League’s own website noted the 323-day gap between wins for the San Francisco organization on Sunday, after the 49ers beat the New York Giants, 31-21, at Levi’s Stadium in Santa Clara. Just like that, San Francisco heads into the bye week on a positive note, even with the questions surrounding the team’s future on the field. None of that matters right now after the 49ers upped their season record to 1-9 with the rare victory.

READ MORE: Dumpster Fire Causes Traffic Delay On 59th Street Off-Ramp

Even more interesting, it had been 707 days since San Francisco beat any team other than the longtime division rival St. Louis/Los Angeles Rams, as it was December 6, 2015, when the 49ers beat the Chicago Bears on the road in overtime. It’s been a long time for the 49ers to be able to celebrate a win over a non-division opponent, so the whole organization is to be congratulated on Sunday’s winning effort.

Offense: B+

Two silly turnovers are the prime reason this grade is not higher. Rookie quarterback C.J. Beathard had his best game as a pro, completing 19 of 25 passes for 288 yards and two touchdowns. He also ran for a score. Beathard was supported by a running game that piled up 186 yards on the ground, enabling the offense to keep the ball for 29 minutes of possession time. The 49ers converted eight of 12 third-down situations.

Beathard did throw an interception on a simple screen play that was inexcusable, and fullback Kyle Juszczyk fumbled once. But, running backs Carlos Hyde (98 yards) and Matt Breida (55 yards) repeatedly found running room, and Beathard completed multiple long passes, including a beautiful 83-yard TD pass to wide receiver Marquise Goodwin. Yes, this was the 49ers offense at its best, gaining 474 total yards, even if the opponent wasn’t high quality.

Defense: B-

The Giants are mediocre on offense, thanks to injuries and an overrated QB in the aging Eli Manning. If he had a different last name, Manning would have been benched a long time ago. He fumbled once, but he was still able to shred the 49ers defense for 273 yards in the air, including two TDs, on 28-of-37 passing. Wide receiver Sterling Shepard made 11 catches for 142 yards, seemingly running at will through the S.F. secondary.

READ MORE: Town Of Paradise Celebrates New Walkability Upgrades Near Elementary School

The key for the 49ers was holding the Giants to just five third-down conversions on 14 tries. That negated the impact of a N.Y. running game that averaged five yards per carry. Considering the Giants held the ball for 31 minutes of game time, the S.F. defense came up with big stops at all the right times to keep N.Y. off the scoreboard in the second half—until it didn’t matter any more.

Special Teams: A

When was the last time the 49ers punted just once? That may have been the most impressive stat of the game, in truth. Meanwhile, placekicker Robbie Gould nailed all four extra-point kicks and his one field-goal attempt as well. Victor Bolden did an effective job replacing the injured Trent Taylor as the team’s primary kick returner, too, as he didn’t make any costly mistakes.

Coaching: A

Head Coach Kyle Shanahan committed to the run in this game, and it paid off with both Hyde and Breida having stellar games. That enabled Beathard to throw downfield for once, and he made the Giants pay repeatedly with completions over 40 yards to three different receivers. The 49ers really stretched the field in this game, and the positive results were quite rewarding. The defense could have played better, but it did enough to win the game. The last six games on the schedule aren’t going to be easy in terms of finding another win, and the coaching staff now has to make a QB decision, too.

Up Next: Bye Week

MORE NEWS: Beekeeping Club At Meraki High School Hopers To Enhance Educational Experience

That’s now the big question, after the 49ers traded their second-round pick in the 2018 NFL Draft to New England for QB Jimmy Garoppolo. That’s a premium pick for a player, and while Beathard looked good Sunday against a bad team, the S.F. staff needs to know if Garoppolo is their QB of the future. The bye week will give him another set of practices to work with, and it will be interesting to see who Shanahan picks to start the Nov. 26 home game against the Seattle Seahawks. The 49ers can’t rest long on the decision, either, as four of their final six games are against teams headed for the playoffs.