Nolan Arenado, Mark Reynolds and Ian Desmond homered, Chris Iannetta had a tiebreaking double in the sixth inning, and the Colorado Rockies held on to beat the San Francisco Giants 12-11 in snowy Denver on Thursday afternoon.
Arenado had three hits and reached base five times, and Wade Davis picked up his sixth save after giving up two runs in the ninth.
Tyler Austin went deep twice and drove in six runs for the Giants.
The game was played in cold, raw weather with the temperature at game time 39 degrees. Snow fell in the first inning.
It was tied at eight midway through the sixth when the Rockies struck for three runs against the San Francisco bullpen. Raimel Tapia doubled off of Tyler Beede (0-1), and Mark Melancon walked Desmond. Iannetta followed with a two-run double, and pinch hitter Daniel Murphy drove him in with a ground-ball single that went off first baseman Austin’s glove.
The Giants got a run in the eighth on a double by Stephen Vogt, but Trevor Story got the run back with an RBI single in the bottom half. In the ninth, Brandon Crawford had an RBI double, and Joe Panik drove him in with a single. Vogt struck out to end it.
Arenado hit a two-run homer, his 10th, in the first, and Reynolds made it 3-0 on the next pitch with his fourth home run of the season.
In the second inning, Reynolds had a two-run double to left-center field, and Desmond went deep for his fourth of the season to make it 7-0.
The Giants clawed their way back to make it a game. Austin hit a two-run homer with one out in the third, and they got three more in the fourth inning on two Colorado errors between a double and a single, making it 7-5.
Arenado drove in another run with a two-out single to center in the fifth inning off Beede. Austin wiped out the lead with a two-out, three-run homer off reliever Bryan Shaw in the sixth inning.
Shaw (2-0) got the win despite walking two and giving up the home run.
Colorado starter Kyle Freeland went five innings, allowing five runs (three earned) on four hits and four walks. Giants starter Derek Holland was charged with seven runs on seven hits and four walks in 2 2/3 innings.