DENVER — After struggling at the start of the season, Carlos Gonzalez is finishing up strong.
Gonzalez, who had his 15th career multi-homer game, is tied with Nolan Arenado for the team lead with 33 home runs. Arenado also homered as the Rockies earned a split of the four-game series.
Gonzalez scuffled in the first two months of the season when his batting average hovered near .200. He heated up after May and hasn't cooled off, hitting a major league-best 29 home runs since June 1.
Gonzalez is hitting .319 since July 5 and raised his average to .270.
"He's been pretty locked in for a while now," Rockies manager Walt Weiss said. "He can change the game at any time. Certainly on offense but on defense, too. He's one of those guys, one of the freaks in the league that can do something to wow you on any given night. He certainly did tonight."
Brooks Brown (1-2) pitched 1 1/3 innings and Justin Miller got the final five outs for his first career save.
Trailing 4-3 in seventh, the Rockies loaded the bases with two hits and a walk against Randall Delgado (5-4). Keith Hessler, recalled before the game, came on and Gonzalez hit a 1-1 slider off the facing of the second deck to put Colorado ahead 7-4. It was his fourth career grand slam, second this season.
"I never faced the guy before," Gonzalez said. "The sheet says he throws a 95-mph fastball. In that situation I didn't want to get jammed. He decided to go with all sliders. It was a good pitch but I was able to throw my hands in and put it in the seats. It was down and going away from me but I got the barrel out front."
Gonzalez added a two-run homer off Matt Stites in the eighth.
"We still had a shot and I wanted to get a look at Stites," Arizona manager Chip Hale said. "He threw the ball (well) until two outs and then CarGo got him again."
Gonzalez also helped starter Jon Gray out of a tough jam in the first inning when he made a diving catch on A.J. Pollock's sacrifice fly that gave Arizona a 1-0 lead.
"He minimized damage," Weiss said. "It could have been a big inning right there."
The Rockies rallied for three in the bottom of the inning. Gonzalez hit a sacrifice fly and Arenado followed with a two-run homer to center, giving him 100 RBIs.
Arenado is the first Colorado player to reach that mark since Troy Tulowitzki had 105 in 2011.
Chris Owings had three hits and drove in two runs for the Diamondbacks. He had an RBI single in the second and a run-scoring double in the sixth that tied the score at 3-all. He scored on a force out later in the inning to give Arizona the lead, but the bullpen couldn't hold it.
"So we came out of it with two wins," Hale said. "A split on the road is not bad."
Diamondbacks: 1B Paul Goldschmidt is away from the team to be with his wife, Amy, for the birth of their first child. Goldschmidt left late Tuesday and is expected to rejoin the team in Chicago when they take on the Cubs this weekend.
Rockies: 1B Justin Morneau (concussion symptoms) has rejoined the team but has not been activated. Weiss said Morneau has not been cleared yet despite having played in a rehab assignment with Double-A New Britain. ... RHP Tyler Chatwood pitched two innings in a rehab assignment for Single-A Modesto. Chatwood (Tommy John surgery) hasn't pitched since April 29, 2014.
Diamondbacks: RHP Zack Godley (4-0, 1.90 ERA) will be recalled to start Friday's series opener against the Cubs in Chicago.
Rockies: RHP Kyle Kendrick (4-7, 4.94 ERA) opens Colorado's four-game series against San Francisco on Thursday.