Jason Hammel (4-6) went 6 1/3 innings in the win, allowing six runs on eight hits and four walks.
Rick Porcello (6-5) was touched for nine runs -- six earned -- on eight hits and two walks in just three innings for the loss.
That would be the only lead Detroit would have as Colorado loaded the bases in the second and scored six times and batted around. Chris Iannetta hit a bloop single into shallow center field to score Seth Smith, Hammel worked a walk to plate Ty Wigginton and Gonzalez hit a sacrifice fly before Nelson pulled a ball inside the left-field foul pole to give the Rockies a 6-1 lead.
Smith tripled to lead off the third and crossed the plate on Avila's fielding error on a ball hit by Wiggington. Gonzalez's two-run double later in the inning made it 9-1.
Colorado continued the rout with a Tulowitzki RBI double and a run scoring single by Blackmon in the fourth.
Gonzalez then went deep in the fifth before Blackmon singled in Wigginton in the sixth to finalize the scoring for Colorado.
Detroit tried to get back into the game with Peralta's grand slam in the sixth. Victor Martinez and Magglio Ordonez hit back-to-back base hits and Avila walked before Peralta placed a ball into the left-field bleachers.
A Martinez groundout scored Austin Jackson in the seventh, but the Tigers couldn't capitalize despite placing two men on base in both the eighth and ninth.
Colorado placed catcher Jose Morales on the 60-day disabled list and purchased the contract of catcher Matt Pagnozzi from Colorado Springs on Friday...Detroit hit 2-for-10 with runners in scoring position and left eight men on base while Colorado was 6-for-11 and left just four...The Rockies finished the game with 14 hits and the Tigers had 12...Miguel Cabrera was thrown out at the plate trying to score on an Ordonez single in the third.