For the second consecutive game, the Marlins led the Pirates early by more than one run.
But once again, they couldn’t make the lead hold up for a victory.
With a combined three runs in the fourth and fifth innings, the Pirates broke up what began as a solid start for Tom Koehler, erasing an early two-run deficit and beating the Marlins 4-2 in front of 28,173 at PNC Park.
The game began 36 minutes late because of inclement weather.
Sign Up and Save
Get six months of free digital access to the Miami Herald
It didn’t appear to affect Koehler at first as he struck out six of eight batters in the first three innings.
But after giving up a solo home run to right center to Andrew McCutchen in the fourth, Koehler gave up two runs in the fifth as the Pirates benefited from his erratic inning that included hitting a batter and two wild pitches.
“We had a couple of wild pitches and a couple of balls got away from Tom and Rob there,” Marlins manager Mike Redmond said. “You can’t give these guys extra bases and give them runs like that.
“You can’t do that on the road against good teams.”
Koehler was removed after a 90-pitch outing in which he allowed four hits and a walk as the Marlins (43-69) never led again and lost their fourth in a row.
Koehler (3-7, 4.40 ERA) also gave up only his second home run in his past seven starts when McCutchen turned on a 3-1 fastball and blasted it for his 16th of the season. It was his first home run allowed since July 22 at Colorado.
It was the second game in a row Marlins pitching surrendered a home run after not allowing one for 12 consecutive games.
Koehler had won his previous start against Mets ace Matt Harvey on Aug. 1, pitching six shutout innings despite some inconsistency that led to five walks.
That wasn’t the case Wednesday.
“[Koehler] looked good early, but I think he got a little too excited and up in the zone,” Redmond said. “He tried too much to overpower guys in the zone.
“It’s a learning experience for him to control his emotions in big situations.”
Josh Harrison stole second with one out in the fifth with a no throw from catcher Rob Brantly. Koehler then hit Jordy Mercer to put two runners on. With his counterpart Charlie Morton squaring to bunt, Brantly couldn’t handle a pitch in the dirt that bounced far enough away to allow both runners to advance into scoring position.
Morton changed his approach to swing away and lined a single to right that tied the score.
Koehler’s second wild pitch nearly hit Pirates leadoff hitter Starling Marte square in the face as he was attempting to bunt. Marte managed to react quickly enough to get out of the way, which was not good for the Marlins as Mercer scored the go-ahead run easily.
For the fourth consecutive game and seventh in their past eight, the Marlins failed to score more than three runs.
Their last victory came on the strength of a 10-0 outburst Aug. 2 against the Indians. The Marlins haven’t been able to muster any consistent offense since.
Giancarlo Stanton, who entered the series mired in a 1-for-22 slump, got a hit in his second consecutive game to start the fourth inning when the Marlins took their 2-0 lead.
Logan Morrison, who has had a torrid August at the plate so far, followed Stanton by hitting a double to the right-center field gap.
It would end up being the only extra-base hit of the game for the Marlins.
Donovan Solano drove home Stanton on the next at-bat with a single over second base to give the Marlins their first run.
But the Marlins couldn’t keep the potential big inning going as Adeiny Hechavarria grounded into a double play that scored a run but effectively squashed the rally.
Justin Ruggiano was unable to snap his club-record hitless streak. He flew out in a pinch-hit appearance and is 0 for his past 35.