Missing his location with one of them cost him the game.
A split-finger fastball in the first inning drifted back over the plate and Ty Wigginton launched it into the left-field seats for a three-run homer, as the Astros avoided a sweep by beating the D-backs, 3-0.
"I didn't make the pitch when I needed to," Johnson said. "I made one mistake, I guess that's what it comes down to. That was pretty much the whole ballgame right there."
After bludgeoning Houston starters in the first two games of the series en route to a total of 23 runs, the D-backs could do little with Astros ace Roy Oswalt, who combined with Jose Valverde to toss a two-hitter.
"He had everything working," catcher Chris Snyder said of Oswalt. "He was tough today. He was spotting up his fastball, doing pretty much everything he wanted to do.
"When Oswalt's got everything working like he did today it's tough to get hits let alone multiple baserunners. He was on it today."
The start of the game was delayed 14 minutes while the sellout crowd at Minute Maid Park paid tribute to former Astros great Craig Biggio, who had his No. 7 retired. Johnson had started warming up expecting a 1:10 p.m. CT start time, but about four minutes before that, a phone call down to the bullpen alerted him that the game would not start until 1:20 p.m.
Johnson stopped throwing for a while and then threw 10 more pitches before heading to the dugout. The game, meanwhile, wound up starting at 1:24 p.m.
"I thought he handled the delay extremely well," Arizona pitching coach Bryan Price said.
For his part, Johnson said the delay had no effect on his performance.
Johnson retired the leadoff hitter, before allowing a walk and a seeing-eye single through the hole at short. The left-hander got Lance Berkman to line out and was nearly out of the inning when Wigginton hit a 1-0 split-finger into the Crawford Boxes in left field.
"It was down, it wasn't that bad of a pitch," Snyder said. "Everything that guy puts wood on is a base hit right now."
It proved to be more than enough runs for the Astros behind Oswalt, who is now 7-1 in nine career starts against the D-backs. The right-hander allowed just one hit and a pair of walks over eight innings.
Johnson, meanwhile, would scatter six more hits and fan five before leaving after seven innings.
"It seemed like once the game go going a little farther his stuff got better and better," manager Bob Melvin said. "Can't ask for much more than that."
Johnson (10-9) has never taken losses easily or well, but there's an even greater sense of urgency as he is six wins shy of 300 with just eight starts remaining for him this year.
"I'm moving onto my next game, not much I can do about it now," Johnson said.
The D-backs finished the road trip to Denver and Houston with a 4-2 record, their second straight above .500 trip.
"We'll take that," Melvin said. "Anytime you have an over .500 trip and win two out of three in each city you'll take it, albeit once you win two you want to try and finish it off and win the third one, but Oswalt had a little something to say about that."
After an off-day on Monday, the D-backs open a six-game homestand against the Padres and Marlins. They were a disappointing 3-4 on the last time they played at home.
"We have to start playing better at home," Melvin said.
Steve Gilbert is a reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.