Madison Bumgarner allowed three runs in the first inning, and the San Francisco Giants were never able to answer Sunday in a 6-1 loss to the Arizona Diamondbacks.
Wilmer Flores and David Peralta homered, Merrill Kelly held the Giants to one run in 5 2/3 innings, and the Diamondbacks avoided a four-game series sweep.
Kelly (9-12) struck out five and allowed six hits in his first win at home since June 2. Madison Bumgarner (8-8) took the loss for the Giants after giving up four runs on six hits in six innings.
The Diamondbacks ended a four-game losing streak, spoiling Bruce Bochy's final game at Chase Field as Giants manager.
Bochy, who is retiring at season's end, was honored before the game with a videoboard and public address announcement. He then walked to home plate, where Diamondbacks manager Torey Lovullo presented him with an all-inclusive, four-night stay at a lodge in Montana.
The Diamondbacks struck early with three first-inning runs. A two-out fielding error in right field by Austin Slater allowed Eduardo Escobar to take third base on a double, and after a walk, Adam Jones tripled when the ball got past Giants center fielder Kevin Pillar to drive in two runs.
Josh Rojas drove in Jones for a 3-0 lead off Bumgarner, who had nine strikeouts.
Flores hit an 0-2 pitch from Bumgarner in the fifth deep into the left field seats for his sixth home run of the season. Flores is 12 for 19 (.632) with four home runs and seven RBIs in his last six games.
The Giants finally got to Kelly in the sixth. Mike Yastrzemski led off with a triple and came home on Scooter Gennett's single.
Kelly walked two more hitters to load the bases with two outs, but Andrew Chafin got Brandon Crawford to bounce out to end the inning.
Peralta's seventh-inning line drive just cleared the right field fence and landed on the pool deck, his 12th of the season.