PHOENIX — Arizona starter Eduardo Rodriguez delivered 6.1 scoreless innings, but failed execution down the stretch from the offense and bullpen cost the Diamondbacks in a 3-1 loss to the Houston Astros on Tuesday.

The Diamondbacks had two runners in scoring position with one out in the seventh inning but failed to add an insurance run while leading 1-0, and Houston took advantage. Rookie Brice Matthews — who hit two home runs off Zac Gallen on Monday — cracked a go-ahead, two-run shot off reliever Jake Woodford.

The Astros tacked on an insurance run in the ninth inning, and Josh Hader recorded a tumultuous save.

The D-backs loaded the bases with nobody out. Blaze Alexander struck out, and Jose Herrera hit into the game-ending double play, started by a sliding grab by Matthews.

And now Brice Matthews starts a game-ending double play! https://t.co/XpsiCjTWM8 pic.twitter.com/gRQ87THX37

— MLB (@MLB) July 23, 2025

Arizona went 2-for-12 with runners in scoring position.

The Diamondbacks (50-52) entered this series on a four-game winning streak and back at .500, looking hungry to make a final push before the trade deadline to influence the front office.

They have since dropped the first two games against the Astros. Manager Torey Lovullo said he felt like his team let Monday’s 6-3 loss slip away. That was certainly the case on Tuesday.

Eduardo Rodriguez vs. Framber Valdez

Rodriguez dueled Astros southpaw Framber Valdez, who entered Tuesday with a 2.75 ERA. The Astros are now 13-0 in his last 13 starts.

The veteran hurlers each started the game with four shutout innings, a different look than Arizona’s last four games when scoring came quickly.

The Diamondbacks finally scratched a run across in the fifth inning after a lead-off hustle double from Randal Grichuk and a bunt single by Geraldo Perdomo was later followed by an RBI ground out from Blaze Alexander.

Grichuk went 3-for-3 off Valdez with a pair of doubles, while Perdomo recorded multiple hits for the third time in five games.

Rodriguez, meanwhile, stranded five runners between the fourth and fifth innings, as he danced around six hits and three walks during his outing. Four of the six hits were infield singles, two of which came on bunts. He did not allow an extra-base hit, avoiding the back-breaking gapper or home run. Monday was his longest scoreless appearance with the club.

The Diamondbacks’ rotation has delivered four quality starts in five games since the All-Star break.

Wasted opportunity

Valdez completed seven innings with only the one earned run, as the D-backs squandered their key opportunity to add with runners on first and second and nobody out in the seventh.

Alexander bunted the runners over ahead of light-hitting catcher Jose Herrera, whom the D-backs elected to keep in the game. Herrera hit a bouncer to third base, and pinch runner Alek Thomas broke, getting thrown out at home. Ketel Marte struck out to end the threat.

The Diamondbacks went 1-for-7 with runners in scoring position to strand 11 on Monday.

They left eight runners stranded on Tuesday.

Up next for the Diamondbacks

The Diamondbacks will play their final home game before the trade deadline on Wednesday afternoon to wrap up this series. They will then begin a nine-game road trip in Pittsburgh, Detroit and Sacramento.

Brandon Pfaadt gets the ball on Wednesday for the Diamondbacks after blanking the St. Louis Cardinals through seven innings in his last start.

First pitch is at 12:40 p.m. MST.