Brewers blow out Diamondbacks again in 13-1 victory

Apr 30, 2026; Milwaukee, Wisconsin, USA; Milwaukee Brewers catcher William Contreras (24) celebrates with second baseman Brice Turang (2) after hitting a two run home run in the third inning against the Arizona Diamondbacks at American Family Field. Mandatory Credit: Benny Sieu-Imagn Images | Benny Sieu-Imagn Images

Box Score

For the second time in three games, the Brewers outscored the Arizona Diamondbacks by double digits. Milwaukee got to Michael Soroka early and often, and despite Brandon Woodruff’s exit in the second inning, the bullpen — led by Shane Drohan — held Arizona to just one run over 7 2/3 innings. Milwaukee is now two games over .500 as they head to the nation’s capital for a series against the Washington Nationals.

Woodruff walked D-backs leadoff man Geraldo Perdomo to start the game, but retired the next three batters to get back to the dugout unscathed.

At first glance, that seems like a fairly unremarkable first inning for the veteran right-hander, but it was anything but. Woodruff threw 15 pitches in the first inning, but none of them touched 87 mph. Not only was the lack of velocity concerning, but — as described by our own Dave Gasper — he “looked uncomfortable delivering the baseball. His smooth, repeatable, athletic delivery looked rigid, unathletic, and unusual.”

Woodruff came back out for the second inning, but clearly didn’t look right and was pulled after allowing a one-out single to Lourdes Gurriel Jr. Grant Anderson came in to finish the inning with strikeouts of Nolan Arenado and Alek Thomas.

With Woodruff out of the game early, this one effectively became a bullpen game for Milwaukee. Thankfully, the Brewers’ offense was able to give their pitching staff some quick run support with a three-spot in the bottom of the first off Soroka. With one out, William Contreras lined a double down the left field line. Garrett Mitchell, who had led off with a walk, scored from first to give the Crew an early lead. Soroka then walked Jake Bauers to put runners on first and second.

Tyler Black flew out for the second out, but Luis Rengifo kept the inning alive by lacing a double into the gap in right-center field. Contreras scored, Bauers scored, and just like that, the Brewers were up three runs before the end of the first inning.

Milwaukee added three more runs in the bottom of the third. After Brice Turang led off the inning with a single, Contreras delivered again, hitting a moonshot over the center field fence for a two-run home run. Soroka couldn’t stop the bleeding there, allowing back-to-back singles to Bauers and Black. Rengifo grounded out for the first out of the inning, but Bauers scored from third to put the Brewers up six runs.

Arizona finally got on the board in the fourth off Shane Drohan, who had come in to start the third inning. Corbin Carroll led off with a double to give the D-backs their first runner in scoring position. Drohan struck out cleanup hitter Adrian Del Castillo, but allowed consecutive singles to Idelmaro Vargas and Gurriel. Gurriel’s single scored Carroll from third to put Arizona on the board.

After that, Drohan settled in, escaping the inning by retiring Arenado and Thomas. With Woodruff exiting early, he gave the Brewers exactly what they needed — length and stability out of the bullpen. He turned in four strong innings, allowing five hits but just one earned run.

After giving up three runs in each of his first two appearances with Milwaukee, Drohan has responded by allowing just one run over his last five innings. He’s starting to look like a more dependable option — most likely as a long reliever, but with the ability to step into the rotation if needed.

Meanwhile, the Brewers’ offense kept the pressure on, adding two more runs with consecutive singles from Hamilton, Mitchell, Turang, and Contreras. That last hit from Contreras ended Soroka’s day after eight runs on 10 hits. The Crew also tacked on three more runs in the sixth — thanks to a Bauers groundout and a two-run double from Black — and another in the seventh on a Sal Frelick homer, his third of the year and second of the series.

Frelick’s home run brought the score to 12-1, but Milwaukee wasn’t done there. They scored their 13th and final run of the game off of D-backs catcher James McCann, who walked Black with the bases loaded in the bottom of the eighth. Jake Woodford struck out two on the way to retiring the side in the ninth, bringing the game to its final score of Milwaukee 13, Arizona 1.

Despite the uncertainty surrounding Woodruff’s status, the rest of this game was incredibly encouraging. The bullpen shut down a dangerous Diamondbacks lineup, and every starter besides Greg Jones recorded at least one hit — including William Contreras, who went 4-for-4 with four RBIs. Hopefully, the Brewers can carry their offensive momentum into their upcoming series against a Nationals team that swept them earlier this year.

Tomorrow’s series opener pits No. 1 starter Jacob Misiorowski against right-hander Jake Irvin. First pitch is set for 5:45 p.m. CT.

Mets' Luke Weaver: 'Pursuit of perfection is just an ultimate pressurized failure mindset'

Thursday afternoon’s game at Citi Field between the Mets and the Washington Nationals was a microcosm of what’s been a disappointing 2026 season for the home team. After falling behind 3-0, the Mets tied the game in the third on a three-run blast from MJ Melendez and then took the lead on a Mark Vientos RBI double in the sixth. 

But things fell apart in the eighth inning, when Luke Weaver allowed a leadoff single and then later the go-ahead two-run home run to CJ Abrams, as Washington won the game 5-4 and took two out of three in the series. 

On one pitch, a 2-1 changeup from Weaver that caught too much of the plate, the Mets went from being back on track as winners of the series, to falling to 10-21, the worst record in the majors. 

Afterwards, Weaver was outspoken about the pressure to perform that he and all of his teammates are feeling on a daily basis.

“I think at the end of the day, this pursuit of perfection is just an ultimate pressurized failure mindset,” Weaver said. “I just think it just becomes everybody wants to be the hero because we care and we want to win really, really bad. And I just don’t think success lives in that realm. It truly doesn’t, and I think the freedom of which we play day to day is kind of being suffocated a little bit.

“I want to just do my job, it’s that simple. There are moments that feel really close, and then there’s just one mistake that magnifies our situation. So, of course I sit there and feel the weight of the world and feel like I let the team down, but at the end of the day I do feel like I’m in a good spot. 

“We sit there and we just tell you guys ‘It will come. This is the game. This is the law of averages’ and all these things, but at the end of the day, those words just don’t hold the same weight when you go day after day. I think the encouragement and the motivation to pursue just being the best person you can be and the best baseball player you can be is the only answer. Until we prove that, I understand the grievances from the outsiders."

Weaver is far from the only Met who has had his struggles this season, but he was acquired this offseason to be in high-leverage spots, exactly like the one he found himself in on Thursday afternoon. 

With his performance on Thursday, Weaver now has a 6.00 ERA on the season, allowing eight earned runs in 12.0 innings.

“Typically, you don’t see an entire kind of collective group at the same time not playing their best brand of baseball. It feels individualized. It feels like a moment like today where everybody played well and we’re playing well as a group, and today I kind of let the team down. It just kind of feels like there’s a little bit of a culture that has adapted to it, unintentionally, and it’s just kind of how winning and losing goes. 

“When you win, you feel on top of the world. When you’re losing, everyone wants to talk about the failure of the outcomes. The magnification just becomes immense. Sleep is lost, the mind wanders, and you just kind of get into a fixation that you really don’t need to be in. I think the answers are kind of in those words. It’s simplifying the process and maybe doing less. Maybe it’s less reps and more about enjoying why you do this for a living and trying to just find your inner kid and enjoy why you play the game and not trying to do it for other people.”

With 10 wins in their first 31 games, the Mets find themselves in last place in the NL East, certainly not where anyone on the team or around the team thought they’d be as the calendar flips to May. 

According to Weaver, the Mets’ performance on the field hasn’t matched their preparation off of it, and perhaps taking a step back to refocus is something the team must do to right the ship.

“I’ve been a part of great teams and part of teams that weren’t up to par. I look at this team, and if you took our record off and just looked at the internal things that you guys can’t see, the conversations, just the enjoyment on a day-to-day basis, I wouldn’t believe you if you told me what our record was,” Weaver said. “I think that is a testament to the people we have in here, the mindset that we bring on a day-to-day basis. 

“You’ve got to reframe the way that you think. Make it a priority to be like ‘This old habit is going to die today’ and this new, kind of rejuvenated mindset is something that I’m going to have to attack it and say ‘This is how I want to play baseball.’”

Brewers ace Brandon Woodruff exits start early in latest injury concern: ‘Felt kind of dead’

An image collage containing 2 images, Image 1 shows Milwaukee Brewers pitcher Brandon Woodruff #53 on the mound, Image 2 shows Milwaukee Brewers starting pitcher Brandon Woodruff walking off the mound with an injury, accompanied by a trainer

Milwaukee Brewers right-handed pitcher Brandon Woodruff can’t shake the injury bug.

The two-time All-Star left his Thursday afternoon start against the Diamondbacks in the second inning after a concerning drop in his fastball velocity.

