The 49ers just beat the Philadelphia Eagles 17-11, and now are 2-0. Here are the 49ers' grades for their Week 2 win.
He completed nearly three quarters of his pass attempts, so he was efficient. He also scrambled and ran quarterback sneaks for two first downs and one touchdown, so he was scrappy. Sure, he also threw for just 189 yards and a mere 6.3 yards per attempt, and most of his completions were screens, and he threw two passes that should have gotten intercepted, and the offense scored only 17 points, but he was good enough to win. The 49ers essentially needed Garoppolo not to lose the game, and he succeeded. To score, the offense needed Garoppolo to lead long, methodical, slow drives, which he did a few times. They probably could have used a few snaps from Trey Lance, if only to hand off and give the Eagles something else to worry about. But Lance didn't play. More on that decision below.
RUNNING BACKS: C-MINUS.
The Eagles sold out to stop the 49ers run game, so Elijah Mitchell averaged a mere 2.5 yards per carry. He's not as good as Raheem Mostert. His backup, JaMycal Hasty, was much more explosive and elusive, as he averaged 7.6 yards per carry, but he fumbled and got benched. And his backup, Trey Sermon, looked explosive on his only carry, but he got knocked out of the game by a dirty hit to the head. The 49ers currently have only two healthy running backs: Mitchell and Hasty. Kyle Juszczyk left the game with cramps, but should be alright.
WIDE RECEIVERS: C-PLUS.
Deebo Samuel had another monster game -- 6 catches, 93 yards. And Jauan Jennings caught a touchdown pass in the red zone. But no receiver other than Samuel had more than 17 receiving yards. Samuel currently is the entire passing game. Brandon Aiyuk clearly is deep inside Kyle Shanahan's doghouse for reasons unknown. He had one catch for six yards.
TIGHT ENDS: F.
George Kittle had four catches for a measly 17 yards, plus he fumbled for the second time in two games. He hasn't looked explosive this season. Will the real George Kittle please stand up? The current Kittle is the most expensive decoy in the NFL.
OFFENSIVE LINE: C.
They gave up only two quarterback hits, which is good, but they got whipped in the running game most of the day, which is not good. Overall, they held their own against a top-flight defensive line.
DEFENSIVE LINE: B-PLUS.
Gave up 5.2 yards per carry, which is not good. Run defense is an issue for this team. But Nick Bosa sacked Jalen Hurts twice, and this unit helped put together a goalline stand that saved the game.
Also responsible for the poor run defense, but also equally responisble for the goalline stand. Fred Warner made a tackle for a three-yard loss on first and goal from the one-yard line. That was the best play of that series.
Both Jimmie Ward and Jaquiski Tartt were terrific in coverage. Tartt tackled wide receiver Quez Watkins at the 6-yard line after a 91-yard gain to set up the goalline stand, and Ward knocked Hurts out of bounds on third and goal. The only blemish was Ward's late hit on Hurts during the Eagles' final drive, and that was a borderline call.
Deommodore Lenoir gave up the 91-yard catch, but other than that he was lights out. And Josh Norman got called for two short pass interference penalties, but never got targeted again. In total, they gave up only 190 passing yards and no passing touchdowns. Clutch performance by the backups.
SPECIAL TEAMS: A.
Mitch Wishnowsky pinned the Eagles inside their 10-yard line numerous times, and Javon Kinlaw blocked a freaking field goal. That was the play of the game. If Kinlaw hadn't made that extraordinary effort, and had the Eagles kicked a field goal on fourth and goal from the 2 instead of going for the touchdown and not getting it, the score would have been 17-17 when the 49ers got the ball at the end. Which means the 49ers' special teams and defense won this game. Give them big credit.
DeMeco Ryans called a beautiful game, with a perfect mix of man coverage, zone coverage and pressure. He made all the right adjustments and carried the team to victory. His counterpart, Kyle Shanahan, put together three impressive drives, and called 38 runs and only 30 passes, which was smart. Also, his screen passes were effective. But overall, his offense was just Deebo Samuel. Once Shanahan's running game didn't work, he didn't have much he could turn to. He gave Elijah Mitchell all the running back carries until the fourth quarter, and he had zero success, while his backups both looked more explosive than him. And Shanahan never let Lance come in the game to hand off or run. Is Lance that bad? Do the 49ers not trust him to do the smallest things? Couldn't he have helped an offense that averaged just 3.1 yards per carry and scored just 17 points? Maybe Lance would have fumbled or tripped over himself and given the game away. Instead, the 49ers played it safe and let the Eagles beat themselves.
Hey, a win is a win. Good teams find ways to take games like this.
The 49ers are a good team.