Lamar Jackson locked up the MVP award on "Thursday Night Football" against the New York Jets with another outstanding performance, and Josh Allen locked up a spot in the playoffs with a strong effort in Pittsburgh on "Sunday Night Football" in Week 15. 

Kyler Murray got back on track in a win over the Cleveland Browns, and Dwayne Haskins took a sizable step forward against the Philadelphia Eagles.

Each week, I dig deep and grade these quarterbacks on a per-snap basis, taking every individual aspect of their performance into account. And you'll see a season grade for the signal-callers who've played significant snaps in more than one game. 

Best Throws: Jackson's first pass of the game was a fastball on play-action to Hayden Hurst through moderate traffic. Then, after checking out a few potential targets, Jackson exploded through the middle of the line and flipped on the afterburners for a 25-yard scamper. His touchdown to Miles Boykin was only five yards, but he back juked away from a defender in the pocket and got it out quickly on a sidearm-ish release. On an early second-quarter run, Jackson's speed left a few defenders in the dust. On the throw before his long touchdown to a wide open Marquise Brown, it looked like he hit Hayden Hurst in the chest for what would've been a score down the seam. On a fourth-down attempt in his own end, Jackson moved right and found a completely uncovered Andrews for 36. He then scanned the entire field before ripping one to Seth Roberts to move the chains. His touchdown toss to Roberts was slightly underthrown but still in a position in which it got over the trailing corner. He later ripped one to Roberts against zone after really climbing the pocket.

Worst Throws: In the first, Jackson climbed the pocket off play-action and threw high over the middle against tight coverage. Late in the second, he threw behind an out-breaker to Mark Andrews. On a third down in the fourth, Jackson airmailed a throw to a totally wide open Andrews down the middle of the field that likely would've been a long touchdown. 

Summary: Jackson was electric, as he's been for the vast majority of his second season. Some blatant misfires popped up in this one, but there were more quality throws at the intermediate level than usual, and he was very poised inside the pocket as a passer.

Grade: A-
Season Grade: B+

Drew Brees broke Peyton Manning's all-time passing TD record, and Will Brinson and the Pick Six Podcast Superfriends are here to break down that and more. Listen below and be sure to subscribe for daily NFL goodness.

Best Throws: Late in the first, after seeing pressure immediately after snapping his head around after play-action, Darnold found a receiver on an intermediate crosser for a 19-yard gain. A few plays later, Darnold rolled right and pinpointed Jamison Crowder sitting a void in zone coverage. His touchdown to Crowder was another rollout in which he fit the ball in with the veteran wideout stationed just in bounds. Very precise toss for six. On a third-and-2 in the first half, Darnold displayed fine patience in the pocket and squeezed the ball into Crowder to move the chains. With a defender contacting him upon the release, Darnold placed it perfectly to Robby Anderson in the end zone, but the pass was knocked away. In the third, he threw with ideal timing on an out to Anderson before the safety arrived. In the fourth, he hit Anderson in stride on a post. As he was hit, Darnold zipped an out-breaking route against tight coverage to Crowder for a touchdown.

Worst Throws: Midway through the first, Darnold unnecessarily moved out of the pocket and was forced into a hurried throw that fell incomplete. Late in the second, he overthrew an open receiver down the sideline that probably would've resulted in a touchdown, although the receiver may have slowed midway through his route, not helping the timing of the pass. I have no idea who he intended to throw the ball to on an interception in Baltimore's end. While under pressure, he lofted an out route outside its intended target. 

Summary: This was one of the grittiest performances of Darnold's young career, especially considering the strength of his opponent and his offensive line (two elements that are factored in every week, with every quarterback). There were a handful of impressive, tight-window throws, and a handful of head-scratchers. He was pressured a great deal and didn't handle it particularly well but wasn't a disaster under duress either. 

Grade: B
Season Grade: C

Best Throws: The first throw of the game was a somewhat dangerous rocket to Dawson Knox for 11 yards between three defenders. On a third-and-4 in the first quarter, Allen got through multiple reads, stayed in the pocket, directed Cole Beasley over the middle and got it to where the wideout could catch it, but the pass wasn't reeled in. On a second-and-18, Allen fired a laser on an in-breaking route to John Brown. Seemingly feeling what would've been a hit from an oncoming defender, the wideout took his eyes off the ball and dropped what would've been a first down. On a fourth-and-6, after starting in the middle of the field, Allen looked left and ripped one to Brown for 10 yards near the sideline. Late in the first, on what looked like a designed roll right and spin back to the left, with Bud Dupree bearing down on him while on the run, Allen threw a pinpoint ball to Beasley at the left sideline. Allen found Brown on a third-and-10 over two underneath defenders and in front of the safety for a 20-yard gain. In a tie game in the fourth, with pressure mounting, Allen got it to Brown down the left sideline for 40 yards. The game-winning touchdown was a thing of beauty. Allen looked left, climbed the pocket, and threw a strike to the front right corner of the end zone.

Worst Throws: Midway through the second, Allen airmailed the football on a short throw into the flat to Beasley. His interception was a touch high over the middle to Beasley but should've been caught. In the third, he threw low on a hitch to Patrick DiMarco. In the fourth, he forced a deep shot into the end zone to Brown.

