PITTSBURGH — The Cardinals wasted more than opportunity after opportunity after opportunity against one of the top young pitchers in the majors.
They also squandered a gem from their own young starter.
Andre Pallante pitched seven sterling scoreless innings to buy the Cardinals lineup plenty of time to conjure a run, any run, and despite rolling opportunities against Pittsburgh and its flame-throwing phenom Paul Skenes, they came up empty. A sacrifice fly in the bottom of the eighth inning decided the Pirates’ 1-0 victory Tuesday night at PNC Park.
The Cardinals’ four losses in the past week have all been shutouts.
A leadoff walk to Jose Fermin in the ninth eventually brought him sliding toward home as the potential tying run on a ground ball to first. A throw beat him to the plate, and so did the tag, home-plate umpire Charlie Ramos decided. The Cardinals challenged the out call on the field, but it stood, meaning there was not conclusive evidence to overturn it. David Bednar struck out Brendan Donovan to end the game and secure his 12th save of the season and the Bucs’ season-best fifth consecutive win.
People are also reading…
Bednar went the entire month of June without allowing a run and has made 15 consecutive appearances since allowing run.
The Cardinals finished 1 for 13 with runners in scoring position.
In his finest start of the season and one of his best of his career as a starter, Pallante whipsawed through the Pirates lineup with a mix of fastballs and his tight, cutting slider. Pallante outdueled Skenes by not only outlasting him (seven innings to five) and outpacing him (one hit allowed to five) but also avoiding much trouble to begin with.
Pallante got 13 ground-ball outs.
The only time the Pirates got an at-bat with a runner in scoring position against Pallante was the first inning, and he nixed that chance with a ground ball to shortstop. The moment Pallante exited after seven innings of one-hit ball was the same moment Pittsburgh stirred.
Ke’Bryan Hayes greeted reliever Phil Maton with a leadoff single in the eighth, and he reached third on Adam Frazier’s pinch-hit, rulebook double. The Pirates’ second plate appearance of the game with a runner in scoring position came when Henry Davis hit a sacrifice fly to center that brought home the game’s first run. That was also the first earned run against Maton since May 5 and the first he’d allowed the Pirates since 2021.
At that point in the game, the Cardinals were 1 for 11 with runners in scoring position.
Cards confound Skenes
The riddle the Cardinals present to Pirates ascending ace Skenes continued as they peppered him with base runners and long at-bats to keep him winless against them in six starts. He’s 0-4 overall and pocketed a no-decision Tuesday, and the Cardinals are the last of the National League Central teams he’s yet to get a win against. The No. 1 overall pick in 2023 and All-Star Game starter a year ago, Skenes has allowed 54 earned runs in his career in 244 innings.
Ten of them have been scored by the Cardinals.
Yet they couldn’t muster any despite ample opportunities in five innings Tuesday. They got a runner on base in four of Skenes’ five innings and a runner to or past third base in three of them. They remained scoreless, settling for bloating the right-hander’s pitch count to 88 in — great Scott — only five innings. If they scored at all it would be against the Bucs bullpen.
Contreras hit again, leaves game
A pitch similar to one that drew his ire a week ago at home against the Cubs, veered up and in on Willson Contreras and again struck the Cardinals first baseman on his left hand. Contreras explained after a fastball crunched his knuckles last week and that his angry response was spurred by his frustration with two fractures last season and several bruising pitches already this season.
Skenes hit him with a 99 mph fastball to lead off the fourth.
Contreras has been hit a league-leading 14 times, already more than the previous two seasons and the most since he was struck by 24 pitches as a Cub in 2022.
Contreras had X-rays taken during the game, and a Cardinals official said that they did not reveal any fracture in the left hand. He was diagnosed with a bruise and considered day to day, the club said during Tuesday night’s game.
The timing of Contreras’ departure from the game may have played a role in the result of the Cardinals’ best chance to score on Skenes. The Cardinals’ athletic trainer and manager Oliver Marmol spent a lot of time with Contreras at first base after he was struck. But he remained in the game to run the bases. That proved noteworthy for how the top of the fourth inning ended and how Contreras was replaced for the bottom of the fourth ...
Pham makes the play
Contreras’ leadoff bruise was followed by Nolan Gorman’s single, and for the fourth time in four innings against Skenes, the Cardinals had a scoring opportunity.
The inning threatened to come undone when Fermin popped up a bunt back to Skenes for the inning’s first out without advancing the runners. A fly-out kept the runners static and gave Skenes a chance to escape another inning.
At that point in the game, the Bucs had no hits.
They were 0 for 9.
But the Cardinals had yet to produce a run despite their hits because they were 0 for 6 with runners in scoring position.
Catcher Pedro Pages changed that with a single to left. Contreras was still in the game — not yet replaced by the speedy Garrett Hampson — and racing from second. With runs at a premium always against Skenes, third-base coach Ron “Pop” Warner sent Contreras and challenge left fielder and former Cardinal Tommy Pham. The outfielders throw was on a line and reached home a few strides before Contreras. Enough strides to at least bring doubt to the idea that Hampson may have scored.
The out at home ended the inning.
The Cardinals had previously stalled with a runner stranded on third twice.
A study in contrasts
While Pallante’s innings were expedient and Skenes’ innings were laborious, they each arrived at the same place — with a zero hanging at the end of it.
No inning offered a greater contrast that the third.
In the top of the inning, Cardinals’ No. 9 hitter Victor Scott II outran a grounder to first base for a leadoff single. He was the third Cardinal of the game to reach base against Skenes, and he would soon be on third with no outs. Donovan’s bolt to right field put him on base, and before Skenes could get an out, the Cardinals had runners at the corners and the middle of their order coming to the plate. It took fortune and pitches, but Skenes shook free.
The right-hander struck out Masyn Winn on a pitch he calls a “splinker” — a turbo-mix between a sinker and a split-finger fastball that arrives fast and bites hard — to get a grip on the inning. Skenes almost misplaced that when Alec Burleson lifted a ball that seemed headed for left field.
At least, that’s how the Cardinals’ base runners broke.
Burleson’s liner was caught by shortstop Isiah Kiner-Falefa and quickly turned into a double play with a throw to first to double-off Donovan and end the inning.
In the bottom of the inning, Pallante got two ground-outs before he threw his fifth pitch, and then he used his next five pitches to strike out leadoff hitter Spencer Horwitz. It took Pallante nine pitches total to retire the Bucs in order in the bottom of the third. That Skenes back to work with the same result — a 0-0 tie — but having faced four batters and about to need 75 pitches to get through four innings and 12 outs.
It caught up to him, even if the Cardinals did not.(tncms-asset)3546fcbb-2e4f-4f9b-b5e2-47528b47b89b[0](/tncms-asset)(tncms-asset)e0527360-301b-4d6a-9418-c749f23e8dd8[1](/tncms-asset)(tncms-asset)3c32441f-1035-4433-9aaa-eceaae945aaf[2](/tncms-asset)(tncms-asset)bb01ae3a-1eeb-5a4a-891a-06013fcca724[3](/tncms-asset)
Photos: Cardinals drop second straight game at Pirates

