There is no such thing in the NFL as a bad win. But as the Philadelphia Eagles proved on Sunday, there is such a thing as an ugly win.

(Photo by Grant Halverson/Getty Images)

The Eagles and Panthers combined to turn it over five times and the Eagles blocked a punt late in the fourth quarter to setup the game-winning score. Philadelphia trailed nearly the entire way before picking up a huge 21-18 win over Carolina.

This game featured a flipped script for the Eagles. Recently it was the offense playing well while the defense struggled. In this game, it was the offense that struggled and the defense that kept the team in the game.

An ugly win may not be a bad thing in the NFL, but it does still yield an ugly report card. Here is the latest Grayson's Grades:

A

Javon Hargrave - Hargrave continues to be the most consistent and dominant player on the defense. He was being so disruptive on the line that the Panthers stopped double-teaming Fletcher Cox and started doing that to Hargrave. He recorded a big sack in the game and got some pressure on Sam Darnold. Hargrave had three tackles, one sack, one tackle for a loss and two quarterback hits.

Darius Slay - What a week for Slay. He became a father again earlier in the week. That took him off the practice field for a bit, but he continued to ask his teammates what he missed every day to be ready for this one. He watched film when he could and had himself a day. Slay picked off two passes in this game. He returned one of them to the Panthers ten yard line leading to an Eagles Field Goal. Slay finished the game with three tackles, one tackle for a loss and two passes successfully defended.

Steven Nelson - Nelson had a solid game in the secondary and came up with a huge play late in the game. The Panthers were down three late in the fourth quarter when Nelson jumped a route along the sideline and picked off a pass. That essentially iced the game and preserved the win for the Eagles. Nelson finished with three tackles and two passes successfully defended.

Quez Watkins - Watkins continues to prove himself and take advantage of whatever opportunities come his way. He ran a great route, got open and pulled down a big 53 yard reception in the second half to set up a touchdown. I would not mind seeing Watkins get a few more touches after his recent production. Watkins caught three passes for 48 yards.

T.J. Edwards - The Linebackers on this team have not done much worthy of compliments. However, Edwards made one of the biggest plays in this game. He blocked a punt late in the fourth quarter that set up the game-winning touchdown. It was a huge play at a big time. Blocking a punt that leads to the game-winner will almost always earn an 'A'. Edwards also contributed on defense. He finished with 5 tackles.

B

Fletcher Cox - Cox was getting criticized around Philly this week for lack of effort on some plays. He definitely had a better game here. Cox once again got double-teamed which opened things up for Javon Hargrave. After he got a sack and started blowing up the Panthers line, they shifted to double team Hargrave. That allowed Cox to get a sack. Cox needs to be more consistent and turn in the effort he gave in this game more frequently. He finished with two tackles, one sack, one tackle for a loss and two quarterback hits.

DeVonta Smith - Smith is continuing to be a consistent presence on this offense which is great to see. He is becoming more and more of the favorite target of Hurts. Opposing defenses will pick up on that so the challenge will grow for Smith to try and get open. He caught seven passes for 77 yards. Smith also caught a two-point conversion late in the game.

Josh Sweat - Sweat played well in this game. He picked up a sack and did a good job of helping to get pressure on Sam Darnold. Sweat finished with four tackles, one sack, one tackle for a loss and one quarterback hit.

Jonathan Gannon - Gannon finally showed me something. I saw more of a scheme in place this week. Until now, this defense has been pretty vanilla and lacked much creativity. This game showed more stunts and more of a dedicated plan to get pressure on Sam Darnold. It worked as the Eagles forced Darnold to throw three interceptions and get sacked three times. Frankly, Gannon's defense kept the Eagles in this game. He has something to work with up the middle as the Panthers shifted in this game to double-team Javon Hargrave instead of Fletcher Cox. After they did that, Cox got a sack. He needs to continue to develop those two and build his game plan off of them.

C

Offensive Line - The Offensive Line regained one of its starters with Jordan Mailata returning from injury. However, instead of going back to Left Tackle he went to Right Tackle in place of Lane Johnson who is missing time due to a personal matter. Andre Dillard started at Left Tackle for the second week in a row. Jason Kelce was solid with the exception of a bad snap deep in Philadelphia territory that eventually went out of the endzone for a safety. Mailata got beat twice off the edge on back-to-back plays resulting in back-to-back sacks. They performed okay, hence the 'C' grade, but will need to play better Thursday night against Tampa.

Jalen Hurts - Hurts made some poor decisions in this game. After a bad snap by Jason Kelce, Hurts should have fallen on the ball in the endzone. Instead, he tried to pick it up and missed. Three Panthers were there and could have jumped on it for a touchdown. Somehow it squirted out of the endzone for a safety. At another point in the game, Hurts had a free play after the Panthers jumped offsides. He threw the ball out of bounds. There is no such thing as an interception on that, so feel free to throw it in play and give a receiver a chance to fight for the ball. There were also plenty of other times in the game that I felt he had the opportunity to run. I do like that he keeps his eyes downfield when he breaks the pocket, but the Panthers seemingly had that covered and stayed disciplined when he did break the pocket so he needed to take what he could get instead of throwing it away because sometimes there was enough space to pick up five or six yards. On the plus side, in crunch time he got the score he needed. He also made a great throw on a big play to Quez Watkins downfield. Hurts completed 22 of 37 passes for 198 yards and an interception. He also ran it nine times for 30 yards and two touchdowns.

D

Nick Sirianni - Sirianni got the win and deserves credit for keeping his guys believing the could and would eventually win it. However, the penalties are still a big problem. For the second straight week a penalty took a touchdown off the board. That continues to kill this offense. There was another ineligible receiver downfield which means those type of plays are not being executed frequently enough in practice. I also felt Sirianni's game plan was poor early in this game. He was frequently working horizontally on the field instead of looking to push the ball over the middle or further downfield. Sirianni only had 13 run plays by his running backs. That number needs to be higher. At least it is trending in the right direction. At the end of the day, he got the win. It was a much-needed win. Now I am very curious to see how he handles a short week with the defending Super Bowl Champs coming to town.

F

None

Eagles vs Carolina Panthers, Oct 10, 2021