Brock Osweiler, QB
Snaps: 65. Stats: 27-of-39 for 299 yards and 1 touchdown. 3 rushes for 5 yards and responsible for one sack.
The play from Osweiler was actually really strong all game, including that first half. The offensive struggles were there and clear, but Osweiler was doing his best to keep the Broncos moving the ball against a tough and smart defense.
The second half was much better than the first half, and he also led the game winning drive and nearly three others, but two of them ended in a fumble by the running back and a missed field goal. The first potential game winning drive was to put Denver in the lead 17-14, but the defense wasn’t able to hold onto it. All in all, Osweiler was smart, tough and pretty accurate all game.
Ronnie Hillman, RB
Snaps: 33. Stats: 9 rushes for 35 yards. 4 targets, 4 catches for 26 yards. 1 hurry allowed.
It was a tough game for Hillman, and not just because of bad run blocking from the offensive line. There were times he looked confused, or afraid of contact, especially in the first half. The last few weeks have just been a scared Hillman playing, who hasn’t shown good vision running the ball.
He did look good as a receiver, however, but the vision and being afraid of contact showed here as well. The second half was better, and he didn’t look as scared or as bad as the first, but still not great. Run blocking also improved in the second half of the game, which helped.
Juwan Thompson, FB
Snaps: 3. Stats: N/A.
The only reason Thompson gets a grade is because he started. He was used as a fullback, and it wasn’t pretty. It showed exactly why he isn’t and shouldn’t be a fullback.
Emmanuel Sanders, WR
Snaps: 54. Stats: 4 catches on 5 targets for 67 yards, 1 touchdown and 1 drop.
It was a great game from Sanders. He was hard to cover for the Bengals defensive backs, primarily due to his quickness in and out of his cuts. It wasn’t just as a receiver where he looked good, either. Sanders really looked good in all phases, including as a blocker. However, there were a few negative plays from Sanders, including a drop.
Demaryius Thomas, WR
Snaps: 48. Stats: 7 catches on 12 targets for 54 yards.
Thomas played a really good game. He played the catch of the game, as he went to the ground and caught the ball one-handed, while his other arm was being held. The big things were — Thomas didn’t look lazy in his route running, and looked tough after the catch, fighting for extra yards. He came close to breaking one, but an ankle tackle ended those chances.
Owen Daniels, TE
Snaps: 46. Stats: 5 catches on 7 targets for 70 yards and 1 drop.
Even though by definition it is a drop, Daniels' drop won’t count as a negative in his grade. He was in the process of making the catch with the ball hitting his hands, as he took a huge hit, or a 'de-cleater' as I like to call them. This time, the drop isn’t because of Daniels.
However, all game he looked really good as a receiver, but bad as a blocker. As a receiver, Daniels has been physical and tough after the catch, but slow, as we have come to see over the last half of the season. It’s a nice change from what we saw in the first half of the season from him.
Ryan Harris, LT
Snaps: 65. Stats: 2 hurries allowed.
It was a really good game from Harris, and probably his best one all season. He was really good all game in pass protection, allowing only 2 hurries, and he recovered from those after Osweiler moved. The run blocking wasn’t great, but it was better than we have been seeing from Harris. Not a big step forward, but a step forward nonetheless.
Max Garcia, LG
Snaps: 65. Stats: 2 QB hits, 2 hurries allowed.
Garcia continues to impress as a run blocker, but at the same time, continues to show his mediocre pass blocking. He got Osweiler hit twice, including a screen play where he barely attempted to slow the defender down. Really, when looking at it, Garcia played the run like Harris played the pass, but played the pass like Harris played the run.
Matt Paradis, C
Snaps: 65. Stats: 4 hurries allowed.
Paradis has really come a long ways since the start of the season, but showed there is still room to grow with his performance against the Bengals. The young center is smart and athletic, which he consistently shows, but doesn’t always have the strength to deal with stronger defensive linemen.
This led to a couple Bengals defensive linemen having their way with Paradis, but it wasn’t often and he always fought back, or answered. It was a really impressive outing for the first-year center, who has also been the best offensive linemen on the season.
Louis Vasquez, RG
Snaps: 59. Stats: 1 QB hit, 1 hurry allowed.
The only offensive linemen not to play every snap. Vasquez got banged up and left the game for a short time, only to come back later. He was solid in pass protection, but worse than what his pressure stats may make one think. The Bengals gave him a hard time, and he struggled to answer. His run blocking was worse, and he seemed to always be controlled at the point of attack.
Snaps: 65. Stats: 2 sacks, 8 hurries allowed.
Once again, a completely awful showing from the right tackle. He started off strong, but has gotten progressively worse as each game. Bright side is, he has gotten better since the loss to Oakland, but that’s because he couldn’t do any worse and how bad that game was. There were a handful of good plays from Schofield on the night, though.
That wraps up the starters. Time to jump into the players who subbed into the game.
C.J. Anderson, RB
Snaps: 31. Stats: 9 rushes for 73 yards, 1 touchdown. 1 catch on 2 targets for 8 yards. 1 hurry.
The running back has looked like he should be the starter since he got healthy. It continued against the Bengals. He was quick, and sharp, but the two best things from Anderson this game were his vision and toughness before, and during, attempted tackles. Early in the game he allowed a hurry, but his pass protection got better after that. The only major knock to his game was his fumble on what could have been a potential game winning drive.
Jordan Norwood, WR
Snaps: 52. Stats: 4 catches on 6 targets for 37 yards.
The backup receiver came up with a couple of big catches on the game that kept the chains moving. Like Sanders, he was able to win his matchups with his quickness in and out of cuts. Even as a blocker, which Norwood has usually struggled doing all season, he looked good. Very few negative plays when all said and done.
Andre Caldwell, WR
Snaps: 17. Stats: zero catches on 1 target.
Whenever Caldwell enters the game, I am left wondering why he is on the field. Thomas has a knack for lazy routes, but Caldwell does as well. He also tends to give up on the pass if it isn’t directly to him. His adjustments to the ball are awful and non-existent.
Snaps: 13. Stats: 1 catch on 1 target for 13 yards.
The final receiver to see action was limited primarily to blocking duties, which he does extremely well. Fowler also made a tough catch for a first down late in the game. For his limited snap counts, it was a great game by Fowler.
Virgil Green, TE
Snaps: 21. Stats: 1 catch on 1 target for 8 yards.
Excellent as a blocker, Green really seemed to be back to the level that he was known for a year ago. He also showed the most fight after the catch that I have seen from any Broncos receiver for all of this season. With how he has played in his limited role, it leaves one to wonder why he isn’t seeing more time. It also makes it clear as to why he isn’t happy with his role on offense.
There were three other players who saw action, but all less than ten snaps. TE Vernon Davis saw a big demotion after a couple of crucial drops the last two games, and saw only six snaps. LG Evan Mathis has been benched in favor of Max Garcia, but saw six offensive snaps when Vasquez left the game. Finally, Tyler Polumbus, who should be starting at right tackle, saw only one offensive snap as the sixth offensive linemen.
That wraps this up folks. I will see you all next year. Happy New Years, stay safe and have a good night.
To get instant Broncos notifications, download the NEW Scout mobile app for iOS HERE!
Be sure to check out the ever-growing benefit package of being a Mile High Huddle Insider! Check it out HERE.