Pittsburgh Pirates pitcher Paul Skenes catches a bunt popup hit by ӣƵ Cardinals' Jose Fermin during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Paul Skenes reacts after watching catcher Henry Davis tag out ӣƵ Cardinals' Willson Contreras at home during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates catcher Henry Davis, left, tags out ӣƵ Cardinals' Willson Contreras, right, at home during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals' Willson Contreras reacts after getting hit by a pitch by Pittsburgh Pirates pitcher Paul Skenes during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals' Willson Contreras reacts after getting hit by a pitch by Pittsburgh Pirates pitcher Paul Skenes during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals' Willson Contreras, right, is examined by a team trainer after getting hit by a pitch by Pittsburgh Pirates pitcher Paul Skenes during the fourth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Paul Skenes delivers during the second inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Paul Skenes delivers during the first inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Paul Skenes delivers during the first inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals pitcher Andre Pallante delivers during the first inning of a baseball game against the Pittsburgh Pirates, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals pitcher Andre Pallante delivers during the first inning of a baseball game against the Pittsburgh Pirates, Tuesday, July 1, 2025, in Pittsburgh.

Cardinals third baseman Nolan Gorman fields a ball hit by the Pirates’ Isiah Kiner-Falefa before throwing him out at first base during the sixth inning of a game Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Caleb Ferguson delivers during the sixth inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher Isaac Mattson delivers during the eighth inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates catcher Henry Davis, right, tags out ӣƵ Cardinals' Jose Fermin, left, at home during the ninth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals' Jose Fermin is upended after getting tagged out at home during the ninth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher David Bednar reacts after getting the final out of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher David Bednar reacts after getting the final out of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates catcher Henry Davis, right, tags out ӣƵ Cardinals' Jose Fermin, left, at home during the ninth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

ӣƵ Cardinals' Jose Fermin is upended after getting tagged out at home during the ninth inning of a baseball game, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates pitcher David Bednar, right, celebrates with catcher Henry Davis, left, after getting the final out of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates' Henry Davis hits a sacrifice fly during the eighth inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.

Pittsburgh Pirates' Ke'Bryan Hayes, left, is greeted by manager Don Kelly, right, after scoring during the eighth inning of a baseball game against the ӣƵ Cardinals, Tuesday, July 1, 2025, in Pittsburgh.