Woodruff, whose heater has averaged 92.5 mph this season, per Baseball Savant, did not throw a fastball above 86.9 mph during his 21-pitch outing Thursday.

Milwaukee Brewers starting pitcher Brandon Woodruff walks off the mound with an injury in the second inning against the Arizona Diamondbacks. Benny Sieu-Imagn Images

After he delivered an 83.8 mph cutter for a ball to Arizona batter Nolan Arenado in the top of the second inning, Brewers manager Pat Murphy and the team’s training staff immediately came out of the dugout to check on their starter.

Following a brief visit, Woodruff handed the ball over to Murphy and walked off the mound with trainer Brad Epstein.

“He wasn’t himself,” Murphy later said to Brewers.TV reporter Sophia Minnaert during a mid-game interview. “He felt kind of dead. He said he didn’t feel any pain, just nothing was coming out. We’ve seen a little bit of this, but never at this level, where he can’t get the ball over 85 mph.

“He’s so important to us. We’re not going to risk anything, maybe long-term by having him try to step on it.”

Woodruff was in the midst of a solid 2026, sporting a 2-1 record with a 3.77 ERA and 23 strikeouts across 28.1 innings. Getty Images

Entering play Thursday, Woodruff was in the midst of a solid 2026, sporting a 2-1 record with a 3.77 ERA and 23 strikeouts across 28.1 innings.

Woodruff, who missed most of the past two seasons due to injury, recorded at least five innings in each of his first five starts.

He missed all of 2024 after undergoing right shoulder surgery to repair his anterior capsule and despite returning to the mound last season, managed just 12 starts before going down with a season-ending lat strain.

If Woodruff misses an extended stretch, the Brewers – who traded ace Freddy Peralta and swingman Tobias Myers to the Mets during the offseason – will have to lean on their depth to cover his absence.

Flamethrower Jacob Misiorowski, Chad Patrick, Kyle Harrison and a healthy Woodruff have been solid to begin the season for Milwaukee, which entered play Thursday with a 15-14 record.

“He’s going through this process and hopefully [will] be okay and he’ll work himself into his form,” Murphy added. “Because even with him maybe not throwing his normal 95 he can still get outs and win. As long as he doesn’t risk injury I’ll go with him every time.”

SF Giants waste great start from Logan Webb with blown save in 9th

PHILADELPHIA, PENNSYLVANIA - APRIL 30: Logan Webb #62 of the San Francisco Giants pitches during the third inning against the Philadelphia Phillies in game one of a doubleheader at Citizens Bank Park on April 30, 2026 in Philadelphia, Pennsylvania. (Photo by Isaiah Vazquez/Getty Images) | Getty Images

The 2026 San Francisco Gianta are discovering new ways to lose. In the first game of Wednesday’s doubleheader, it was a blown save and a walk-off infield single.

Ryan Walker (0-1) gave up a game-tying triple to Bryson Stott in the 9th inning and Stott scored on Justin Crawford’s two-out infield single to give the Philadelphia Phillies 3-2 comeback win. The blown save wasted an excellent pitching effort from Logan Webb and some standout defensive plays to drop the Giants to 13-17.

The game began with such promise. With a 9:30 AM local start, earlier than some of your favorite McCovey Chronicles scribes generally wake up, the Giants put together a first-inning rally that made some early risers rub their eyes in disbelief. Two doubles? In a row? One of which only advanced the runner on second base to third?

It was not a dream. Heliot Ramos started off his three-hit afternoon (with a walk!) with a double to center, then Matt Chapman doubled off the wall for an almost-home run. According to @MLBNearHR, an invaluable resource on X.com the everything app, Chapman’s blast would have been a home run in another major league ballpark! Well, one of them at least.

Thinking the ball might be caught, Ramos only advanced to third, but it didn’t matter after Contact King Luis Arraez came through with an RBI groundout to second. Casey Schmidt and his .523 slugging percentage followed with an RBI single and the Giants had a 2-0 lead against 6-foot-6 Phillies ace Cristopher Sanchez.

The Phillies cut the lead in half in the bottom of the inning when Webb left a 3-2 cutter over the middle of the plate and Kyle Schwarber hit it halfway to Scranton for his 350th career home run. That tied two-time Giants All-Star Charles “Chili” Davis on the all-time list.

Davis left the Giants as a free agent primarily because of how much he hated playing in Candlestick Park to which we say: Fair.

That was the lone run allowed by Webb, who went seven innings and gave up seven hits and two walks, while striking out six. It wasn’t the cleanest appearance, but Webb consistently pitched his way out of jams.

In both the 3rd and 5th innings, Webb wisely walked Schwarber with one out, then got Bryce Harper to ground into an inning-ending double play, the second handled by Willy Adames all by himself.

In the fourth, Adolis Garcia singled on a ball he lined off Webb’s inner thigh, then Brandon Marsh followed with an opposite-field double that rolled about 170 feet past a shifted infield to put runners on second and third with no outs.

But Webb got a strikeout, then got a great play by Matt Chapman throwing out Garcia at the plate. After a successful bunt single by Crawford loaded the bases and deeply confused the Giants broadcasters, who weren’t sure why he opted for a two-out bunt with a runner in scoring position and an .085 hitter on deck. Said hitter, catcher Rafael Marchan, grounded out to Rafael Devers on a play that nearly paralyzed the still-new first-sacker with indecision at first.

In the 7th inning, Patrick Bailey, who went 1-for-4, made a great play to throw out Crawford trying to steal for Webb’s penultimate out. Surely Crawford’s speed wouldn’t hurt them later!

While Webb was thwarting the Phillies, the Giants’ bats weren’t doing much damage against Sanchez, who gave up two runs, four hits, and three walks while striking out seven in 6.2 innings. Ramos singled and Chapman walked in the 5th, but Sanchez got Arraez to fly out and battled back from a 3-0 count to retire Schmidt.

After the first inning, Sanchez allowed just one hit and two walks. Twice, Sanchez retired eight hitters in a row. Ramos and Chapman gave him trouble, which is why he was pulled for Orion Kerkering with Ramos coming up with two outs in the 7th.

The Giants threatened again in the 8th when Chapman and Schmidt both singled. Left Tanner Banks relieved Kerkering and struck out Devers and retired Adames. They got two more runners on in the 8th when Ramos and Bailey got hits with two outs, but Chase Shugart struck out Chapman to end the inning and eventually earn his first win of the season.

They had chances to pad their lead, but the Giants are like a California homeowner near an earthquake fault line: It’s way harder than it should be to get insurance.

In the 9th, Garcia got his second infield hit of the game on a ball Arraez knocked down on the far side of second base but couldn’t throw him out. Then defensive positioning hurt the Giants again when Stott pulled a ball down the right field line with Jung Hoo Lee shifted well into center field against the left-handed batter. Lee had to run forever to get the ball and Stott got an easy triple.

Two batters later, the game was over.

Manager Tony Vitello made defensive substitutions for the bottom of the 7th, bringing in Drew Gilbert to play center and moving Lee to right. The move may have been motivated by the left-handed Sanchez exiting the game, though Gilbert had to face a lefty in the 9th anyway.

Vitello may have also been motivated by Encarnacion’s own defense, specifically when he clearly believed there were only two outs when he caught an inning-ending fly ball in the second inning. He received a razzing from his teammates and an adorable thumbs-up from Lee.

The Giants don’t have time to dwell on the loss since they’re making like Ernie Banks and play9ing two. Don’t eat too many hoagies from Wawa or fill up on Tastykakes during the break, fellas!

CJ Abrams’ clutch homer propels the Washington Nationals to a series win over the hapless Mets

NEW YORK, NEW YORK - APRIL 28: CJ Abrams #5 of the Washington Nationals hits a single in the fourth inning against the New York Mets at Citi Field on April 28, 2026 in the Flushing neighborhood of the Queens borough of New York City. (Photo by Elsa/Getty Images) | Getty Images

The Nats won yet another road series with a gutsy 5-4 win against the Mets. It was a glorious win for the Nats and an agonizing loss for the Mets, who are now a shocking 10-21. This game was always going to be decided by a clutch hit, and the Nats were the team that got the big hit when it mattered most.

Going back to the very start of the game, this contest could have been very different if not for an insane defensive play by James Wood. The Nats 6’6 right fielder needed every inch to rob a Juan Soto home run. Wood made another great defensive play later in the game. It really feels like Wood is much more comfortable out in right field.

Perhaps powered by the momentum from that play, the Nats offense went to work in the second inning. After a Jorbit Vivas single, a ground ball hit to the pitcher by Nasim Nunez led to Vivas scoring all the way from first after a comedy of errors by Mets pitcher Freddy Peralta. Jacob Young then delivered later in the inning, driving in Nunez on a base hit.