Summary: Outside of two high throws to Beasley and two other misfires, Allen was solid against the Steelers in Pittsburgh. As he's shown for the vast majority of his second season, he was comfortable patiently moving through his reads from inside the pocket before throwing an accurate football, and he connected on a deep ball. 

Grade: A
Season Grade: B-

Best Throws: First drive of the game. Play-action bootleg to his left. Murray spun to get his shoulders square and ripped one to Larry Fitzgerald for a first down. Late in the first, Murray put one in the perfect spot on a vertical route to Fitzgerald, but the future Hall of Famer couldn't corral it. On a second-quarter third-and-14, Murray dialed up a fastball over the middle through traffic to move the sticks. With under a minute to go in the half, Murray's touchdown toss to Dan Arnold was a beautiful pass to the back of the end zone where only the tight end could make a play on the ball. There was another fastball on a long throw to a comeback route in the third. With pressure in his face in the fourth, Murray anticipated a throw toward the sideline to pick up the first down on third-and-short.

Worst Throws: On an over route in the second, Murray failed to identify the underneath linebacker and was easily picked. Midway through the third, he missed on an out route to Fitzgerald, but there may not have been a throwing lane.

Summary: After back-to-back D+ grades, Murray rebounded nicely against the Browns at home. Beyond his interception, he was nearly flawless as a passer and put some of those high-level throws on film that we saw in October. 

Grade: A-
Season Grade: C+

Best Throws: Midway through the third, Allen got the ball to Curtis Samuel as two defenders converged on him to move the chains. He fit one into D.J. Moore on a comeback to get a first down. Down two scores in the fourth, Allen threw the exact same flag route for 22 yards to Moore, passes that needed good timing and velocity. 

Worst Throws: Late in the second, Allen forced a pass over the middle that wasn't there, and it was picked by Bobby Wagner. On a third-and-9 in the third quarter, Allen threw wide of a long pass down the right sideline. In the third, he threw a touch late on a comeback that was knocked away. As he was pressured after a play-action rollout, Allen tossed the ball aimlessly before he fell to the ground and it was intercepted. Bad decision. In the fourth, he threw too far and wide on a long ball target to Moore. The second-year pro got antsy in a clean pocket in the red zone, which led to a throwaway and on the next snap he overthrew Samuel in the back of the end zone. 

Summary: The first half for Allen featured one of the most swing/screen pass heavy game plans I've seen all season. He made some better throws in the second half, but, at home, against a middle-of-the-road defense that didn't have a few of its stars, Allen was shaky for most of this contest.

Grade: D+
Season Grade: C

Best Throws: With a rusher bearing down on him, Minshew's first toss of the game was a wide open deep ball to Keelan Cole for 55 yards. Midway through the third, Minshew waited and fit a deep cross in just before a defensive back arrived. Minshew's best play of the day came in the fourth when he looked right, dipped his shoulder away from a defender, stepped into the pocket and found Seth DeValve over the middle. In the fourth, he ripped a slant to Chris Conley for a touchdown between two defenders. The go-ahead touchdown with under a minute to go was impressive because he was drifting to his right and the route went from right to left. 

Worst Throws: Late in the first, after moving into the pocket, Minshew just missed a deep shot. In the second, he climbed forward when it wasn't necessary, which led to a pressured throwaway. On the next play, after creatively moving out of the pocket, he found an open receiver but short-hopped the throw. In the third, he threw slightly ahead of a deep crosser that was almost intercepted. In the fourth, a comeback on the outside was knocked away. On the play before the game-winning touchdown, Minshew threw high on a short in-breaking route that was defended and fell incomplete.

Summary: On the road, against one of the league's most porous secondaries, Minshew didn't exactly light it up. As usual, he dumped it down often and was very quick to improvise. There were some blatant misses and a few good throws, especially later in the contest. 

Grade: C
Season Grade: C+

Best Throws: Mayfield delivered a gorgeous back-shoulder throw down the numbers to Odell Beckham in the first quarter. Drop. In the second, after strangely nearly walking into pressure, Mayfield reset and got it to Beckham downfield for 17. Midway through the fourth, Mayfield threw a pinpoint seam ball to Ricky Seals-Jones.

Worst Throws: Cleveland's first drive of the game ended when Mayfield threw too high for Beckham on a throw down the middle in the end zone, and the ball was intercepted by Patrick Peterson. On the second drive, he was overly antsy within a clean pocket, which led to an awkward throwaway. Early in the the fourth, Mayfield drifted out of a clean pocket, which resulted in him throwing late on the run to Beckham, and the pass was knocked away by Peterson near the sideline. With the game out of reach late, he sailed a vertical route to Landry down the numbers. Then, there was a wide throw on a corner route into the end zone that wasn't there. With under two minutes to go, while scrambling, he underthrew a pass into the end zone that was snagged by Peterson, but he couldn't stay in bounds. 

Summary: After a few games in which his performance was better than his stats, Mayfield had the opposite type of outing against a poor Cardinals secondary. There were a myriad of screens and check downs and only a small number of impressive throws. In general, his pocket presence and accuracy were not good in this game.

