Hopkins appeared in 48 collegiate games and recorded 130 receptions for 1,945 yards and 16 touchdowns. As a senior in 2019, Hopkins was named team co-captain and registered career- highs in receptions (61), receiving yards (830) and touchdowns (7). He was named the John Mackey Tight End of the Week after catching six passes for 84-yards and a touchdown at Nevada. He also recorded career-highs with 10 receptions for 140-yards against Maryland, which was the most receptions and receiving yards by a Purdue tight end since Tim Stratton in 2001 and Dustin Keller in 2007. Against Wisconsin, he finished with eight catches for 127-yards and two touchdowns, becoming the first Purdue tight end since 1997 to record eight receptions, 100-yards and two touchdowns in the same game. In 2018 as a junior, he appeared in all 13 games (four starts) and caught 34 passes for 583-yards, two touchdowns and a team-high 17.1 yards per reception. He set season-highs against Missouri when he caught five passes for 136-yards and a touchdown. As a sophomore in 2017, he appeared in 12 games as a reserve and caught 25 passes for 349-yards and three touchdowns. He made one start and played in 11 games in 2016 with 10 receptions for 183-yards and a touchdown.
As a senior in high school, Hopkins was named All- State Division II-AA and also earned letters in basketball (four years) and baseball (two years). His father, Brad, played football at the University of Illinois. Hopkins majored in selling and sales management.