After the Nats tacked on another run in the third, and now it was up to Miles Mikolas to make the 3-0 lead stick. Ultimately, he was not able to. The Mets put together a two out rally in the third that was punctuated by a three run homer by MJ Melendez on a pitch that was about head high. 

It is tough to blame Mikolas for allowing that homer. A red hot hitter just put a crazy swing on a well executed pitch. In his last few outings, Mikolas has thrown the ball better. He only went four innings today, but he gave the Nats a chance to win.

After that, it was a deadlock for a little while. Both offenses went quiet in the middle innings. That is until the Mets got something going against Mitchell Parker in the 6th. Mark Vientos made the Nats pay for pitching around Juan Soto, driving him in on an rbi double.

Mitchell Parker was far from excellent and did not have his best stuff, but he did well to only allow one run in his three innings of work. That set the stage for the fateful 8th inning. Luis Garcia Jr. led things off with a knock. After Daylen Lile hustled to beat out a double play, it was up to CJ Abrams.

After briefly going cold, the Alien announced he was officially back. He destroyed a Luke Weaver changeup. Abrams knew he got it, pointing into his dugout to fire up his teammates. Citi Field was stunned as Abrams rounded the bases to make it a 5-4 ballgame.

However, the work was still far from finished. The Nats bullpen needed six outs against a Mets team that was desperate to comeback. After a Juan Soto double, Richard Lovelady got two key outs before turning things over to Gus Varland.

It was now up to Varland to get the four biggest outs of the game. He got Tyrone Taylor to end the 8th for the first out. After not adding an insurance run due to some poor base running and situational baseball, it was time for Varland to hold his nerve.

When I talked to Varland a few weeks ago, he talked about how he has been on a journey to find confidence. He felt like his mindset was in the best place it had been in a long time. Varland would need that confident mindset to hold on and get the win.

He got two quick outs, but allowed a double to Francisco Alvarez. With a full count to Ronny Mauricio, the gutsy Varland fired off a perfect slider, which got him the strikeout. Varland pumped his fist as the Nats improved to 15-17 and won yet another road series.

The Nats are now 12-7 on the road, but they need to show that they can carry some of this momentum to Nationals Park, where they are 3-10. This was a fun and satisfying win. Extending Mets fans’ misery gives me great joy. The Nats did that with a nice team win this afternoon.

What should Yankees fans expect, accept, and hope for when Anthony Volpe returns?

NEW YORK, NEW YORK - OCTOBER 07: Anthony Volpe #11 of the New York Yankees runs to the field before the game against the Toronto Blue Jays in game three of the American League Division Series at Yankee Stadium on October 07, 2025 in the Bronx borough of New York City. (Photo by Al Bello/Getty Images) | Getty Images

Anthony Volpe’s return from shoulder surgery will probably be judged in extremes. If he comes back looking like the polished two-way shortstop Yankees fans once imagined, every line drive, diving stop, and stolen base will reignite the belief that a true breakout might finally be here.

If the offensive line remains parked where it has spent too much of the last three seasons, the familiar frustrations around strikeouts, on-base percentage, and whether the bat will ever fully arrive will return quickly. The truth, as usual, likely lives somewhere in the middle.

That is what makes Volpe’s 2026 campaign so fascinating. This is less about whether he can suddenly become the star many once hoped for and more about what a healthy, age-25 Anthony Volpe should realistically look like. For Yankees fans, that means separating three different buckets: what to expect, what to accept, and what to hope for from Volpe.

What to expect: Volpe returns as the Yankees’ shortstop

When the Yankees bring Volpe back up to the big league club, it will not be as a bench player. Barring a setback, he is rehabbing to resume being the club’s everyday shortstop. Fans may debate it, but that is the organization’s plan. Even if he’s not playing, say, seven games in seven days because the Yankees aren’t going full-bore yet so early in the season, Volpe will get the vast majority of time at the six.

Players returning from shoulder surgery often need reps for timing, trust, and everyday rhythm to fully return. Entering play yesterday, Volpe had hit .276/.300/.379 in 30 plate appearances while looking steady, but not anything more than that, in the field. That is perfectly fine. The point of rehab is readiness, not domination.

If the shoulder is healthier, the biggest gains may not show up first in the traditional counting stats like batting average and OPS as much as it will in better contact quality, more line drives, and harder hit balls in play. Too much of Volpe’s offensive profile drifted toward weak popups last season as his line-drive percentage fell six percent below his career normal. A compromised shoulder can do that, especially for a hitter whose game depends on quickness through the zone and the ability to drive the gaps.

If the surgery corrected that issue and rehab strengthened it, the expectation should be a healthier version of the player the Yankees already know: not superstardom, but a player entering his prime years who has already shown double-digit power, speed, and quality defense. Thus, fans should expect Volpe to start and have an extended run to fully earn the spot … with the word “earn” meaning he produces slightly better than his career numbers while playing good defense.

What to accept: Caballero has earned a role and is ready

Volpe’s return should not create panic about José Caballero. It should create excitement about roster depth. I am fully on the “start Caballero every day” train, but I also accept that he is a role player with a clearly defined place on this roster. That role is exactly what he has been doing, now with a little whipped cream and a cherry on top at the plate thus far, plus the added value of defensive versatility.

Since Volpe began his rehab assignment, Caballero has been one of the hottest Yankees on the roster. From April 14th onward, he’s hit .347/.396/.510 with two doubles, two homers, six stolen bases, and a .906 OPS, while injecting energy into nearly every game. Aaron Boone acknowledged that reality this week, saying Caballero has “earned a lot of opportunities” and has been “right in the middle of us winning a lot of games.”

That matters. Caballero has provided exactly what winning teams crave from role players: versatility, speed, defensive flexibility, and enough offense to force his way into the lineup.

However, it is worth remembering Caballero got off to a slow start. From opening night against the Giants until April 14th, he was actually hitting a disappointing .179/.220/.286 with a 28.8-percent strikeout rate in 59 at-bats. My colleague Andrés Chávez further broke down Caballero’s contributions in a piece worth reading.

Volpe returning does not mean Caballero disappears. It means Caballero becomes a true utility weapon who can move between shortstop, second base, and third base, even having the ability to man the outfield if a need arises. Amed Rosario should, and will, remain part of that rotation as well.

The Yankees will give Volpe runway to reclaim his everyday role. That is reasonable given what the organization has invested in and communicated about him over the last several years. At the same time, the team now has a much clearer picture of what it has in Caballero and Rosario, and that depth already matters and should continue to matter over the course of the season.

Boone’s comments on Wednesday reinforce that balance. The Yankees still view Volpe as their starting shortstop when healthy, but they have also been clear that Caballero is more than just a placeholder, praising his ability to impact the game in multiple ways and expressing confidence in him holding things down in the meantime.

Fans should resist turning this into a one-week referendum. If Volpe struggles after returning, patience is warranted, even if criticism is fair. If he struggles for a month while Caballero continues producing, then the conversation certainly changes — and that’s to say nothing of top prospect George Lombard Jr., who will likely have his own adjustment period but was just promoted to Triple-A. We have all seen that Caballero can play an effective shortstop and, at least for the half a month of the season, is what we have all hoped Volpe would become at this point of his career offensively.

What to hope for: The Dansby Path

For much of Volpe’s career, he has lived inside comparisons that were never fair to begin with. Because he is a homegrown, righty-hitting shortstop in pinstripes with leadership traits and polished media instincts, the Derek Jeter parallels arrived before his own game ever had a chance to develop.

I am sure that like all of us in a certain generation, Volpe dreamt of being Jeter or as close as possible, and now as fans we would love to see Jeter 2.0. However, the healthier and more realistic hope is not Jeter, a no-doubt Hall of Famer and an outlier. It is Dansby Swanson.

Although a few years older when he was drafted out of Vanderbilt in 2015, Swanson stormed to the majors with star-level pedigree and quickly became a lightning rod for debates about strikeouts, offensive inconsistency, and whether the bat would ever fully match the reputation. His age-24 season with Atlanta in 2018 was affected by injury, and he posted a .238/.304/.395 line.

Then came the rebound. Following offseason surgery and a clean bill of health, Swanson returned in 2019 and slashed .251/.325/.422 while pairing that 91 wRC+ offense with strong defense. He stopped feeling frustrating and started feeling dependable. Over the next four years, Swanson hit a combined .259/.325/.441 with a 108 wRC+ and 16.8 fWAR for the Braves and Cubs, becoming a two-time All-Star and Gold Glove winner.

The similarities between the two are not just narrative, either. Among qualified shortstops in 2024, Volpe ranked 16th in batting average while Swanson ranked 17th. In OBP, they sat 17th and 14th, in slugging 17th and 15th, and in OPS 17th and 15th.

