Offense: The 49ers ran hot and cold throughout the game and were particularly frigid during the third quarter. Quarterback Blaine Gabbert got away with a few bad passes that were dropped by Rams defenders. But he also made big plays, none more important than an 18-yard pass to newcomer receiver Jeremy Kerley on fourth down in the second quarter. The 49ers' offensive line rose to the occasion against Aaron Donald and the Rams' distinguished defensive line. The 49ers did not allow a sack. Grade: B
Defense: After being torched by Todd Gurley for 133 yards in his only game against San Francisco last year, the 49ers limited him to 47 yards and a 2.8-yard average. Case Keenum was sacked only twice but was under pressure from blitzing safeties throughout the evening. NaVorro Bowman led the 49ers with nine tackles and had his first interception at home since his Candlestick closer in 2013. Grade: A
Special Teams: There was nothing flashy from the special teams, and the unit allowed a 28-yard punt return from Tavon Austin in the third quarter. It was one of the only two times the Rams crossed the 50-yard line in the second half. Still, it was a mostly solid effort, including by new punt returner Jeremy Kerley who didn't have any opportunity to adjust to Levi Stadium's winds but had no flubs. Grade: B
Overall: The game was eerily similar to last year's rousing Week 1 win over the Vikings, which also came on Monday Night Football and involved an opponent that simply didn't look very good that evening. That game was followed by a cross-country trip to a well-rested team, the Steelers, that ended up trouncing San Francisco. The 49ers next game: across the country against a Carolina Panthers team that opened the season on Thursday night. Grade: B+
Premium content for only $0.99
For the most comprehensive local coverage, subscribe today.