Havenstein played on Wisconsin's offensive line as a right tackle from 2010 through 2014.[4][5] In his five years, Havenstein played in 54 games and started in 42 of them. Havenstein was a redshirt freshman in 2010. He played in 12 games in 2011, started every game for his remaining three years. In 2013, he was named 2nd-Team All-Big Ten Conference by the media. At the end of the 2014 season he was named consensus 1st-Team All-Big Ten and 1st-Team All-American by the American Football Coaches Association.[6] At the end of his fifth year he was the only Badgers player invited to play in the 2015 Senior Bowl.[7][8]
Havenstein was drafted by the St. Louis Rams in the second round (57th overall), in the 2015 NFL draft.[12] In his rookie season, Havenstein started 13 games at right tackle and did not allow a sack all season.[13][14] At the end of the season Havenstein was named to Pro Football Writers of America's All Rookie Team with Rams' teammate Todd Gurley.[15] In the 2016 season, he appeared in and started 15 games for the Rams.[16]
On April 11, 2017, it was announced that Havenstein would be moved inside to guard after the signing of Andrew Whitworth, which would've moved left tackle Greg Robinson over to the right, Havenstein's previous position.[17] However, after Robinson was traded to the Detroit Lions, Havenstein remained the Rams starting right tackle to start 2017.[18][19] He appeared in and started 15 regular season games and the Rams' one postseason game.[20]
In the 2019 season, Havenstein started in the first nine games for the Rams before suffering a knee injury which ended his season.[25][26]
In the 2020 season, Havenstein appeared in and started all 16 regular season games and both of the Rams' postseason games.[27]
In the 2021 season, Havenstein appeared in and started 15 regular season games and all four of the Rams' postseason games.[28] Havenstein won Super Bowl LVI when the Rams defeated the Cincinnati Bengals 23–20.[29]
On September 8, 2022, Havenstein signed a three-year, $34.5 million contract extension with $24.1 million guaranteed.[30] In the 2022 season, Havenstein started in all 17 regular season games for the Rams.[31]
During the 2023 season, Havenstein was listed as inactive in Weeks 8, 9, and 15 and missed three starts. He started the other 14 games and the Rams' 24–23 Wild Card Round loss to the Detroit Lions.[32]