That is not just stylistic similarity. That is the same offensive neighborhood. The same held true again in 2025. Volpe ranked 24th among shortstops in batting average to Swanson’s 20th, 24th in OBP to 21st, 16th in slugging to 14th, and 21st in OPS to 17th.

Even in what felt like a disappointing season, Volpe remained within just a few slots of one of the league’s most accepted veteran shortstop standards, albeit at a dramatically different price point and with Swanson’s bat not quite as electric as his 2020–23 peak. And honestly, that contrast is part of the point. It is easy to live with this profile on a rookie deal if you are the front office. It becomes a much different conversation once a salary climbs north of $20 million annually.

If Volpe lands in the “2018 Swanson” zone over roughly 100 games, something around .238/.304/.395 with mid-teens power and steals, Yankees fans should probably walk away happy. The public projection systems are already pointing almost exactly there. ZiPS projects Volpe for 103 games with a .230/.292/.397/.689 line, 13 home runs, and 16 steals. Steamer is nearly identical at 102 games with a .232/.297/.399/.696 line, 13 home runs, and 16 steals.

Both systems also land on 1.9 WAR, which is exactly the kind of quietly valuable full-season pace contenders take from the bottom of the lineup bats. If the healthy shoulder restores some of the line-drive contact that disappeared last year, there is a realistic path to something even closer to Swanson’s 2019 jump. The realistic hope should be that Volpe lands somewhere above 2018 Swanson, while understanding that the 2019 version likely represents the true ceiling for 2026 at this point.

That is exactly why the Swanson comp works so well as the hopeful path. Swanson has built a long-term career as a 2–4 WAR shortstop, which is exactly the range Volpe is trending toward. That is the hope for Volpe. It’s not that he suddenly becomes an MVP candidate, but that his age-25 season becomes his version of Swanson’s settling point — a player who moves from polarizing to reliable entering their prime seasons. More directly, a shortstop who quietly helps a team win every single day and shows some of the potential that made him an early draft pick has developed into skills and talent.

The bigger picture

Volpe does not need to be Derek Jeter to matter. He does not need to become a superstar to justify patience. He does not need to settle a fan debate the moment he is activated. However, he may need the last bit of grace fans have left for him as he works his way back into the flow of an MLB season. The better question is simple: What does this Yankees team actually need from Volpe?

They need him to be an above-average shortstop whose offense trends upward from last season and his career norms, and whose presence gives the Yankees more ways to win. If he can make a Swanson-like jump while Caballero remains a versatile contributor, the Yankees will have something more valuable than nostalgia or prospect dreams. They will have options, and good teams win with options.

If Volpe struggles, the Yankees appear to have an in-house option ready for the moment. However, there is also a very real possibility that they have two similar and productive players. Neither projects as a star, but both could become valuable contributors for a winning roster this season and beyond. If the Caballero momentum keeps building, Yankees fans will make their voices heard. The front office is already showing they are not wasting time this season after they designated OF Randal Grichuk for assignment after Jasson Domínguez’s hot start in Triple-A, and deciding to call up top prospect Elmer Rodríguez after Luis Gil struggled.

Until then, it is worth hoping for improvement while expecting the numbers to not look great for Volpe right out of the gate. However, he deserves and will receive at least the same runway that was just granted to Caballero to start the season.

Nationals 5, Mets 4 – The Mets have lost 17 of their last 20 games, fall in series finale to the Nationals

Apr 30, 2026; New York City, New York, USA; New York Mets manager Carlos Mendoza (64) watches from the dugout during the third inning against the Washington Nationals at Citi Field. Mandatory Credit: Brad Penner-Imagn Images | Brad Penner-Imagn Images

The headline says it all: the Mets lost again today at Citi Field, losing 5-4 to the Nationals, and have now lost 17 of their last 20 games. Something has to change, and quickly.

Freddy Peralta looked sharp early, despite walking James Wood to start the game. Peralta struck out the side after allowing the free pass. In the top of the second, Peralta continued to look sharp pitching, but his fielding bit him.

Jorbit Vivas singled with one out. Nasim Nuñez hit a ball to the right of the pitcher’s mound, and Peralta had to rush, throwing an errant throw to Mark Vientos at first, who was not able to handle the throw. Vivas was already at second by the time the ball got away from Vientos, and he not only took third but also came home and scored, while Nuñez got all the way to third. Jacob Young would single Nuñez home, putting the Nats up 2-0.

Peralta wouldn’t be out of the weeds just yet, as in the third Luis Garcia Jr. doubled to lead off the inning. CJ Abrams singled him home one batter latter to put the Mets down by three.

The Mets were struggling to make anything happen against former Cardinal Miles Mikolas, who is having an absolutely atrocious season. In the bottom of the first, Juan Soto hit what looked to be a solo home run to right field, but Wood, calm and measured, jumped and nestled it into his glove. But aside from that and an MJ Melendez single, the Mets weren’t putting anything really on the ball.

That changed in the bottom of the third when, with two outs, Bo Bichette walked and Soto singled to put two on. Melendez then turned on a ball and tied the game with one swing.

With the game now tied, Peralta settled in, not allowing a baserunner in the fourth or fifth inning. In the sixth, Peralta walked José Tena and Vivas back to back. But after a mound visit, Peralta emptied the tank, throwing his hardest pitches of the game and getting Nuñez to pop out to end the frame.

In the bottom of the sixth, the Mets played some small ball, and it paid off. Soto walked to lead off the inning, and was pushed to second on a sacrifice bunt by Melendez. Mark Vientos doubled and scored Soto to put the Mets up 4-3.

Brooks Raley pitched a perfect top half of the seventh inning, and the Mets stranded Carson Benge on second in the bottom half. Luke Weaver would get the eighth, and things did not go very well.

Garcia singled to start the frame, and Daylen Lile hit into what could’ve been a double play ball, but Ronny Mauricio took too much time on a throw to first, and Lile was safe. Abrams was up next, and he deposited a changeup into the bullpen to put the Nationals up 5-4.

Old friend Richard “Dicky” Lovelady pitched the eighth for the Nats. Juan Soto greeted him with a double off the centerfield wall that just missed being a solo home run. Pinch hitter Austin Slater hit a weak grounder to short, not advancing the runner for the first out. Vientos hit a sharp liner right into Nuñez’s glove for the second out of the inning. Gus Varland came in to face Tyrone Taylor and, three pitches later, Taylor hit a weak fly out to left to end the frame.

Devin Williams pitched the ninth, and was greeted by a single, a stolen base, and a sacrifice fly, putting Nuñez on third with just one out. A hard two-hopper by Young to short was fired back to Luis Torrens at home to get Nuñez. Young then tried to steal second, but was thrown out by Torrens, keeping it a one-run game going into the ninth.

The Mets got a two-out baserunner when pinch-hitting Francisco Alvarez pulled a double down the left-field line. Mauricio represented the winning run at the plate, and he struck out on a breaking pitch (shocker) to lose the game and the series.

The Mets travel to Orange County, California for three with the Angels. Christian Scott takes the ball Walbert Urena.

SB Nation GameThreads

Amazin’ Avenue
Federal Baseball

Box scores

MLB.com
ESPN

Win Probability Added

Mets/Nationals WPA Graph for 4/30/26

What’s WPA?

Big Mets winner: MJ Melendez, +29.0% WPA
Big Mets loser: Luke Weaver, -46.0% WPA
Mets pitchers: -32.0% WPA
Mets hitters: -18.0% WPA
Teh aw3s0mest play: MJ Melendez’s home run, +29.6% WPA
Teh sux0rest play: CJ Abrams’s home run, -48.4% WPA

Cardiac Crawford: Phillies 3, Giants 2

Apr 30, 2026; Philadelphia, Pennsylvania, USA; Philadelphia Phillies center fielder Justin Crawford (2) celebrates with teammates after hitting a walk off RBI single during the ninth inning against the San Francisco Giants at Citizens Bank Park. Mandatory Credit: Bill Streicher-Imagn Images | Bill Streicher-Imagn Images

Pitching matchups are fun when they are marquee matchups. Logan Webb against Cristopher Sanchez is something one might consider marquee. It was that way for a while, but a wild ending propelled the Phillies to a victory, one that gave them their first series win since Easter.

The Giants opened the scoring by getting to Sanchez early. Heliot Ramos doubled on the first pitch of the game, then scored when Luis Arraez grounded out, giving the Giants a lead. Matt Chapman, who had doubled after Ramos, scored when Casey Schmitt singled him home and the lead was 2-0. In the bottom of the first, Kyle Schwarber responded by hitting a titanic shot off of starter Logan Webb, making it 2-1.

From there, the pitchers settled in and dominated the game. Webb looked excellent, setting down the Phillies with relative ease while Sanchez also traded zeroes on the scoreboard. The biggest threat on offense was in the fourth inning. Adolis Garcia and Brandon Marsh singled and doubled, respectively, to open the frame with no one out.

