The A's tied Tuesday's game in the ninth, and Josh Reddick delivered the walk-off hit in the 10th inning to give Oakland a dramatic 4-3 win.
Stephen Vogt laced a one-out double in the bottom of the ninth and scored on a Coco Crisp double off the right field wall, but the A's center fielder was caught in a rundown between second and third and tagged out for the second out of the inning.
Rookie Dillon Overton authored the best start of his young career, going 6 1/3 innings giving up nine hits, three earned runs and striking out six. He didn't walk any batters.
Astros starter Dallas Keuchel was slightly better, allowing five hits and two earned runs over 6 1/3 innings.
Houston second basemen Jose Altuve notched three legs of the cycle, falling a home run short of pulling off the feat. With a single in the 10th, his fourth hit of the night, he raised his AL-leading batting average to .354.
The Astros took the lead in the third inning when Luis Valbuena singled to center, scoring Altuve.
George Springer hit his career-high 21st home run in the fifth inning to push Houston's lead to 2-0. Two batters later, Altuve tripled to center and scored on a sacrifice fly by Carlos Correa.
The A's got two runs back in the seventh. Billy Butler singled with one out and moved to third on a double by Jake Smolinski. Keuchel was removed from the game and replaced by Ken Giles. Rookie Ryon Healy greeted him with a two-run double to right center.