The two-time All-Star retired the first 21 batters before Justin Morneau doubled down the right field line to end the bid for perfection. That was the only baserunner that Bumgarner (15-9) gave up. He fanned the next three hitters and matched his career high of 13 strikeouts.
San Francisco's husky left-hander was attempting to follow Tim Lincecum's no-hitter at AT&T Park on June 25 against San Diego with another milestone evening for a sellout crowd of 41,050 on a pristine Bay Area evening.
His 103-pitch gem helped the Giants remain in a wild-card spot.
Matt Cain is the last Giants pitcher to throw a perfect game, on June 13, 2012.
Buster Posey homered twice for San Francisco.
The hapless Rockies came close to breaking it up in the top of the fifth inning when Matt McBride was thrown out by San Francisco shortstop Brandon Crawford on a close play at first base. Colorado manager Walt Weiss came out to dispute the call but did not ask for a replay after getting a signal from his dugout.
Drew Stubbs hit a deep fly to left in the first but Gregor Blanco made the catch near the wall.
Colorado didn't come close to getting a hit otherwise.
It's Bumgarner's third career shutout and sixth complete game.
The Giants didn't do much offensively either until Posey's two-run home run in the sixth chased Rockies starter Jorge De La Rosa. Hunter Pence drew a leadoff walk before Posey smashed a 3-1 pitch into the stands in left-center.
Posey also homered in the eighth off reliever Brooks Brown. It's the second multi-homer game of Posey's career.
De La Rosa (13-9) struck out five and walked two in five-plus innings.
Rockies: C Wilin Rosario missed his fourth straight game with a sore wrist. Rosario has done some light hitting in the cage but the team has not ruled out placing him on the disabled list.
Giants: Team officials are still awaiting word on backup catcher Hector Sanchez, who flew to Pittsburgh on Monday to meet with a concussion specialist.
Rockies: LHP Franklin Morales (5-7) pitches the series finale and is making his second start since a two-inning relief appearance against Cincinnati on Aug. 17.
Giants: RHP Tim Hudson (9-9) has a 4.35 ERA in 13 career starts against Colorado.