Then Bryson Stott struck out in an ugly, ugly at bat with the infield back, conceding a run.

Then Edmundo Sosa grounded out with the infield in, making Garcia a sacrificial lamb at home.

Then Justin Crawford bunted.

The Phillies didn’t score.

Things looked bleak as they had wasted their best chance then and weren’t doing much of anything outside of perfecting the art of grounding into double plays on the first pitch thrown. Yet in the ninth, with Ryan Walker on trying to end it for the Giants, the offense came alive. Garcia singled to open things, followed by a strikeout by Marsh. With that one out and Stott up, it was a reminder that the last time the Phillies fired a manager midseason, Stott hit a walkoff home run in the first weekend of the new manager’s tenure. Things didn’t happen the same this time, but how about an RBI triple?

I’ll allow it.

How about an RBI infield single by Crawford to end the game?

The kid has had his struggles this year, but he also has now two walk off hits for the team. That’s going to play in the major leagues.

As mentioned above, this was the Phillies’ first series win since Easter. They begin the Mattingly regime with two victories and now we can say they’ve won three out of four.

Maybe the start of something?

Hunter Dobbins debuts, Cardinals continue hex over Paul Skenes as St. Louis completes sweep of Pirates

BOSTON, MASSACHUSETTS - JULY 11: Hunter Dobbins #73 of the Boston Red Sox walks off of the field during the second inning of a game against the Tampa Bay Rays at Fenway Park on July 11, 2025 in Boston, Massachusetts. (Photo by Brian Fluharty/Getty Images) | Getty Images

Game Summary

Two first inning homeruns by Wetherholt and Walker spotted the Cardinals to an early 3-0 over Paul Skenes, who would ultimately require 100 pitches to make it through five innings. Burleson and Gorman tacked on RBI hits following Pirate mistakes (error, WP). Another game where the Cardinals 3-4-5 hitters collect RBI. That seems like a good sequence.

On the pitching side, Hunter Dobbins leads out with 3.2 hitless innings, then comes unraveled when a hit breaks the sequence, and subsequently walks five of the next seven batters, allowing the Pirates to cut the lead to 5-3. The bullpen continued the parade of free passes and HBP, further slicing the lead to 5-4.

A late game (8th inning) eruption plates five runs for the Cardinals to make this game a bit of a laugher, as much as can be funny with the recent bullpen history. Pittsburgh plates a late but ultimately useless run in the bottom of the ninth (aided by a throwing error by Walker) to produce the final score of 10-5.

The Cardinals’ bullpen was a mixed bag. Tasked protecting a 4-run lead over 4.2 following innings, they did accomplish that, with assitance of the offense. Bruihl allowed 2 inherited runners to score. Graceffo with a pretty clean 1.1 IP. Romero gave up a solo HR. Stanek with a pretty nice relief inning. Svanson gave up a run in his inning when the game was out of hand. Only 1 walk over 4.2 relief innings, coupled with 4 K. Like I wrote, mixed bag.

It all totalled up to a win and a Cardinals sweep (a mop?) of the Pirates! And they come home with a bullpen that has piled up a lot of innings and walks. The middle of the Cardinal order had 7 RBI today, and the line-up in total had 14 hits to overcome 12 Ks.

Line-up (and roster) machinations

  • An early start today, 1235a Eastern.
  • Pretty standard line-up against LHP, if you view Church a fixture in LF.
  • Ryan Fernandez optioned to Memphis to make room for Dobbins.
  • Tink Hence optioned to Cardinals’ FCL (Florida Complex League) affiliate in Jupiter. He gets some time in the pitching lab down there. @DGoold reports that the option to FCL is in lieu of placement on the MiLB development list. Apparently, because Hence is on the 40-man roster, he can NOT be placed on the MiLB development list. Assigning him to FCL accomplishes the same thing – gets him to Florida to work in the lab, outside game situations.

The Game Details

T1 – Wetherholt leads off with a solo HR. Herrera reaches on throwing error (E5). This was later changed to a hit. Burleson backwards K. Walker with a towering 2-run HR. Gorman K. Winn K. Odd inning. Cards up early 3-0.

B1 – K. F-8. K. Good start for Dobbins.

T2 – Church K. Pages single. Scott II bunts Pages over the second, but JJW pops out to strand the runner.

B2 – P6. L9. 4-3. Dobbins doing well, but some deep counts adding to pitch count.

T3 – Herrera K. Burly awarded a single on a dribbler to short that Griffin threw away, error on the throw, putting Burly on second. Walker lines out. Gorman picks up the RBI. Winn bounces back to Skenes 1-3. Cards now up 4-0.

B3 – Griffin K. Infield single. Davis GIDP to make a quick inning.

T4 – Church P5. Pages K. Scott II K. Skenes strikeouts piling up now.

B4 – 4-3. 4-3. A double breaks the hitless string. A walk extends the inning, as does another, and yet again another walk with the bases loaded. Dobbins becomes unnerved giving up his first hit????? Griffin grounds out to end the threat. Pirates cut the lead to 4-1.

T5 – Wetherholt singles. Trying to figure out all the fuss about the Skenes guy. Herrera backwards K on a failed challenge. WP. Boy, the Pirates make a lot of mistakes. Burleson singles in JJW. Walker K. Gorman out 5-3. Cardinals now up 5-1.

B5 – Leadoff walk. Cruz walks. Dobbins walks have really piled up now. Bruihl in for Dobbins. He starts his day with a pitch clock violation. A deep fly to center gathers an out but advances two runners to scoring position. A double Reynolds plates 2 runs for the Buccos. 4-3 ends the rally. Pirates cut the Cards lead to 5-3.

T6 – Ramirez in for Skenes. Winn K. Church grounds out 6-3. Pages with an infield hit (yes, an infield hit!). Scott II out 4-3.

B6 – Graceffo in for Bruihl. Cardinals are going to have to find another 12 bullpen outs today if they want to sweep. He avoids the obligatory first batter walk syndrome with an HBP, instead. He follows with a P4, K and 5-3 to navigate the inning. Cardinals still up 5-3.

T7 – Montgomery in for Ramirez. Wetherholt walks. Herrera lines out L8. Burleson F8. Walker forces out Wetherholt.

B7 – Graceffo back out. 4-3. Romero in for Graceffo. Starts with a K. Lowe HR (416 ft) tightens the game some more. Gotta love that lefty lane. Will see them in the ninth, again, I suspect. A walk extends the inning. A K finishes it. Pirates cut the lead to 5-4. No more room to cut.

T8 – Mattson in for Montgomery. Gorman singles. A Winn line drive is misplayed for an error, advancing runners to second and third. This later re-scored to a hit, as well. Church doubles in two runs. Pages F8. Scott II walks. Wetherholt L8. He has hit the ball hard today. Herrera walks. Devenski in for Mattson. Burleson singles in two more. Walker with an RBI single. Gorman K to end the eruption. Cardinals now up 10-4.

B8 – Stanek in for Romero. 3u. F8. Single. Backwards K. Pretty clean inning for Stanek, noticeably lacking in walks.

T9 – Winn P4. Church L8. Pages K.

B9 – Svanson in for Stanek. 4-3. Single. Double, plus throwing error by Walker plates a run. F8 advances runner to third. L7 ends the game (not as nerve-wracking as yesterday’s last out!). Cardinals win 10-5.

Post-Game Notes

  • In The Feed, check out Today on the Farm – Thursday 4/30 for updates on MiLB action.
  • The Cardinals head back home today with an upcoming homestand against LAD and MIL before heading west. Expecting Wrobleski, Sasaki and Sheehan as the Dodgers’ trio of pitchers.
  • The Cardinals ran themselves out of challenges early, which was unfortunate because this umpire missed a number of strikes later.
  • To my eye, the Pirates got out-managed at every step this series. Probably starting with the 8-pitcher bullpen game to start the series. It was a brilliant move until it wasn’t and set a lot of things in motion that could go wrong. And things did go wrong for them, in bunches. A good pitching team gave up a ton of runs to a team that is not an offensive juggernaut, and likewise couldn’t find a way to overcome a bullpen having trouble throwing strikes.
  • Pirate mistakes were a theme of this series … unforced errors, wild pitches, passed balls, throwing to wrong base. The scorer can change them back to hits all he/she wants, but they are still plays not made. Much to clean up for them.

Luke Weaver blows lead as miserable Mets take yet another agonizing loss

An image collage containing 2 images, Image 1 shows Mets reliever Luke Weaver reacts after coughing up the lead in the eighth inning against the Nationals on April 30, 2026, Image 2 shows A Mets fan with a brown paper bag over their head gives a thumbs-down during a game against the Nationals at Citi Field on April 30, 2026

