Colvin was called up to the majors for the first time on September 21, 2009.[3] He started the game and went 1 for 3 with a single and a sacrifice fly.
After a strong spring in 2010, Colvin made the Cubs Opening Day roster.[4] On April 8, 2010, against the Atlanta Braves, Colvin hit his first major league home run.[5] Three nights later Colvin hit his first triple of his major league career against the Washington Nationals. After compiling 20 home runs for the Cubs during the season, on September 19, 2010, in a game against the Florida Marlins, Colvin was hit in the chest with a shard from a broken bat when scoring on a double by Welington Castillo. The piece of bat punctured Colvin's lung. Colvin was brought to the hospital and remained in stable condition. He missed the remainder of the 2010 season due to the incident.[6]
Colvin was outrighted off the Rockies' roster on September 4, 2013, becoming a free agent on October 1.[7]
San Francisco Giants
In 2014, Colvin was expected to sign with the Orioles, but due to back issues, the deal fell through.[8] Instead, Colvin signed a minor-league deal with the San Francisco Giants on February 22, 2014.[9] On May 12, 2014, Colvin was called up and made his Giants home debut by hitting a home run and a two-run triple in his third game of the season. The home run was also splash hit number 65 at AT&T Park. The Giants went on to beat the Atlanta Braves 4-2.[10] However, after hitting only .223 in 139 at-bats, he was designated for assignment on August 1.[11] Colvin elected free agency in October 2014.[12]
Miami Marlins
Colvin signed with the Miami Marlins on a minor league contract in 2015.[13]
Chicago White Sox
On May 3, 2015 Colvin signed a contract with the Chicago White Sox. He elected free agency on November 6.[7]
Long Island Ducks
On May 14, 2016, Colvin signed with the Long Island Ducks of the Atlantic League of Professional Baseball. He became a free agent after the 2016 season. In 72 games he struggled hitting .218/.264/.339 with 5 home runs and 28 RBIs.
Los Angeles Dodgers
Colvin signed a minor league contract with the Los Angeles Dodgers in February 2018.[14] He was released on June 24.[7]