Grade: C-
Season Grade: C+

Best Throws: On a third-and-2 early in the game, Lock scrambled right and at the last second, fit one into Tim Patrick for a first down. On a third-and-long in the second, he fit one into Courtland Sutton between zone defenders. On the next play, Lock had perfect touch on a play-action pass to Noah Fant for a big gain. He later dropped a dime to Sutton into the back right corner of the end zone from the far hash, but the ball was knocked away. In the fourth, he threw with good timing and plenty of zip on a comeback to Sutton. Also in the fourth, he put one on the money on an out route between two defenders, but the ball was dropped.

Worst Throws: In the first, he seemingly felt pressure from his right as he looked left but was slow in his drift, held the ball, and took a bad sack. In the second, timing was off on a long comeback route that fell incomplete. Late in the second, he misfired on a fastball into the end zone. On a weird roll left and throwback to his right, Lock underthrew the ball into the end zone, which made for an easy interception. He later threw behind a short out route -- after pump faking -- deep in his own end that should've been picked. A middle-of-the-field throw was not exactly on target and knocked down. A deep out was thrown wide late in the game. 

Summary: In a snowstorm on the road, against a surging Chiefs defense, Lock held his own, and worked the short areas of the field well. He put some impressive throws on tape and there were some clear misfires too. His interception was a force, and Lock should've gotten picked on another play. It was a step back for him after his awesome start, but it wasn't a brutal outing.

Grade: C
Season Grade: B-

Dwayne Haskins
QB

Best Throws: Haskins waited inside the pocket and somehow got a slant into Terry McLaurin with four defenders near the football on his first throw of the game. The 75-yard touchdown to McLaurin was a ripped dig route that gave the rookie room to accelerate down the field. He made a long throw deep across the field to Steven Sims for 19. The touchdown to Sims was a nice touch throw to the back of the end zone. After scrambling to his left, he kept his head up and found an open McLaurin near the sideline to move the chains in the second quarter. In the fourth, Haskins made a quality throw that needed to arc over the underneath line of defenders but still get there in a hurry, and it did both. With under 20 seconds to go, he ripped one into Kelvin Harmon for 17.

Worst Throws: A red zone pass on his second read was late and nearly picked. He faded away from a deep corner to Sims that fell short with under a minute to go in the second quarter. 

Summary: Despite the circumstances -- at home against an average defensive backfield -- this was easily Haskins' most impressive effort of his rookie campaign. He was more calm inside the pocket than in previous weeks, and there weren't blatant misses or very many late passes, although he did check it down relatively often. The intermediate strikes were impressive. Pretty clean outing from Haskins.

Grade: A-
Season Grade: C-

Best Throws: With two Steelers receivers in the area, Hodges lofted one to Diontae Johnson on a comeback on third-and-8 for a first down. In the second, from a clean pocket, Hodges got one to James Washington downfield for 34. To start the third, Hodges put one on Johnson down the field for 29. On third-and-1 late, Hodges put one on Washington on a slot fade for 32 yards. On third-and-7 with under a minute to go, he had good timing on an out to Johnson to move the chains.

Worst Throws: Hodges' first throw was too far out in front of Johnson on an in-breaker and fell incomplete. His first interception of the night was a long ball down the field into double coverage. On third-and-13, Hodges wasn't able to fully step into a long corner to Washington and the pass was wide. His second interception to Tre'Davious White was a late throw toward the sideline that was also too far to the inside. In the fourth, there was a low and outside throw on a hitch by Washington that fell incomplete. He ran into pressure that led to a sack before throwing an interception on a deep post into the end zone with the free safety was aligned in the middle of the field, but Tremaine Edmunds was bearing down on him.

Summary: Beyond a pair of downfield connections and a few tosses near the sideline, Hodges simply did not have a good game against Buffalo. He checked it down often, wasn't poised under pressure, and put the ball in harm's way many times.

Grade: D+
Season Grade: C- 

Best Throws: In the second quarter, there was perfect timing on an out to Danny Amendola. In the third, he perfectly placed a dig route to Kenny Golladay before fitting a ball into Amendola against pressure. Midway through the third, while scrambling, Blough got one to Golladay for a sideline grab to convert a third-and-3. A few plays later, he scorched a long ball to Amendola down the right sideline for a 46-yard gain. Fully in rhythm, Blough uncorked a gorgeous deep corner to Golladay for a big gain.

Worst Throws: On the first pass of the game, Blough was late to his second read over the middle. On the second possession, he missed on a out route to an open receiver. On a third-and-9, a throw toward the boundary was late and to the inside and was nearly picked. An airmailed intermediate route led to an interception in the third. Late in the fourth, Blough didn't see an underneath corner and was picked on an out route. On his next throw, Lavonte David was underneath a seam route and intercepted the throw. With the game out of reach, a high throw was made on a dig.

Summary: Blough continues to show tiny glimpses of aggressiveness and accuracy, but in this game, there were far too many risky, poorly placed throws, and he was late on a handful of passes against an average-at-best defense at home.

Grade: D
Season Grade: C