The long and short of the Mets’ miserable April is that it ended on another loss.

Despite a well-timed 359-foot longball and the desperate use of a couple three-foot sacrifice bunts to jumpstart a futile offense, the Mets couldn’t protect a one-run eighth-inning lead and lost 5-4 in the rubber game of a series Thursday against the Nationals in front 34,621 at Citi Field.

The Mets (10-21) are 3-17 in their last 20 games.

Mets reliever Luke Weaver reacts after coughing up the lead in the eighth inning against the Nationals on April 30, 2026. JASON SZENES FOR THE NEW YORK POST

With their three top relievers — a low bar to clear — lined up to protect a 4-3 lead, the Mets still collapsed when Luke Weaver allowed the go-ahead two-run homer to C.J. Abrams in the eighth inning. The Nationals threatened to add insurance in the ninth but Ronny Mauricio cut down a run at the plate and Luis Torrens threw out an attempted base-stealer at second base.

Mauricio struck out to end the game with the tying run in scoring position after Francisco Alvarez’s pinch-hit two-out double.

The Nationals led 3-0 until the top of the Mets’ lineup forged a two-out third-inning rally. MJ Melendez followed back-to-back singles by Bo Bichette and Juan Soto with a two-strike line-drive home run that snuck over the right-field fence before James Wood could stalk it for a hat trick of great catches.

Mets outfielder Carson Benge watches the Nationals’ CJ Abrams’ home run ball go over the fence in the eighth inning on April 30, 2026. JASON SZENES FOR THE NEW YORK POST

Melendez also supplied the bunt that allowed the Mets to take a brief 4-3 lead. He moved Soto into scoring position for Mark Vientos’ go-ahead RBI double in the sixth.

Playing with a lineup that had six batters with sub-.600 OPS’s at one point during the game, embattled manager Carlos Mendoza tried the sacrifice-bunt strategy again in the seventh to no avail as the Mets wasted Carson Benge’s leadoff single.

But the Mets abandoned bunting in the eighth with Soto at second base after a leadoff double. Instead of calling on Melendez to lay down another sacrifice, Mendoza sent up pinch hitter Austin Slater, whose groundout to shortstop ended up killing a rally.

The first sign that Thursday was going to be like so many other days that the MLB-worst Mets have had was when Soto’s would-be third home run in as many days was robbed by a glove-behind-the-wall catch by the 6-foot-6 right fielder Wood in the first inning.

The second was when ace Fredy Peralta turned a double play into a two-base error. Had he fielded a comebacker cleanly or let it go past the mound, the Mets would have been out of the second inning in a scoreless tie but instead Nakim Nunez ran 270 feet as Peralta’s errant throw tricked down the right-field line and then crossed the plate with a second run on Jacob Young’s single.

A Mets fan with a brown paper bag over their head gives a thumbs-down during a game against the Nationals at Citi Field on April 30, 2026. Robert Sabo for NY Post

After the Mets tied the score, Peralta retired seven straight hitters until finding himself in a two-on, one-out jam courtesy of two walks in the sixth. But he bore down to retire Jorbit Vivas and Nunez on the final of his 91 pitches without the ball leaving the ball the infield.

Peralta — one earned run on four hits and three walks with six strikeouts mixed in —  was in line for the victory after the go-ahead rally, but the Mets don’t win anymore.

Luke Weaver allows go-ahead home run in eighth as Mets fall to Nationals, 5-4

The Mets fell to the Washington Nationals by a score of 5-4 on Thursday afternoon, losing two out of three games in the series.

Here are the takeaways....

-- With the Mets holding a 4-3 lead, Luke Weaver came on to pitch the eighth inning. After allowing a leadoff single, Weaver gave up the go-ahead two-run homer to CJ Abrams, who demolished one over the wall in right-center. This came after Brooks Raley pitched a scoreless seventh, and the Mets looked to have the back end of the bullpen lined up the way they wanted.

Former Met Richard Lovelady allowed a leadoff double to Juan Soto in the bottom of the eighth, but the Mets couldn't do anything with it, as the next three hitters went down in order.

-- Devin Williams pitched the ninth inning even with the Mets trailing. He pitched around a leadoff single and stolen base, as Ronny Mauricio nabbed Nasim Nuñez at the plate with the infield in to keep the score where it was. 

With two outs in the bottom of the ninth, pinch-hitter Francisco Alvarez doubled to keep the game alive, but Mauricio went down swinging to end the game.

-- Freddy Peralta had a solid afternoon, but he was his own worst enemy in the second inning. With a runner on first and one out, Peralta knocked down a grounder but then threw it wildly to first base, allowing the runner from first to come all the way around to score. He was ultimately charged with two unearned runs in the inning, and if he would have let the ground ball go by, it would have been an easy, inning-ending double play. 

Peralta gave the Mets six strong innings, allowing three runs (one earned) on four hits while striking out six and walking three. He lowered his season ERA to 3.52.

-- Right-hander Miles Mikolas induced grounder after grounder from the Mets, but the home team got to him for three runs in the third. With two on and two out, MJ Melendez whacked a high fastball for a three-run shot to right field, tying the game at 3-3 with his second home run of the season. 

Mikolas went four innings, allowing three earned on three hits. 

-- Nationals right fielder James Wood is known more for his bat than his glove, but he flashed the leather in this game. In the first inning, Wood perfectly timed his leap at the wall to rob Soto of a solo home run, reaching high over the fence to bring it back. Then, in the fifth, Wood laid out to make a sliding catch to rob Bo Bichette of potential extra bases. 

Wood went 0-for-3 with a walk at the plate.

-- The Mets used some small ball to take the lead in the bottom of the sixth. Starting with a Soto walk, Melendez bunted Soto to second, and Mark Vientos drove an RBI double to right center to give the Mets a 4-3 lead.

Game MVP

Abrams, who went 2-for-3 with a walk and the game-winning homer.

Highlights 

Upcoming schedule

The Mets head out West for a nine-game road trip, starting with three games against the Los Angeles Angels from Friday through Sunday. 

Christian Scott will face Walbert Urena on Friday at 9:38 p.m.

Bassitt hounds Astros, O's hit two grand slams in big 10-3 win

 Apr 28, 2026; Baltimore, Maryland, USA; Baltimore Orioles catcher Adley Rutschman (35) celebrates at home plate after hitting a grand slam in the fifth inning against the Houston Astros at Oriole Park at Camden Yards. Mandatory Credit: Jamie Sabau-Imagn Images | Jamie Sabau-Imagn Images 

It’s almost a shame the Orioles have another game of baseball to play today, because it’s going to be hard to top their game one performance.

The O’s opened a doubleheader with an all-around fantastic win over the Astros, 10-3. Chris Bassitt posted his most impressive outing as an Oriole by a long shot, shutting down the AL’s best offense for just one run in 6.2 innings. The Orioles didn’t score until the fifth but opened the floodgates after that, crushing two grand slams — by Adley Rutschman and Jeremiah Jackson — to reach double digits in runs for the second time this season.

This game pitted a guy with a 6.75 ERA this season against one with a 6.15 ERA in five career seasons. So of course it turned into a pitcher’s duel. But for Chris Bassitt and the Orioles, that was just fine. Bassitt was in dire need of a quality performance as an Oriole, and boy, did he get it this afternoon.

From the get-go, Bassitt was absolutely dealing. It was impressive enough that he started his day with two straight strikeouts, but even more impressive that the second one came against Yordan Alvarez, who historically has crushed Bassitt in his career (9-for-22 with five home runs, his most against any pitcher). But Bassitt carved him up with no issues on his way to a perfect inning.

Bassitt allowed a baserunner in the second but twice got help from Adley Rutschman, who first pulled off a successful ABS challenge to eventually strike out Yainer Diaz and then threw out Jose Altuve trying to steal. Bassitt worked past another baserunner in the third and two more in the fourth, and he followed up with his second perfect inning in the fifth. The veteran right-hander looked every bit like the pitcher the O’s thought they were signing. He was hitting his spots, mixing his pitches, and generally making a very good Astros offense look very silly.

Early on, the O’s had trouble giving Bassitt any support. They were stymied by Peter Lambert, who’d had a very bad MLB career with the Rockies (something that happens to a lot of pitchers, to be fair) before reinvigorating his career in Japan last year. Lambert started the game with three scoreless innings of his own before the O’s broke through in the fourth. Pete Alonso walked, and with two outs, Jeremiah Jackson started his excellent day of work by lacing a double down the left-field line. Alonso huffed and puffed around the bases as fast as his Polar Bear legs could carry him, crossing the plate with the game’s first run.

