Johnson was previously owed $9 million in base salary with $2.1 million guaranteed.
Houston acquired Johnson from the Arizona Cardinals in a blockbuster trade last spring for star receiver DeAndre Hopkins.
The 29-year-old rushed for 691 yards, six touchdowns, and averaged 4.7 yards per carry in his first campaign as a Texan. Johnson missed three games in 2020 due to a concussion and while on the reserve/COVID-19 list.
Johnson’s new deal in Houston arrives nearly a week after the franchise released fellow rusher Duke Johnson. The Texans free up some cap space as the team tries to improve its roster entering next season.