Barry Zito stumbled, walking five batters in the fourth inning to force in a pair of runs.
And Kevin Correia again lapsed, yielding his fourth critical home run in a month as Brandon Phillips' sixth-inning grand slam broke a 3-3 tie.
Not even Bonds savored the evening, although he could have appreciated a couple of mini-accomplishments. He crept four home runs from Hank Aaron's all-time record of 755 and he moved one homer away from matching Carlton Fisk's 1990 record for most home runs by a player in a year that he turns at least 43 years old (18).
"I'll look back on a lot of things when I'm retired," said Bonds, who's batting .458 (11-for-24) during a nine-game hitting streak. "Right now, it's tough to lose a game."
Correia actually pitched well enough to blank the Reds in the sixth inning, which didn't make the Giants' 15th loss in 22 games any easier.
With the score tied, 3-3, Alex Gonzalez's one-out double began the Reds' uprising. Correia (1-4) struck out David Ross before intentionally walking pinch-hitter Scott Hatteberg. Then came the frustrating part: Correia induced a weak chopper to shortstop from Ryan Freel, but the ball was hit too slow for a play at any base, resulting in a hit that loaded the bases.
"That killed us," Giants manager Bruce Bochy said. "It kept their rally going.
Up came Phillips, who drove a 1-0 pitch over the right-center-field barrier to set up a Reds victory in Pete Mackanin's managerial debut.
Correia wasn't around to discuss his fateful pitch, leaving Bochy to say, "It looked like a fastball that caught a lot of the plate."
Although Correia entered Tuesday with a 1.82 ERA in his previous 22 appearances, he allowed game-winning home runs to Shane Victorino on June 3 at Philadelphia and Chris Young on June 5 at Arizona. On June 25 against San Diego, he yielded Mike Cameron's three-run, eighth-inning homer that erased San Francisco's 2-0 lead. The Giants ultimately won, 4-3, in 11 innings.
"He's a little wild in the strike zone," Bochy said, explaining Correia's penchant for yielding long balls.
Zito's unraveling didn't cost the Giants the game, but it let the Reds climb back into contention. Trailing, 2-0, Cincinnati pulled even on his free passes in the fourth after he faced the minimum nine batters in the first three innings.
"I think I was trying to be too fine out there," said Zito, who actually no-hit Cincinnati for 4 2/3 innings but walked six in five innings. "It was just not pounding the zone. Pounding the zone was good for me in the first three innings. I fell into some nitpicking a little bit."
A couple of Zito's walks followed two-strike pitches that looked like borderline strikes at the very least -- including a 2-2 curveball to Adam Dunn that would have ended the fourth inning without a run. But Zito refused to criticize plate umpire Larry Poncino.
"It's like you win some, you lose some," Zito said with a tiny smile. "It's hard, because I'll get Larry again and I'm sure we'll be on the same page. He's a Major League umpire. You have to trust him."
The Giants could have been trusted to add to Bonds' homer. Though they were facing Aaron Harang, the Reds ace also was erratic, walking four and hitting a batter in the first three innings. However, the Giants sagged almost visibly after Ryan Klesko hit a scorching liner directly to first baseman Jeff Conine with the bases loaded and one out in the third. They moved only one runner into scoring position in the final four innings against Harang and Cincinnati's notoriously flimsy bullpen.
"We got a bad break on Klesko's ball," Bochy said, "but we should have had more runs."