From then on, the Orioles scored lots and lots of runs, and none of them required a lumbering slugger to breathlessly chug around the basepaths. The O’s chased Lambert from the game in the fifth on a Blaze Alexander one-out double, snapping his 0-for-14 drought. Lefty Steven Okert tried to defuse the rally and instead poured gasoline on the fire. Gunnar Henderson reached on a check-swing squib infield single to third and Taylor Ward walked, loading the bases for Adley Rutschman.

Folks. Adley is so back. If you hadn’t gotten the memo, allow Rutschman to demonstrate. He crushed a sizzling fly ball to deep center field. Astros center fielder Brice Matthews made a leaping attempt at the wall and nearly pulled off an incredible, home run-saving catch. Nearly. The ball was in his glove, but it popped out into the O’s bullpen when Matthews slammed into the wall. The Orioles’ relievers, with an up-close look at the play, erupted into cheers and celebrations while Matthews looked forlornly at his empty glove. GRAND SLAM, Adley Rutschman! The O’s catcher has 11 hits, four homers, and 14 RBIs in his six games since returning from the IL. See my earlier comment re: Adley and his backness.

During the home run call, MASN announcer Kevin Brown gleefully exclaimed that analyst Jim Palmer was now obligated to eat a chicken wing, something that the Hall of Fame O’s legend somehow had never done in his 80 years on this earth. Apparently Palmer made an on-air promise during a 2025 game that he’d eat a chicken wing if the O’s hit a grand slam during a game he was calling. Here it was, and so he delivered: Palmer dug into some chicken wings in the bottom of the eighth, proclaiming, “These are actually pretty tasty.”

Good times at Camden Yards, everyone. And they only got better.

Two innings later, the Astros turned to long reliever Jason Alexander, and today definitely was not the Summer of George. The O’s battered the poor guy for five runs with an incredible rally after there were two outs and nobody on base. It started harmlessly enough with a Ward walk, and then Rutschman did his thing again with a single and Alonso walked. Alexander couldn’t find the strike zone, walking Dylan Beavers on four pitches to force home a run.

Alexander was gifted an automatic strike when Jeremiah Jackson didn’t get to the batter’s box in time. No matter. Jackson swung at the next pitch and blasted it 380 feet into the left-field seats, to a very similar spot as his comeback-inspiring grand slam against the Diamondbacks a couple of weeks ago. It’s another salami for Jeremiah! He increased his team-leading RBI total to 24. Where would the Orioles be without Jackson this year? My goodness.

The offensive explosion made things easy for Bassitt, not that he needed any help. The right-hander ultimately 6.2 strong innings, giving up just one run on seven hits. His seven strikeouts were a season high by far; his previous best was three. Wonderfully done, Chris. That’s exactly what the O’s needed to save their bullpen in the first game of a doubleheader.

Rico Garcia stranded two of Bassitt’s baserunners in the seventh. Anthony Nunez gave up two runs in the eighth, but both were unearned thanks to two O’s errors (good thing the Orioles were already way ahead). Newly recalled Jose Espada, a second cousin of Astros manager Joe Espada, worked through a ninth-inning jam with help from Jackson, who made a nice defensive play at second to start a double play.

And there you have it. A fun, easy, 10-3 Orioles win. What a beautiful day of baseball. Any chance we can keep it up in game 2, guys?

Late foibles against Tigers sink Braves, 5-2

Apr 30, 2026; Cumberland, Georgia, USA; Atlanta Braves catcher Drake Baldwin (30) tags out Detroit Tigers third baseman Hao-Yu Lee (50) during the ninth inning at Truist Park. Mandatory Credit: Dale Zanine-Imagn Images | Dale Zanine-Imagn Images

After an exciting walkoff win that extended their season-opening streak of not losing series on Wednesday night, the Braves got to work in a short turnaround matchup against the Tigers with a chance for a sweep. For a while, a sweep seemed likely, but the Braves were undone by poor pitching and defense in the game’s final frames. Meanwhile, they had their hands relatively full with Framber Valdez, scoring just two runs en route to a 5-2 loss.

Bryce Elder got the start, and, well, it looks like at least in the early going, the universe is paying him back a bit for his lines in past years. Elder’s overall line wasn’t all that great, with a 5/3 K/BB ratio and a paltry 22 percent grounder rate that is the lowest he’s ever recorded in a start, but he nonetheless deked and ducked his way through six innings, only getting a run on his ledger the third time through.

Elder got into a spot of trouble in the first with a random two-out, four-pitch walk after a single. He followed with a get-me-over sinker that Spencer Torkelson took a very awkward swing on and lifted harmlessly to right field. After a quick second, another walk and a single put two on against Elder with one out, but a groundout and a wave from Riley Greene on a hanging, crushable slider stifled that threat. Elder worked around a Torkelson leadoff single in the fourth, and had a 1-2-3 fifth thanks to Ronald Acuña Jr. throwing out Gleyber Torres trying to stretch a down-the-line single into a double.

While all this was happening, the Braves opened up a 2-0 lead on Valdez. They stranded a couple in the first as Valdez bamboozled Austin Riley, but plated the game’s first run when Eli White singled Kyle Farmer (making his first start of the year) home on a hard liner to center. The Braves had a chance for more, especially when a Valdez pitch clipped Acuña’s foot, but it was confusingly ruled as not doing so on replay because there apparently “wasn’t enough evidence” to overturn the call at the plate, and consecutive strikeouts ended the rally. Not to worry, though, as Mauricio Dubon’s single to center in the third plated Ozzie Albies, who had a leadoff double earlier in the inning.

The Tigers got to Elder in the sixth — Riley Greene drew another walk, Torkelson hit another single, and after Elder battled back to strike out Kerry Carpenter on a high four-seamer (for the second time in the game), Matt Vierling blooped a ball in front of Acuña to plate Greene. A soft tapper in front of the plate ended the rally and Elder’s outing. Again, hooray for the 2.95 FIP (and one run charged in six innings), but a 5.10 xFIP is Elder’s second-worst mark of the season, and now gives him three straight starts with a below-average xFIP.

Valdez rolled through the middle innings, as the Braves made ten straight outs after Dubon’s RBI single. He finished with a sparkling 0.95 FIP and 2.15 xFIP in six innings of 8/0 K/BB ratio ball, by far his best start of the year so far.

Tyler Kinley had an adventurous seventh. The Tigers loaded the bases with one out on a walk, a “normal” single, and then a slow bouncer. But, Kinley struck out Greene on three pitches, showing him two sliders in the zone that were fouled off, and then burying a slow curve in the dirt for a whiff. Torkelson then followed with a hard liner to left, but Dubon was able to run it down, and the Braves still led.

The Braves got a couple on against reliever Drew Anderson in the seventh (Acuña two-out double, intentional walk), but Albies grounded out. And then, things fell apart.

The Braves’ bullpen has been a bit short-handed, somewhat in preventable ways, and somewhat just due to the injury to Raisel Iglesias and the fact that Dylan Lee missed a game on paternity leave before returning and throwing a lot of pitches. While I don’t really blame Walt Weiss and company for messing around at all given where the season is, going with your “guys you don’t really wanna use” relievers with a one-run lead will blow up in your face, and yeah, it did here.

Joel Payamps got the call for the eighth, and woofing commenced. Carpenter crushed his fastball to center, where Eli White didn’t track it down — it bounced off the boards for a triple. Vierling followed with a weak bouncer that nonetheless got by given where Riley was positioned at third for a game-tying double. After a walk and a strikeout, Payamps was out and Aaron Bummer was in — but Bummer missed with four straight to Kevin McGonigle, who drew his third walk of the day. Gleyber Torres followed with a weak fly that pushed the go-ahead run across; Bummer ended the top of the eighth with a strikeout of pinch-hitter Jahmai Jones.

Oh, but we weren’t done with foibling (that’s not a word) yet. After Anderson threw a perfect second frame of work, it was Jose Suarez time with a one-run deficit, and… yeah. Suarez looked dominant striking out both Greene and Torkelson, but there’s his enigma in two-minute showcase: he goes from tantalizing to unpitchable from batter to batter, if not from pitch to pitch. Despite being so close to giving the Braves a chance to mount another ninth-inning rally, Suarez walked Wenceel Perez (after being ahead of him 1-2). Vierling followed with a hard grounder that A) Riley couldn’t snag, sending it shooting up in the air, B) Mike Yastrzemski goofed picking up in left, and C) resulted in a slow replay back home, such that D) Perez scored. After another walk (I want to spray Jose Suarez with a spray bottle so badly), Dillon Dingler uncorked a double down the left-field line, which made it 5-2 but also sent the game to the bottom of the ninth as an attempt at a sixth Detroit run was thrown out at home.

The bottom of the ninth, now with a three-run deficit in play, was not very exciting. Facing Kyle Finnegan, all the Braves managed was a one-out single by Yastrzemski. Acuña went down looking to end the game.

