The Denver Broncos have a proud history of productive running backs. When we think back over the years, Broncos fans have been fortunate to witness some of the league’s great runners. From Floyd Little and Sammy Winder to Terrell Davis, Mike Anderson and Clinton Portis, the Broncos have traditionally been one of the great running teams in the NFL.

That wasn’t exactly the case this season. The Broncos running game averaged just 92.8 yards per game, ranking them 27th out of 32 teams. There were a number of contributing factors in the team’s struggles on the ground. The offensive line failed to open running lanes, opposing defenses stacked the line of scrimmage against the Broncos young quarterbacks, and the Gary Kubiak/Rick Dennison offense had a difficult time finding much success anywhere. So, how did the individual running backs perform?

Devontae Booker

Drafted in the third-round out of Utah, Booker was expected to play primarily in a backup role, allowing him time to learn the Broncos’ offense. That all went out the window when starter C.J. Anderson was injured in late October. Booker was thrust into a starting role, and looked like the rookie he was.

While he runs extremely hard, and hits a hole with velocity, his inexperience showed throughout the season. He finished the season with 612 yards and four touchdowns, which isn’t bad, considering the offensive line situation; but averaged only 3.5 yards per carry. He struggled with his pass blocking assignments as you’d expect, but was solid as a pass catcher, making 31 receptions out of the backfield. His ball security must improve, as he did fumble four times, but Booker looks like a solid back that should continue to improve.

Final grade: C+

C.J. Anderson

For all of the struggles of the Broncos’ offensive line, Anderson actually had some semblance of success running behind it. Through the first seven games, he had 437 yards and four touchdowns, averaging four yards per carry. Unfortunately, Anderson would end up missing the final nine games of the season with a knee injury. The Denver running game took a huge step backward without Anderson in the lineup, and they need him to return to full strength in 2017.

Final grade: B-

Justin Forsett

The veteran runner had started the 2016 season with the Baltimore Ravens, but was released prior to the season, only to be resigned two days later, then released again in October. He then latched on with the Detroit Lions, but they released him after only two games in early December. Gary Kubiak had worked with Forsett while he was in Baltimore and Houston, and signed him to fill the void left by injuries. Forsett ran for 155 yards in four games, but also fumbled twice, and will probably retire in the offseason.

Final grade: D+

Kapri Bibbs

When Anderson went down with the knee injury, it looked like the player it would benefit the most would be Kapri Bibbs. The three-year pro out of Colorado State, was beginning to get more and more carries, and was starting to produce a little. After carrying the ball just 20 times in Weeks 8-12, he was getting the bulk of the work in Week 13 against Jacksonville. Bibbs had five carries in the first half, and had gained 49 yards. A high ankle sprain would finish his day, and the Broncos would place Bibbs on the injured reserve list, ending his season. He may have missed a golden opportunity.

Final grade: C-

Andy Janovich

The Broncos have to feel great about the rookie fullback out of Nebraska. He proved to be able to contribute to the team’s success in a number of different ways. He played special teams, was an able blocker in the running game, ran the ball himself for 33 yards and a touchdown and even caught five passes. Janovich was lost for the season after Week 11 to an ankle injury, but he should return to full strength in 2017.

Final grade: B+

Juwan Thompson

Thompson had a roller coaster season in 2016. First, he was cut by the Broncos prior to the season. Then, he was re-signed to the practice squad. After Anderson went down with his knee injury, Thompson was promoted to the active roster. Yet, he carried the ball just eight times for 26 yards in five games. If he couldn’t get playing time, in a season so full of injuries, it may never happen.

Final grade: D