Michael Conforto and Thairo Estrada homered to help San Francisco sweep its seventh straight series from Colorado. Scott Alexander (5-0) got the win with an inning of relief and Camilo Doval finished for his 16th save.
"It's very challenging to come to Coors Field to win a series, period," Giants manager Gabe Kapler said. "So to win all three and get out of here relatively healthy is a testament to the work the guys did."
Nolan Jones had three hits for the Rockies. They have lost four straight.
San Francisco is 16-3 at Coors Field dating to Sept. 6, 2021, and has won eight straight in Denver. That streak was in jeopardy until a late rally against Colorado closer Pierce Johnson (0-3).
Johnson walked the first two batters and Crawford doubled on an 0-2 pitch to right-center field to tie it. LaMonte Wade Jr.'s sacrifice fly put the Giants ahead and Joc Pederson's run-scoring single capped the rally.
"I've faced Pierce a handful of times now so I know what what he has," Crawford said. "Not trying to do too much in that situation and just get the barrel on the ball. Fortunately, LaMonte had a good at-bat after me."
The Rockies got all of their run in the first inning off Alex Cobb. After Estrada hit his seventh home run in the top of the first inning, Colorado had three singles and a hit batter to tie it and load the bases. Jones brought two home with a single and rookie shortstop Ezequiel Tovar doubled to give Colorado a 4-1 lead.
Conforto got the Giants within a run in the sixth when he homered following a triple by J.D. Davis to end starter Chase Anderson's day.
Anderson was claimed off waivers from Tampa Bay on May 12 and made his Rockies debut against Cincinnati four days later, tossing five innings against his former team. He allowed three runs and struck out a season-high seven in 5 1/3 innings Thursday.
"Overall, it was good but I'd like to have a couple of pitches back," Anderson said. "I know those probably aren't homers in most parks but they still count here."
Anderson still hasn't had a decision in five starts with the Rockies.
"It is frustrating but if I go out and do my job and put the team in a good position that's all I can do," Anderson said.
Giants: C Patrick Bailey (neck tightness) was out of the starting lineup for the second straight game. Kapler said Bailey's tightness resulted from sleeping on his neck wrong the first night in Denver.
COBB GRINDS THROUGH
Cobb appeared to tweak something in the fifth inning. After throwing a pitch to Randal Grichuk he grabbed at his left hip. Kapler and a trainer came out to check on him but Cobb finished the inning before leaving the game.
"I have no idea what happened," Cobb said. "Maybe muscle fatigue but zero concerned going forward with it."
Giants: Head home for a three-game series against the Chicago Cubs before going back on the road. They have not announced a starter for the opener Friday night.