This was not really a showcase game for the Braves, as they managed just two extra-base hits, and were diced up to the tune of an 11/1 K/BB ratio by Valdez and the subsequent Detroit relief duo. Meanwhile, Braves arms managed just a 10/8 K/BB ratio.

But hey, they’re still doing great this season, they won the series yesterday, and now they’re off to see what adventures await them on a long and hopefully fruitful road trip. Stay tuned.

Reds 6, Rockies 4: Freeman’s early home run not enough to spark Rockies to series win

CINCINNATI, OHIO - APRIL 30: Tyler Freeman #2 of the Colorado Rockies celebrates with Andy González #81 as he rounds the bases after hitting a two-run home run during the first inning of a baseball game against the Cincinnati Reds at Great American Ball Park on April 30, 2026 in Cincinnati, Ohio. (Photo by Jeff Dean/Getty Images) | Getty Images

Missed opportunities at the plate once again spelled doom for the Colorado Rockies as they dropped the rubber match 6-4 to the Cincinnati Reds on Thursday. The Rockies end the road trip having gone 4-2 and end the month of April 13-14.

Striking First

The Rockies started the game on a high note against Andrew Abbott. Brenton Doyle managed to draw a one-out walk in the top of the first inning to give Colorado the first baserunner. After Hunter Goodman was called out on strikes, and Doyle swiped his seventh bag of the year, it fell to Tyler Freeman to bring him home. Notoriously good with runners in scoring position, Freeman again came up in the clutch to belt a two-run home run to right field and give the Rockies an early 2-0 lead. It was the first home run of the season for Freeman that traveled 357 feet to right field.

Better than the result

With an immediate lead in hand, Michael Lorenzen set out to work against the Reds’ lineup. Cincinnati got on the board in the bottom of the second inning thanks to the red-hot Nathaniel Lowe. The first-baseman blasted an 84.2 mph 0-1 changeup from Lorenzen 399 feet, his fifth home run of the season. Unfazed, Lorenzen continued to attack the zone, putting up zeroes over the next two innings.

The Reds struck again in the fifth after Spencer Steer drew a lead-off walk. After a strikeout of Will Benson, TJ Friedl stepped up to the plate and delivered a go-ahead home run to give the Reds a 3-2 lead. A fastball on the inside part of the plate was lofted out to right field and while it looked like Troy Johnston may have a chance at a play, the ball got out just far enough out of reach for Friedl’s second home run of the year.

Lorenzen was chased from the game after giving up a one-out double to Lowe in the bottom of the sixth, who would eventually score. His day ended after 5.1 innings of work, having allowed four runs on four hits with five strikeouts and two walks. While the box score may not reflect it, Lorenzen pitched fairly well in the game.

Missed Opportunity

Once again, the Rockies found themselves in a familiar situation they were in on Tuesday offensively. Before the Friedl home run in the bottom half of the fifth inning, the Rockies had their best chance to score in the top half. Kyle Karros, Ezequiel Tovar, and Jordan Beck all managed to reach, loading the bases with one out. Leading 2-1 at the time, the Rockies needed to keep building and had Doyle coming up to the plate. Unfortunately, he poked a groundball to Elly De La Cruz, who promptly fired the ball home for the forceout. Goodman then followed with a strikeout to end the scoring threat.

Colorado didn’t manage to score again until the ninth inning after the Reds built up a 6-2 lead. Mickey Moniak delivered an RBI single, and Jake McCarthy drove in another on a sacrifice fly. Representing the tying run, Goodman flew out to center field to end the rally.

On the day the Rockies out-hit the Reds 9-7, while striking out nine times and drawing three walks.

Up Next

The Rockies head home to welcome the Atlanta Braves to Coors Field on Friday. Jose Quintana (1-2, 4.91 ERA) will take the mound and face off against Grant Holmes (2-1, 3.62 ERA).

First pitch is scheduled for 6:40 pm MT.


Join the conversation!

Sign up for a user account and get:

  • Fewer ads
  • Create community posts
  • Comment on articles, community posts
  • Rec comments, community posts
  • New, improved notifications system!

Please keep in mind our Purple Row Community Guidelines when you’re commenting. Thanks!

The moment of truth is here for Anthony Volpe and the Yankees

An image collage containing 2 images, Image 1 shows Anthony Volpe's role is unclear as he prepares to return to the Yankees, Image 2 shows Jose Caballero has improved offensively over the last three weeks
  • Yankees face a tough decision on Anthony Volpe’s role upon his return from injury.
  • José Caballero’s stellar play at shortstop complicates Anthony Volpe’s path back to the starting lineup.
  • Yankees’ aggressive roster moves suggest Anthony Volpe may have a shorter leash this season.

Whether the Yankees activate Anthony Volpe from the injured list on Friday, or wait till Monday, may be the simple part.

Exactly what his role is and how long of a runway he gets to prove himself in it is the decision that was staring down the Yankees on Thursday’s off day before opening a four-game set against the Orioles on Friday in The Bronx.

Aaron Boone had said the Yankees would re-evaluate Volpe’s status on Thursday after he played back-to-back nine-inning games at shortstop for Double-A Somerset, giving him 10 total games (with 34 plate appearances) on his rehab assignment. All indications are that he is healthy and feeling strong, following October surgery to repair a torn labrum in his left shoulder, and he just needed to build his workload in what was essentially his spring training.

Access the Yankees beat like never before

Join Post Sports+ for exciting subscriber-only features, including real-time texting with Greg Joyce about the inside buzz on the Yankees.

Try it free

Volpe seemed to be trending towards a Friday return, though Boone would not yet commit to that on Wednesday, and given that his 20-day rehab clock runs through Sunday, it is possible he could get a few more days of rehab games in.

“We’ll see,” Boone said five times answering two questions about Volpe’s status, including whether he would play in a role like he has in the past.

Nearly three weeks ago, general manager Brian Cashman said Volpe reclaiming his starting shortstop job upon returning from the IL had “always been the plan.”

“But ultimately, that’ll be the manager’s call,” Cashman added, as he usually does on issues regarding lineups and playing time.

Anthony Volpe’s role is unclear as he prepares to return to the Yankees. Charles Wenzelberg / New York Post

Of course, that was easier to say back then, on April 10, when José Caballero was off to a slow start, finishing the day batting .150 with a .384 OPS in 12 games along with two errors. In 18 games since then, Caballero was batting .338 with a .915 OPS. While his underlying offensive metrics suggest that may not be sustainable, his six Defensive Runs Saved were the most of any shortstop entering Thursday, his 12 steals were tied for the most in the American League (as were his four caught stealings) and his 1.2 bWAR was tied for sixth among all shortstops.

Boone recently described Caballero as a “winning player” who “does so many things to help you win a game,” but the manager has declined to publicly reveal a plan for what the playing time will look like at shortstop once Volpe returns — perhaps because he is sensitive to Caballero potentially losing some at-bats while he was playing a key role in their success.

“Cabby’s playing at a really high level,” Boone said earlier this week. “Obviously we think very highly of Anthony too. But those are answers for another day. Bottom line is José has learned a lot of opportunities and has been right in the middle of us winning a lot of games.”

All of this may have been manager-speak from Boone, not wanting to make any proclamations until the Yankees were ready to activate Volpe — though even after, he likely won’t — because of the possibility that something could have changed the equation before then.

But when it boils down to it, the reality is that Caballero offers much more value in a utility/10th man role than Volpe does. He can still play shortstop on occasion, but also bounce around to left field, third base or second base against a lefty, or be a legitimate speed weapon off the bench.

All along, the expectation has been that Volpe will get some kind of runway to start at shortstop and prove that his rough season last year was due in part to playing through the shoulder injury. His defense prior to that had been mostly strong while his bat has been wildly inconsistent over three seasons in the big leagues.

Jose Caballero has improved offensively over the last three weeks. Corey Sipkin for the NY POST

“Volpe’s a big piece of what we’re doing here and has been the past couple years,” Aaron Judge said. “Hopefully we can get him back and he keeps swinging the bat like he is in his rehab starts [10-for-33], which has been great. The boys definitely miss him. … It’ll be good to see him back in pinstripes.”

But as he begins a crucial Year 4 — with a potential longer-term replacement, George Lombard Jr., just promoted to Triple-A — Volpe’s leash may be shorter than it has been in the past, especially because the Yankees now have a real option behind him in Caballero.



They have also been more aggressive in their roster moves early this season than in years past — calling up Elmer Rodríguez for Luis Gil and designating Randal Grichuk for assignment earlier than they needed to to give Jasson Domínguez a longer stay, to name a few.

“That’s the thing, we have real options waiting in the wings,” Boone said Wednesday when asked about that aggressiveness. “So I think that’s good for creating competition, and ultimately just serves us well, whether an injury comes up or whether a guy earns more and more opportunities with performance. I like where we’re at.”