Kuhn signed with the Pittsburgh Steelers as an undrafted free agent following the 2005 draft but was released prior to the beginning of the 2005 season. He signed a contract to play for the San Jose SaberCats of the Arena Football League but chose not to report after being signed to the Steelers practice squad on November 30, 2005. Kuhn was on the practice squad roster for the entirety of the Steelers playoff run and their win in Super Bowl XL.
Kuhn was re-signed for the following season on February 17, 2006, but was cut once again at the end of training camp. After spending the first eight weeks of the 2006 season on the Steelers' practice squad, Kuhn was signed to the Steelers active roster on October 31, 2006. He finished the 2006 season, appearing in nine games, with two carries for 18 yards, including a 16-yard romp on his first NFL carry versus the Cleveland Browns. He added a two-yarder against the Carolina Panthers. He also caught one pass for 15 yards, also against Carolina.
Kuhn was signed to the active roster of the Green Bay Packers a day after being released by the Steelers. He joined Rob Davis as Shippensburg University graduates on the Packers roster. Davis has subsequentially retired and joined the Packers front office staff.
The Packers re-signed Kuhn, and was an exclusive rights free agent, on March 19, 2008. According to the terms of his contract, he will make $445,000 in 2008. Also, before the 2008 season, Kuhn hired agent Kevin Gold who represented Rob Davis.
On October 12, 2008 Kuhn scored his first NFL touchdown, versus the Seattle Seahawks in Seattle, on a 1-yard reception from Aaron Rodgers. He scored his first rushing touchdown on a one-yard run on November 24 against the New Orleans Saints to put the Packers up 7-0. Also for the season, he recorded 12 special teams tackles