The Cardinals won the opener Friday but lost a 6-1 decision on Saturday to tumble five games behind the first-place Milwaukee Brewers, who defeated Pittsburgh for the second straight game.
Colorado's Carlos Gonzalez hit a three-run home run and drove in four to help the Rockies.
Todd Helton hit a two-run double while Eric Young Jr. scored twice for the Rockies, who snapped a three-game skid. Jason Hammel (7-11) gave up just one run on five hits with three walks over 6 1/3 innings.
The 27-year-old allowed a run in seven innings while beating the Chicago Cubs in his St. Louis debut on July 29. He's 0-1 with a no-decision since, while allowing 20 hits and 13 runs in 13 innings.
He was touched for six hits and three runs in six innings of his last start, a no-decision at home against Milwaukee.
He's 0-2 in five lifetime starts against Colorado with an ugly 17.28 earned run average in 16 2/3 innings.
For the Rockies, right-handed Dominican export Esmil Rogers aims for a fifth straight win on his 26th birthday.
Rogers, who had just two wins in 29 big-league appearances prior to this season, has won four in a row since an 8-1 loss to San Francisco in mid-April.
The last three victories have come in his last three starts since July 30, while he's combined to surrender just four runs on 16 hits in 16 2/3 innings against San Diego, Washington and Cincinnati.
Rogers, who is 5-0 in six road appearances this year, is 0-1 in two career meetings with the Cardinals while allowing four earned runs in six innings.
The Cardinals won two of three in Colorado in late May and have won seven of the past nine meetings.