A’s Slug Their Way to a Fifth Straight Cactus League Victory

A few days ago, Athletics manager Mark Kotsay said that his team is a power-hitting, not base stealing group when asked why he has slugging first baseman Nick Kurtz hitting leadoff. That was the case last year and will be again this year, evident by the 29 home runs the team has already hit this spring. This afternoon, the A’s powerful offense led the way, blasting five home runs in a 13-3 pummeling of the Arizona Diamondbacks.

The Diamondbacks scored first as A’s starting pitcher Luis Morales gave up a home run to the second batter he faced, second baseman Ildemaro Vargas. The A’s responded right away as their second baseman Andy Ibáñez hit his first home run in an A’s uniform, a two-run blast off Arizona’s pitcher Ryne Nelson in the top of the second inning.

Arizona continued the back-and-forth nature of the game’s early going by tying the game at two in the bottom of that inning, their rally aided by A’s third baseman Max Muncy’s third error of spring training.

The A’s took the lead for good the following inning courtesy of Shea Langeliers’ third Cactus League home run, a solo shot to left field. Muncy added a solo home run in the fourth inning, redeeming himself from the error he committed earlier in the game.

Muncy, who got three hits plus a walk, looks ready for Opening Day offensively. However, the natural shortstop’s defense at third base continues to be erratic. He will need to clean things up before the season, or his defensive mistakes could cost the A’s games this year.

Up by two through four innings, the A’s broke this game open by scoring five runs against Diamondbacks reliever Thomas Hatch in the fifth inning. Brent Rooker immediately followed Tyler Soderstrom’s three-run home run with a solo shot of his own.

Meanwhile, Morales settled down, turning in his best start of the spring so far. He allowed two runs — one unearned — over 4 2/3 innings while working in and out of trouble. In the second inning, he got Anderdson Rojas to ground into an inning-ending double play with runners on second and third and one out. The next inning, Arizona loaded the bases with one out before Morales struck out the next two batters to escape the jam and finished the day reaching 75 pitches. He should be well almost fully stretched out with just a couple weeks to go until Opening Day.

The A’s reserves added on late, scoring two runs in the seventh and eighth innings to make the game even more of a blowout. Today, the team went far down its bench, giving playing time to Carlos Pacheco, Breyson Guedez and Jose Ramos, three recent international signees who are much further away from MLB than the team’s top prospect Leo De Vries.

Unlike the past few games in which A’s relievers allowed the other team to make a comeback, they were nearly perfect this afternoon. Justin Sterner, Hogan Harris and non-roster invitee Nick Anderson all threw scoreless innings to wrap up a big win for the A’s. And now they’re rolling.

The Athletics will look to make it six wins in a row tomorrow at the Texas Rangers. Right-hander J.T. Ginn will make his fourth start of the spring, while the Rangers have yet to announce their scheduled starter for that game. Ginn allowed four runs, including two home runs, over three innings in his last outing against the Colorado Rockies. Look for Ginn to pitch better tomorrow as he vies for a spot on the A’s Opening Day rotation or bullpen.

Who Should Be the St. Louis Cardinals 4th & 5th Starters?

Feb 22, 2026; West Palm Beach, Florida, USA; St. Louis Cardinals starting pitcher Kyle Leahy (62) delivers a pitch against the Houston Astros during the first inning at CACTI Park of the Palm Beaches. Mandatory Credit: Sam Navarro-Imagn Images | Sam Navarro-Imagn Images

As Spring Training rolls on, the St. Louis Cardinals roster is starting to come into focus, but there’s still no obvious choice for what the back of the rotation will look like. Who do you think should be the 5th starter? The same question could be asked about who the 4th starter will be, too.

It’s all but a foregone conclusion that the Cardinals will have Dustin May, Matthew Liberatore and Michael McGreevy as the first three starters. That leaves Richard Fitts, Andre Pallante and Kyle Leahy with one of them being the odd man out assuming the Cardinals go with a 5-man rotation and that’s no certainty either. For the sake of discussion, let’s say St. Louis starts the 2026 regular season with a 5-man rotation. Here are the stats of the bottom of the order candidates so far in Spring Training:

Andre Pallante

  • Games: 3
  • Innings Pitched: 9.0
  • ERA: 3.00
  • Strikeouts : 7
  • WHIP: 0.78

Kyle Leahy

  • Games: 3
  • Innings Pitched: 8.2
  • ERA: 5.19
  • Strikeouts: 9
  • WHIP: 0.92

Richard Fitts

  • Games: 2
  • Innings Pitched: 4.2
  • ERA: 7.71
  • Strikeouts: 4
  • WHIP: 1.71

I’ve only seen a handful of Spring Training games, but I’ve seen impressive moments (and a few concerning ones) for all three of these players. The last game I saw Andre pitch, he was sharp. Kyle Leahy had a rough outing against Pittsburgh in his second Spring Training appearance, but his most recent game was solid. I saw many comments about Richard Fitts first game that said his fastball velocity was up. The second Fitts game was underwhelming. If the St. Louis Cardinals went with a conventional 5-man rotation, it would be a tough choice of which of these 3 would end up in the bullpen.

If I were forced to pick as of right now, I would have Pallante and Leahy as the 4th and 5th starters and have Fitts be the long reliever out of the bullpen, but I will admit I thought about Leahy having that role after the Pirates game. If you had to choose just 5 Cardinals starters, who would you go with and who goes to the pen? I know we’re only halfway through Spring Training, so the sample size is admittedly not large.

A few months ago, we explored the idea of the Cardinals going with a 6-man rotation and I’m starting to think that might be the right approach. If 2026 is the season where we find out who the future Cardinals core will be, what better way to figure out who the arms we can depend on will be than letting each of these pitchers get their chance at starting?

Giants Reacts: Where will the Giants finish in the NL West?

Tony Vitello smiling while meeting with Dave Roberts before a game.
SCOTTSDALE, ARIZONA - FEBRUARY 27: Manager Tony Vitello #23 of the San Francisco Giants talks to manager Dave Roberts #30 of the Los Angeles Dodgers and the umpires prior to the spring training game against the San Francisco Giants at Scottsdale Stadium on February 27, 2026 in Scottsdale, Arizona. (Photo by Jeremy Chen/Getty Images) | Getty Images

Welcome to SB Nation Reacts, a survey of fans across the MLB. Throughout the year we ask questions of the most plugged-in Giants fans and fans across the country. Sign up here to participate in the weekly emailed surveys.

The 2026 MLB season is about to start, and the San Francisco Giants have high hopes of returning to the postseason for the first time since 2021. But it won’t be easy, as the National League West projects as one of the more challenging divisions in baseball.

There’s a clear hierarchy in the NL West. At the top sits the two-time defending champion Los Angeles Dodgers, who boast an embarrassment of riches. At the bottom sits the Colorado Rockies, who are just a standard embarrassment. And in the middle are the Giants, San Diego Padres, and Arizona Diamondbacks, who are jockeying for position in the division, with sights set on a playoff berth.

It’s no guarantee where anyone will end up. No one thought the Giants had a chance of catching the Dodgers in 2021, but catch them they did. Still, it seems overwhelmingly likely that they end up in either second, third, or fourth place in the division. So what’s your pick?

Colorado Rockies defeat Seattle Mariners 11-7

MESA, ARIZONA - MARCH 06: Charlie Condon #66 of the Colorado Rockies looks on from his dugout at Hohokam Stadium prior to a game against the Athletics on March 06, 2026 in Mesa, Arizona. (Photo by Kyle Cooper/Colorado Rockies/Getty Images)

There were no postgame interviews today as the Colorado Rockies beat the Seattle Mariners 11-7.

(Taco’s anyone?)

However, please enjoy seven minutes of game highlights. (Spoiler: There’s a lot to see.)


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

Matt McLain’s ridiculous spring continues

MLB: Cincinnati Reds at Colorado Rockies

I’m going to throw some numbers at you and let you decide whether or not I’m completely making them up.

Matt McLain, the resident 2B of the Cincinnati Reds and likely #2 hitter in the lineup everyday, is 17 for 28 so far in Cactus League play in 2026. Seventeen for twenty-eight, or a .607 batting average.

He is Joey Votto now, roughly – he has walked 5 times so far in spring games while only owning a pair (2!) strikeouts across 10 games played.

He’s hit 5 dingers. He has 3 more home runs than he has strikeouts.

He is slugging 1.179. Over the final 11 seasons of Barry Bonds’ career, his OPS was 1.173.

Matt McLain, after homering again on Wednesday afternoon against the Milwaukee Brewers as part of a 3 for 3 day (that featured a pair of runs scored and a stolen base), is now hitting .607/.667/1.179, numbers that are so ridiculous they quite frankly ruin the triple-slash format because they’re so good.

He has a 1.846 OPS at the moment. That’s the best in all of spring training baseball across MLB right now.

In fact, he’s atop the spring MLB leaderboard in runs, hits, home runs, RBI, average, OBP, and SLG. He leads every Major League Baseball player in all of those.

Here’s the leaderboard. You can look at it yourself. You can look at it yourself, but you cannot unsee Matt McLain, because he’s literally the first name listed on pretty much any category you choose to sort.

Cincinnati Reds v Arizona Diamondbacks

He does not lead all of Major League Baseball in height, but that doesn’t matter.

None of these spring stats really matter, either, and they’ll all reset to .000 the moment the regular season begins in two weeks. The hope is, though, that McLain has fully turned the corner from his shoulder troubles and struggles from a year ago, and that the ridiculous dude we’ve had the chance to follow this spring is the guy who’s capable of being a really, really good big leaguer showing out in the best manner possible.

My brain typically ignores spring stats the moment spring training ends, and I honestly don’t recall anyone doing anything of note – bad or good – this side of Dave Sappelt. This McLain spring, though, may just be so ridiculous that I have a hard time forgetting it.

White Sox catcher Kyle Teel expected to miss 4-to-6 weeks with right hamstring strain

GLENDALE, Ariz. — Chicago White Sox catcher Kyle Teel has a right hamstring strain and is expected to miss four-to-six weeks, general manager Chris Getz told reporters on Wednesday.

Teel, 24, injured his hamstring playing for Italy during its 8-6 upset of the U.S. on Tuesday night in the World Baseball Classic. On a double down the right-field line, Teel appeared to tweak his hamstring while rounding first base. He left the field under his own power with athletic trainers.

Teel, acquired from Boston in the Garrett Crochet trade during the 2024 offseason, appeared in 78 games for the White Sox last season. Teel hit .273 with eight home runs, 11 doubles and 35 RBIs while walking 37 times in 297 plate appearances.

Edgar Quero, who appeared in 111 games for Chicago last season, is expected to handle the bulk of the catching innings with Teel sidelined. Quero hit .268 with five home runs, 17 doubles and 36 RBIs in 403 plate appearances last season.

Cubs 9, Royals 8: Nico Hoerner and Pedro Ramirez homer, and the Cubs bat out of order

MESA, Arizona — Matt Halbach doubled in Scott Kingery with one out in the ninth and the Cubs had a walk-off 9-8 win over the Royals on a beautiful afternoon at Sloan Park.

Those guys, of course, aren’t likely going to be playing for the Cubs this year, though Kingery might wind up at Triple-A Iowa as infield insurance.

Before that happened, the teams combined for seven home runs and the Cubs wound up batting in very weird sequences in the seventh and eighth innings. I’ll get to the latter, but let’s begin at the beginning.

Colin Rea allowed a run in the first inning on a triple and an error by Nico Hoerner, and then the Cubs got to work in the second. With two out, Carson Kelly and Dylan Carlson singled and Matt Shaw was hit by a pitch.

Pedro Ramirez cleared ‘em with this grand slam [VIDEO].

Gotta tell you, I am really impressed with Ramirez. He turns 22 on April 1, plays solid infield defense and has hit well this spring. Granted, spring, granted, small sample size but this is a player to keep an eye on.

Nico was next and sort of made up for his error by homering [VIDEO].

So it’s 5-1 Cubs, but Rea gave that all back by allowing three home runs in the third and fourth innings. The 5-5 tie stuck until the seventh, with Caleb Thielbar and Hunter Harvey throwing efficient scoreless innings, then Hoby Milner gave up a homer to give KC a 6-5 lead in the top of the seventh.

The Cubs scored a pair in the bottom of the inning and I swear to you, they batted out of order. Now, that doesn’t really matter in Spring Training but take a look at this part of the boxscore:

What happened here was this: Rojas had replaced Hoerner in the top of the seventh and should have led off the inning. Instead, Moisés Ballesteros led off and singled. Then he was replaced by Joan Delgado as a pinch-runner. THEN Rojas batted, and struck out.

Don’t ask me why. That’s what I saw. It broke Gameday for quite some time, eventually the above is what they went with. Th Cubs scored two runs, one on an RBI single by Brett Bateman, one on an RBI single by Kingery. The Cubs led 7-6 going to the eighth.

Jacob Webb gave up an unearned run thanks to an infield popup that was dropped by Halbach. In fairness, there was a bit of wind that blew the ball near the mound. That tied the game. A homer off Gavin Hollwell in the ninth gave KC the lead, then the Cubs won the game in the ninth. Justin Dean challenged a pitch that was called strike three, and it was overturned. Given another chance, Dean doubled. He scored the tying run on Kingery’s single and then Halbach won it with his double.

This might have been a meaningless spring result, but right there you can see how an ABS challenge can help change the result of the game. You can be sure the Cubs are filing that info away for future reference.

Attendance watch: 12,026 attended this Wednesday afternoon affair at Sloan Park. That makes the season total for 11 dates 132,824, or 12,076 per date.

The Cubs will host the Seattle Mariners at Sloan Park Thursday afternoon. Edward Cabrera will start for the Cubs and Emerson Hancock will go for Seattle. Game time is 3:05 p.m. CT. No TV Thursday, but the Mariners flagship station Seattle Sports 710 AM will have a radio broadcast.

Braves option Hayden Harris; reassign Carlos Carrasco, James Karinchak, Elieser Hernandez

NORTH PORT, FL - MARCH 09: Atlanta Braves pitcher Hayden Harris (79) throws a pitch against the Minnesota Twins on March 9, 2026, at CoolToday Park at North Port, Florida. (Photo by Brian Spurlock/Icon Sportswire via Getty Images) | Icon Sportswire via Getty Images

Earlier this afternoon, the Atlanta Braves optioned reliever Hayden Harris to Triple-A and reassigned starting pitcher Carlos Carrasco and relievers Elieser Hernández and James Karinchak to their minor league camp.

Harris is a mild surprise given his stand-out performance this Spring, having struck out 12 batters in five innings. His ability to be optioned – combined with Atlanta starting the season with 13 consecutive games – made his fit on the Opening Day roster a tight one barring a roster move with other relievers. Much like his 2025 minor league performance, he put himself in the position to make the team, soomething that could still happen with two weeks left until the start of the regular season.

Karinchak, the former Cleveland reliever, has also pitched well in camp as he tries to return to the big leagues for the first time since 2023 due to injuries. He has struck out nine across four innings pitched.

Mark Bowman of MLB.com believes that Karinchak will likely be with Atlanta by early April, citing the schedule as a factor in why the Braves would opt for a multi-inning reliever during the season’s first few weeks.

Carrasco, who made his MLB debut back in 2009, made three starts with Atlanta last year and returned on a minor league deal despite his struggles in 2025. Hernandez is another veteran pitcher, who has 99 games of big league experience, but didn’t pitch in the majors last season.

The moves bring the current camp roster to 50 players.

Contextualized Spring Training stats: the hitters

Matt Chapman and Willy Adames high-fiving.
SCOTTSDALE, ARIZONA - FEBRUARY 26: Matt Chapman #26 of the San Francisco Giants celebrates with Willy Adames #2 after hitting a home run during the first inning of the spring training game against the Colorado Rockies at Scottsdale Stadium on February 26, 2026 in Scottsdale, Arizona. (Photo by Mike Christy/Getty Images) | Getty Images

Well, we’re a month into Spring Training, and just two weeks away from Opening Day. So it seemed like a good time to dive into one of my overly verbose spring traditions: contextualized stats.

One of the hard things about judging spring results — for individuals or for teams — is that the competition varies. In one at-bat you might be facing off against a Cy Young winner, and, later in the game, you might be battling someone who got drafted in the ninth round last summer and may never make it out of A-Ball. To help you parse through that, I’ve taken a look at every single at-bat that the San Francisco Giants have had so far this spring, and broken them into four categories: at-bats against MLB regulars, at-bats against non-regulars who are on the 40-man roster, at-bats against non-roster invitees, and at-bats against players on loan from Minor League camp. For context, examples of Giants players who fit those categories would be, in order: Robbie Ray, Carson Whisenhunt, Will Bednar, and Nick Zwack.

Of course, one of the other things that makes it hard to judge Spring Training results is that the samples are so small, so me making it even more granular by cutting it into quarters may not be helping things. But it’s interesting!

In addition to tallying those totals, this year I’m adding exit velocities, since all Cactus League ballparks are equipped with Statcast data this year. That data isn’t perfect … there are a few at-bats where the exit velocities were not available. But for the most part, I’ve calculated all the EVs for all the players, so you can see how hard they’re hitting the ball — I’m including average exit velocity (the average of every batted ball); EV50 (the average of the hardest-hit 50% of the balls), and maximum EV. To help you contextualize that data, each number is accompanied by a parenthetical of where it would rank among the 389 MLB hitters who had at least 100 plate appearances last season.

These articles are best fit for off-days, but sadly/happily the Giants don’t have many of those. So apologies to all who played well in Wednesday’s 5-2 victory over the Kansas City Royals, but their stats are not included.

Now let the nerding commence!

Willy Adames

vs. regulars: 2-14, 1 home run, 1 walk, 4 strikeouts
vs. 40-mans: 0-4, 1 strikeout
vs. NRIs: 0-6, 2 strikeouts
vs. MiLBs: 1-2, 1 strikeout

Totals: 4-26, 1 home run, 1 walk, 8 strikeouts, .454 OPS, 7 wRC+

Also: 1 stolen base, 1 error, 1-for-1 on ABS challenges

Exit velocities (18 balls in play)
Average EV: 89.5(185th)
EV50: 97.7(331st)
Max EV: 106.7 (371st)

Adames’ second spring with the Giants has not gone well, save for one glorious moment: a home run off of World Series hero Yoshinobu Yamamoto to lead off San Francisco’s win over the Los Angeles Dodgers. If it makes you feel better, he had a red-hot spring last year, and then was ice cold to start the season. Let’s hope the opposite is being set up here.

Luis Arráez

vs. regulars: 2-5, 1 double
vs. 40-mans: 1-2, 1 strikeout
vs. NRIs: 1-3, 1 walk
vs. MiLBs: 0-1

Totals:4-11, 1 double, 1 walk, 1 strikeout, .871 OPS, 131 wRC+

Also:1 error

Exit velocities (10 balls in play)
Average EV: 85.8(363rd)
EV50: 95.4(381st)
Max EV: 100.7 (below the lowest figure of 104.2)

Giants fans haven’t gotten much of a look at Arráez in the black and orange, as he quickly departed to join Venezuela in the WBC. But his spring has been exactly what you expect of him: pesky at-bats, soft contact, and lots of hits. Things look much rosier if you look at his WBC data, which included a dynamic two home run game. There’s optimism in those at-bats that his downward trajectory on offense could be reversed this year.

Harrison Bader

vs. regulars: 1-4, 1 double, 1 walk, 1 strikeout
vs. 40-mans: 1-3
vs. NRIs: 1-3
vs. MiLBs: 2-2, 1 home run, 1 double

Totals:5-12, 1 home run, 1 double, 1 walk, 1 strikeout, 1.295 OPS, 226 wRC+

Exit velocities (11 balls in play)
Average EV: 84.9 (376th)
EV50: 98.9 (276th)
Max EV: 113.6 (81st)

Like Arráez, we haven’t seen much of Bader either, due to the WBC. And while the bulk of his damage has come against lower-level pitching, his 113.6-mph hit — the viral home run that damaged a food truck beyond the left field grass — lends us lots of optimism. It matched his career high, and was more than a full MPH harder than any ball he’s hit in a Major League game since 2018.

Patrick Bailey

vs. regulars: 4-11, 1 double, 1 walk, 1 sac fly
vs. 40-mans: 1-2
vs. NRIs: 1-4, 1 double
vs. MiLBs: 0-1, 1 strikeout

Totals:6-18, 2 doubles, 1 walk, 1 sac fly, 1 strikeout, .794 OPS, 99 wRC+

Also:2 runners thrown out, 2 stolen bases allowed, 7-for-8 on ABS challenges

Exit velocities(16 balls in play)
Average EV: 91.9 (39th)
EV50: 101.6 (110th)
Max EV: 109.7 (266th)

The most notable part of Bailey’s spring has been that he has been an absolute superstar at challenging pitches. He not only is great at framing baseballs, but he has an exceptional awareness of the strike zone as well. But there’s also been a lot of optimism around his bat. He’s had some very loud contact, and in 20 plate appearances has only struck out once.

Osleivis Basabe

vs. regulars: 0-4, 2 strikeouts
vs. 40-mans: 2-3, 1 double, 1 strikeout
vs. NRIs: 3-5, 1 double, 1 walk, 1 strikeout
vs. MiLBs: 3-6, 1 triple, 2 doubles, 1 strikeout

Totals:8-18, 1 triple, 4 doubles, 1 walk, 5 strikeouts, 1.289 OPS, 231 wRC+

Also:2 errors

Exit velocities(13 balls in play)
Average EV: 92.0 (37th)
EV50: 100.2 (193rd)
Max EV: 107.9 (345th)

Basabe has really impressed this spring as a non-roster invitee. He has primarily come off the bench, and all of his damage has come against non-regulars. But he’s hitting the ball hard, to go along with his strong defense (don’t let the errors fool you) across the infield.

Victor Bericoto

vs. regulars: 2-8, 2 doubles, 1 sac fly, 2 strikeouts
vs. 40-mans: 1-5, 1 strikeout
vs. NRIs: 7-10, 1 home run, 1 strikeout
vs. MiLBs: 2-5, 1 home run, 2 strikeouts

Totals:12-28, 2 home runs, 2 doubles, 1 sac fly, 6 strikeouts, 1.097 OPS, 172 wRC+

Also:1-for-1 on ABS challenges

Exit velocities(22 balls in play)
Average EV: 97.8 (above the highest figure of 95.8)
EV50: 104.3 (15th)
Max EV: 111.9 (139th)

It’s here where I need to remind you of the limitations of small samples for batted ball data. No one is suggesting that Bericoto would have the best average exit velocity in the Majors if he spend the year with San Francisco. But my goodness has he impressed by hitting the ball hard, and hitting it often. 18 of his 22 batted balls have been at least 90 mph, while a whopping nine of them have reached triple figures. It’s been an eye-opening performance that surely has him on the radar of the coaching staff and the front office. It’s the type of showing that could factor into the team’s decision-making this summer if they’re considering calling him up for a debut.

Will Brennan

vs. regulars: 2-7, 1 strikeout
vs. 40-mans: 6-10, 3 doubles, 3 walks, and 2 strikeouts
vs. NRIs: 0-2, 1 walk
vs. MiLBs: 0-2

Totals:8-21, 3 doubles, 4 walks, 3 strikeouts, 1.004 OPS, 167 wRC+

Also:1 caught stealing

Exit velocities(18 balls in play)
Average EV: 86.0 (359th)
EV50: 96.4 (365th)
Max EV: 106.0 (379th)

I always enjoy overanalyzing this data. Brennan has been utterly dynamic against players on the 40-man roster who aren’t regulars, and awful against everyone else, above and below that. Obviously it means nothing, but it’s funny! Brennan has been just what the Giants expected when they signed him right as camp was starting: he’s played solid defense all across the outfield, and reliably put the ball in play with soft contact. With Drew Gilbert’s ailment delaying his reps in camp, Brennan could have a shot at making the Opening Day roster if the Giants care about handedness for their fourth outfielder.

Diego Cartaya

vs. regulars: n/a
vs. 40-mans: 0-1, 1 strikeout
vs. NRIs: 0-2, 1 walk, 1 strikeout
vs. MiLBs: 1-1

Totals:1-4, 1 walk, 2 strikeouts, .650 OPS, 89 wRC+

Also:1-for-1 on ABS challenges

Exit velocities(2 balls in play)
Average EV: 93.8 (9th)
EV50: n/a
Max EV: 97.3 (below the lowest figure of 104.2)

It’s been pretty clear that Cartaya is in camp as a non-roster invitee primarily because the Giants — like all teams — need people who can catch, be it for bullpens, sim games, or late in Cactus League games. He hasn’t gotten any real playing time, as the focus on him will come during the Minor League season when he’s in AAA. He was never in play to earn a role early in the season.

Matt Chapman

vs. regulars: 4-12, 1 home run, 2 doubles, 3 strikeouts
vs. 40-mans: 1-5
vs. NRIs: 2-3, 1 home run, 1 double, 1 strikeout
vs. MiLBs: 0-1

Totals:7-21, 2 home runs, 3 doubles, 4 strikeouts, 1.095 OPS, 169 wRC+

Also:0-for-1 on ABS challenges

Exit velocities(17 balls in play)
Average EV: 94.3 (7th)
EV50: 105.6 (6th)
Max EV: 115.2 (35th)

Chapman has been absolutely smoking the baseball all spring. Six of his 17 balls in play have been at least 105 mph, and he’s also shown off by catching a few blistering balls on defense, as well. Opening Day can’t come soon enough for Chapman. Nothing but green flags over here.

Bo Davidson

vs. regulars: 1-2, 1 walk, 1 strikeout
vs. 40-mans: 0-3, 2 strikeouts
vs. NRIs: 2-5, 1 walk
vs. MiLBs: 0-4, 2 strikeouts

Totals:3-14, 2 walks, 5 strikeouts, .527 OPS, 46 wRC+

Exit velocities(9 balls in play)
Average EV: 94.6 (5th)
EV50: 104.4 (14th)
Max EV: 110.0 (193rd)

Davidson, one of the organization’s top prospects, is not in camp as an NRI to earn a spot on the team. He’s only barely gotten his feet wet in AA, where he’s likely to begin the 2026 season. But he’s here to hopefully make an impression, and get comfortable with a team that he could end up being a big part of as early as this summer. And make an impression he has. While his overall numbers haven’t been good, his at-bats have been poised, and the contact he’s made has been phenomenal. The spring has done nothing to quell his rapidly rising prospect status.

Rafael Devers

vs. regulars: 0-7, 4 strikeouts
vs. 40-mans: 0-3, 2 strikeouts
vs. NRIs: 0-1, 1 walk
vs. MiLBs: n/a

Totals:0-11, 1 walk, 6 strikeouts, .083 OPS, -83 wRC+

Exit velocities(5 balls in play)
Average EV: 88.5 (246th)
EV50: 102.1 (86th)
Max EV: 105.2 (383rd)

You don’t want anyone to struggle at Spring Training, but if someone has to, Devers is probably the best man for the job. He’s probably the only hitter on the team that we should have zero worries, doubts, or questions about. He’s still looking for his first hit — but has been slowed by a long absence due to a minor hamstring injury. No concerns here: just saving his hits for the season.

Bryce Eldridge

vs. regulars: 4-14, 1 triple, 2 doubles, 3 walks, 6 strikeouts
vs. 40-mans: 1-6, 2 walks, 1 hit by pitch, 4 strikeouts
vs. NRIs: 2-7, 1 home run, 1 double, 1 strikeout
vs. MiLBs: 1 walk

Totals:7-27, 1 home run, 1 triple, 3 doubles, 6 walks, 1 hit by pitch, 11 strikeouts, .967 OPS, 146 wRC+

Also:2-for-3 on ABS challenges

Exit velocities(16 balls in play)
Average EV: 92.7 (23rd)
EV50: 104.4 (14th)
Max EV: 113.0 (97th)

The biggest question when Spring Training began was this: will Bryce Eldridge be on the Opening Day roster? A month later, the biggest question is this: will Bryce Eldridge be on the Opening Day roster? He hasn’t completely forced the issue: his strikeout rate of 32.4% leaves a bit to be desired. But my goodness has he looked impressive. The quality of the at-bats has been exceptional, and the loudness of his contact has been … well … loud. He’s even looked quite good at first base. The question of his Opening Day status still needs to be answered, but the question of how dynamic his bat can be sure does not.

Jerar Encarnación

vs. regulars: 3-11, 3 strikeouts
vs. 40-mans: 0-5, 3 strikeouts
vs. NRIs: 3-8, 1 double, 1 strikeout
vs. MiLBs: 3-7, 1 strikeout

Totals:9-31, 1 double, 8 strikeouts, .613 OPS, 55 wRC+

Also:2 errors, 1-for-2 on ABS challenges

Exit velocities(23 balls in play)
Average EV: 97.0 (above the highest figure of 95.8)
EV50: 106.6 (4th)
Max EV: 115.6 (28th)

Encarnación’s spring has been a microcosm of his time with the Giants: absurdly hard contact that hasn’t really resulted in much. When you look at the batted ball data, you can see why the Giants remain enamored with him: four of his 23 balls in play have been 110+ mph, nine have been in triple figures, and 18 have been at least 90 mph. But with those hard-hit balls not translating in much damage, and with the players around him performing well, his path to the Opening Day roster is slipping. That said, he’s been coming alive in recent games, and is the player who is most negatively impacted by me publishing this article today, as he hit a home run in the team’s Wednesday game.

Tyler Fitzgerald

vs. regulars: 0-6, 4 strikeouts
vs. 40-mans: 1-2, 1 double, 1 strikeout
vs. NRIs: 2-15, 1 home run, 1 double, 5 strikeouts
vs. MiLBs: 1-3, 1 double

Totals:4-26, 1 home run, 3 doubles, 10 strikeouts, .538 OPS, 19 wRC+

Also:1-for-3 on ABS challenges

Exit velocities(16 balls in play)
Average EV: 84.3 (387th)
EV50: 93.0 (below the lowest figure of 93.6)
Max EV: 103.1 (below the lowest figure of 104.2)

There’s really no sugarcoating it: Fitzgerald has had an absolutely miserable spring. He’s mostly looked helpless, with swings-and-misses galore, and when he does make contact it’s been woefully soft. In 26 plate appearances, he’s only hit the ball harder than 85 mph five times. Unfortunately, there aren’t any bright spots to find — he’s been awful against the regulars, but very poor against the NRIs as well. The Giants have played him a little bit in the outfield, so he’s at least staying ready as a utility player on defense, should he re-find his mid-2024 bat.

Nate Furman

vs. regulars: 1-3, 1 home run, 2 walks, 1 strikeout
vs. 40-mans: 0-5, 1 hit by pitch, 3 strikeouts
vs. NRIs: 1-8, 1 double, 2 walks, 3 strikeouts
vs. MiLBs: 2-4

Totals:4-20, 1 home run, 1 double, 4 walks, 1 hit by pitch, 7 strikeouts, .760 OPS, 102 wRC+

Also:2 stolen bases

Exit velocities(13 balls in play)
Average EV: 88.9 (220th)
EV50: 96.2(366th)
Max EV: 102.5(below the lowest figure of 104.2)

Furman was perhaps the most surprising inclusion in the list of non-roster invitees this spring, but it speaks to how high the Giants are on his contact-oriented bat. Unfortunately, the upper-level talent has highlighted his inexperience a little bit. Furman has only played 21 AA games, and so it seems fitting that he went 2-4 with no strikeouts against fellow Minor Leaguers, and 2-16 with seven strikeouts against more experienced pitchers. That’s a far cry from the .369 average and 11.7% strikeout rate he had in the Minors last year.

Drew Gilbert

vs. regulars: 0-1, 1 strikeout
vs. 40-mans: 1-1
vs. NRIs: 2-6, 1 walk, 1 strikeout
vs. MiLBs: 0-4, 1 strikeout

Totals:3-12, 1 walk, 3 strikeouts, .558 OPS, 49 wRC+

Also:1 pick off, 2-for-3 on ABS challenges

Exit velocities(9 balls in play)
Average EV: 74.3 (below the lowest figure of 83.9)
EV50: 89.2 (below the lowest figure of 93.6)
Max EV: 106.9 (369th)

Nothing has gone right for Gilbert this spring. He entered camp as the favorite to win the fourth outfield role, but suffered a shoulder impingement and had to miss a good chunk of time. He only just returned on Tuesday, but as a designated hitter, as he hasn’t yet been cleared to throw. When he has been on the field, he’s been unable to do damage, with very soft contact all around. He’ll play a big role on the Giants this year, but it’s looking unlikely that he’s standing on the chalk at Oracle Park on March 25.

Eric Haase

vs. regulars: 1-6, 2 strikeouts
vs. 40-mans: 1-4, 1 home run, 1 walk, 2 strikeouts
vs. NRIs: 0-3, 1 walk, 2 strikeouts
vs. MiLBs: 3-9, 1 home run, 5 strikeouts

Totals:5-22, 2 home runs, 2 walks, 11 strikeouts, .792 OPS, 95 wRC+

Also:5 stolen bases allowed, 2-for-4 on ABS challenges

Exit velocities(11 balls in play)
Average EV: 84.8 (378th)
EV50: 99.1 (271st)
Max EV: 105.3 (383rd)

Haase entered camp needing to make a strong case for himself if he wanted to win the backup catcher role. Unfortunately, he’s struggled to do that. While his OPS and wRC+ are fine thanks to his pair of home runs, it’s been a tough go of it for him this spring. He’s just 2-13 against non-Minor Leaguers, and is sporting a strikeout rate that is dangerously close to 50%. Despite the tie for the team lead in home runs, his batted ball data has been fairly grim. It certainly looks like he’ll be the third catcher, starting the year in AAA.

Parks Harber

vs. regulars: 2-9, 1 double, 1 hit by pitch, 3 strikeouts
vs. 40-mans: 2-8, 2 strikeouts
vs. NRIs: 1-3, 1 home run, 1 walk
vs. MiLBs: 1-2, 1 walk, 1 sac fly

Totals:6-22, 1 home run, 1 double, 2 walks, 1 hit by pitch, 1 sac fly, 5 strikeouts, .801 OPS, 102 wRC+

Also:1 stolen base, 1 error, 1-for-2 on ABS challenges

Exit velocities(17 balls in play)
Average EV: 94.6 (5th)
EV50: 103.6 (31st)
Max EV: 111.8 (143rd)

Like Davidson, Harber came to camp hoping to impress his future coaches and teammates, and get comfortable at the level for the future. The rising star prospect has yet to experience life in AA, so an Opening Day spot was never up for grabs. But he has absolutely impressed. While big league regulars and 40-man pitchers have mostly gotten the better of him, his exit velocities have been as impressive as his reputation said they would be. A very successful first camp.

Jake Holton

vs. regulars: 4-8, 1 home run, 1 double, 2 strikeouts
vs. 40-mans: 0-4
vs. NRIs: 2-9, 1 hit by pitch, 1 sac fly, 1 strikeout
vs. MiLBs: 1-4, 1 strikeout

Totals:7-25, 1 home run, 1 double, 1 hit by pitch, 1 sac fly, 4 strikeouts, .736 OPS, 81 wRC+

Exit velocities(22 balls in play)
Average EV: 84.0 (388th)
EV50: 95.6 (380th)
Max EV: 108.7 (311th)

Holton came to the Giants with hopes of seeing a higher level of baseball. He was promoted to the Detroit Tigers AA affiliate late in the 2022 season … and never made it past that level, spending three consecutive full seasons at the level. He’s shown some things in camp with the Giants, including nice numbers against MLB regulars. But on the whole, he hasn’t made too much of an impression. The batted ball data has been quite poor … in 31 plate appearances, he has just three triple-digits balls in play. Not quite what you hope for out of a first baseman, but Holton has shown some strong contact skills, and should make good depth in AAA.

Buddy Kennedy

vs. regulars: 0-4, 1 walk, 2 strikeouts
vs. 40-mans: 0-3, 1 walk, 1 strikeout
vs. NRIs: 5-11, 2 home runs, 1 triple, 1 sac fly, 1 strikeout
vs. MiLBs: 1-2

Totals:6-20, 2 home runs, 1 triple, 2 walks, 1 sac fly, 4 strikeouts, 1.048 OPS, 148 wRC+

Exit velocities(17 balls in play)
Average EV: 86.6 (343rd)
EV50: 95.2 (383rd)
Max EV: 103.0 (below the lowest figure of 104.2)

After many thousands of words, we finally get to a player who highlights why I track this data. Kennedy is having an awesome spring, as an OPS that doesn’t start with a decimal point suggests. But he’s done that damaage exclusively against pitchers who aren’t on Major League rosters: he’s 6-13 with three extra-base hits and just one strikeout against such pitchers, while hitting just 0-7 with three strikeouts against rostered arms. And that’s one of the reasons why he’ll be in AAA when the season begins.

Christian Koss

vs. regulars: 1-6, 2 walks, 1 strikeout
vs. 40-mans: 1-3, 1 walk, 1 strikeout
vs. NRIs: 2-4, 2 walks, 1 hit by pitch
vs. MiLBs: 2-4

Totals:6-17, 5 walks, 1 hit by pitch, 2 strikeouts, .875 OPS, 154 wRC+

Also:1 caught stealing

Exit velocities(15 balls in play)
Average EV: 87.1 (327th)
EV50: 99.6 (232nd)
Max EV: 104.4 (387th)

Koss also has performed much worse against the rostered pitchers, but it’s notable that he’s had a good chunk of playing time against them. It certainly seems that the current coaching staff values him as much as the previous one did, and that the front office still loves him. The numbers aren’t exciting, but he’s done nothing to suggest he’s lost his spot on the active roster. He’s missed a little time, but thankfully not due to injury: instead, due to his wife giving birth! Congratulations to the whole family.

Jung Hoo Lee

vs. regulars: 1-3
vs. 40-mans: 1-5
vs. NRIs: 1-1
vs. MiLBs: 2-3, 1 triple

Totals:5-12, 1 triple, 1.000 OPS, 157 wRC+

Also:2 outfield assists

Exit velocities (11 balls in play)
Average EV: 91.6 (50th)
EV50: 99.6 (232nd)
Max EV: 105.8 (380th)

We didn’t get to see much of Lee before he departed for the WBC, but what we did see was right on brand: he came to the plate 11 times, and 11 times he put the ball in play. Most noteworthy for Lee this spring is that he looked comfortable in right field, and that the Giants still used him as a backup in center field.

Luis Matos

vs. regulars: 3-9, 1 double, 1 walk, 2 hit by pitches, 1 strikeout
vs. 40-mans: 1-6, 1 home run, 1 hit by pitch
vs. NRIs: 3-8, 1 home run
vs. MiLBs: 1-5, 1 double

Totals:9-28, 2 home runs, 2 doubles, 1 walk, 3 hit by pitches, 1 strikeout, 1.013 OPS, 159 wRC+

Also:1 stolen base

Exit velocities(27 balls in play)
Average EV: 91.1 (76th)
EV50: 101.5 (114th)
Max EV: 110.0 (247th)

Matos entered camp needing a lot to go his way to break camp with the team. So far a lot has gone his way. Gilbert has been mediocre and injured, while Encarnación has not played up to his potential. And most importantly, Matos has played wonderfully, with an average in the 300s, an on-base percentage in the 400s, and a slugging percentage in the 600s. He’s done it against all levels of talent, and certainly is making a strong case that the Giants should keep him on the Opening Day roster, rather than losing him on waivers.

Grant McCray

vs. regulars: 2-6, 1 walk, 1 hit by pitch, 1 strikeout
vs. 40-mans: 0-3, 1 walk, 1 strikeout
vs. NRIs: 2-8, 1 home run, 3 walks, 1 sac fly, 2 strikeouts
vs. MiLBs: 1-5, 1 walk

Totals:5-22, 1 home run, 6 walks, 1 hit by pitch, 1 sac fly, 4 strikeouts, .764 OPS, 108 wRC+

Also:1 stolen base, 1 outfield assist, 1 error, 2-for-3 on ABS challenges

Exit velocities(19 balls in play)
Average EV: 87.1 (327th)
EV50: 103.5 (32nd)
Max EV: 108.5 (320th)

It’s been something of a funny spring for McCray, who has been making his mark by drawing free passes, which is not his usual way of doing business (in his Major League career he has a sky-high 42.9% strikeout rate, and just a 5.1% walk rate). He’s looked comfortable against all levels of pitchers, and has shown some pop: six of his 19 balls in play have been hit at at least 105 mph. He’s certainly in play for an Opening Day spot, though not the favorite.

Jared Oliva

vs. regulars: 4-11, 1 double, 1 hit by pitch, 2 strikeouts
vs. 40-mans: 1-4, 2 walks, 2 strikeouts
vs. NRIs: 3-8, 1 double, 3 strikeouts
vs. MiLBs: 1-1

Totals:9-24, 2 doubles, 2 walks, 1 hit by pitch, 7 strikeouts, .903 OPS, 143 wRC+

Also:7 stolen bases, 1 caught stealing, 0-for-1 on ABS challenges

Exit velocities(16 balls in play)
Average EV: 86.1 (356th)
EV50: 97.8 (324th)
Max EV: 109.4 (282nd)

Oliva has certainly impressed this spring, and it’s notable that he’s done well against MLB regulars. But as a 30-year old non-roster invitee, it seems that he is destined to begin the year in AAA. But he’s opened eyes — seven stolen bases! — and I fully expect to see him on the roster at some point this year.

Logan Porter

vs. regulars: n/a
vs. 40-mans: n/a
vs. NRIs: 0-3, 1 hit by pitch, 2 strikeouts
vs. MiLBs: 0-1

Totals:0-4, 1 hit by pitch, 2 strikeouts, .200 OPS, -25 wRC+

Also:2 runners thrown out, 1 stolen base allowed, 0-for-1 on ABS challenges

Exit velocities(2 balls in play)
Average EV: 77.1 (below the lowest figure of 83.1)
EV50: n/a
Max EV: 84.4 (below the lowest figure of 104.2)

Like Cartaya, Porter isn’t in camp with the opportunity to win a job. He’s there because they need lots of catchers, and so he can build rapport and familiarity with the pitchers for when he’s inevitably added to the roster sometime during the season when the team is dealing with injuries.

Heliot Ramos

vs. regulars: 3-5, 1 home run, 2 doubles, 1 walk, 1 hit by pitch
vs. 40-mans: 2-4, 1 hit by pitch, 1 strikeout
vs. NRIs: 2-2, 1 double
vs. MiLBs: n/a

Totals:7-11, 1 home run, 3 doubles, 1 walk, 2 hit by pitches, 1 strikeout, 1.896 OPS, 371 wRC+

Exit velocities(10 balls in play)
Average EV: 96.5 (above the highest mark of 95.8)
EV50: 105.2(7th)
Max EV: 107.7 (350th)

We only saw a brief bit of Ramos and his bleached hair before he headed off to help Puerto Rico in the WBC, but what we saw was electric. He had four extra-base hits in 14 plate appearances, with all four coming against right-handed pitchers, and three going to the opposite field. Half of the balls he put in play were hit at 102.6 mph or harder, and he made no foibles in the field or blunders on the bases. And he did all of that without facing any players on loan from Minor League camp.

Jesús Rodríguez

vs. regulars: 1-6, 1 double, 1 walk, 1 strikeout
vs. 40-mans: 2-6, 1 double, 1 walk, 2 strikeouts
vs. NRIs: 4-9, 1 home run, 1 double, 1 walk, 1 strikeout
vs. MiLBs: 1-1

Totals:8-22, 1 home run, 3 doubles, 3 walks, 4 strikeouts, 1.076 OPS, 176 wRC+

Also:2 stolen bases, 2 runners thrown out, 3 stolen bases allowed, 2-for-2 on ABS challenges

Exit velocities(18 balls in play)
Average EV: 93.0 (19th)
EV50: 101.0 (140th)
Max EV: 105.7 (381st)

It speaks to Rodríguez’s consistency that his average EV is so high, when his EV50 is more middle of the pack, and his max EV is near the very bottom. He just reliably hits the ball with decent, but not overwhelming velocity. The young catcher — who has also played second base and left field this spring — has shown why the Giants are enamored with his contact skills, but has also displayed that he’s probably not quite ready for the Majors. It doesn’t really feel like he’s been given a shot to win a roster spot.

Casey Schmitt

vs. regulars: 6-16, 4 strikeouts
vs. 40-mans: 0-7, 1 walk, 1 strikeout
vs. NRIs: 2-2, 1 double, 1 walk
vs. MiLBs: 1-4

Totals:9-29, 1 double, 2 walks, 5 strikeouts, .700 OPS, 85 wRC+

Also:1 stolen base

Exit velocities(24 balls in play)
Average EV: 89.3 (196th)
EV50: 100.0 (204th)
Max EV: 109.3 (284th)

It’s been a mild-mannered spring for Schmitt, but it’s clear how the organization feels about him. His splits are less about how he’s performed, and more about how much he’s performed: 24 of his 31 plate appearances have come against rostered pitchers. The Giants, it seems, view Schmitt as a starter who has just been forced into a bench role by better options. And while the numbers haven’t been particularly good, they haven’t been concerning, either.

Daniel Susac

vs. regulars: 0-7, 4 strikeouts
vs. 40-mans: 1-1
vs. NRIs: 4-10, 1 double, 1 strikeout
vs. MiLBs: 2-4, 1 double, 1 walk, 1 strikeout

Totals:6-22, 2 doubles, 1 walk, 6 strikeouts, .757 OPS, 96 wRC+

Also:1 runner thrown out, 5 stolen bases allowed, 1-for-5 on ABS challenges

Exit velocities(16 balls in play)
Average EV: 91.4 (55th)
EV50: 104.6 (11th)
Max EV: 108.8 (309th)

It’s been a spring of good and bad for Susac. On the one hand, his offensive numbers have been fairly pedestrian (though the would have been better had one of his doubles been correctly ruled a home run), and he’s been downright awful against rostered pitchers. On the other hand, he’s absolutely blistered the ball: seven of his 16 balls in play have exceeded 102 mph. He’s had baserunners take bags from him effectively, and been a bit of a mess with the challenge system, but he’s otherwise looked good defensively. Ultimately, Susac entered camp as the favorite to win the backup catcher job, and it sure looks like he’s going to do exactly that. That makes it a good spring for the Rule 5 pick.

Minor Leaguers

There’s no use doing full write-ups for the players on loan from Minor League camp, but here’s how they’ve done at the plate:

Maui Ahuna: 1-1, 1 double
Rod Barajas Jr.: 0-1
Trevor Cohen:1 walk
Jonah Cox: 0-2, 1 strikeout
Josuar González: 1-3, 1 strikeout
Dakota Jordan: 0-2, 1 strikeout
Gavin Kilen:0-1, 1 walk
Lorenzo Meola: 1 walk
Jean Carlos Sio: 2-5, 1 home run, 1 strikeout

Early fireworks fade as White Sox drop 8-4 decision to Angels

No "cautious optimism" needed here as Austin Hays is officially dialed in. | (David Durochik/Getty Images)

The White Sox dropped their second straight, this time 8-4 to the Angels. The bats showed up early, but the South Siders’ issues with stranding runners (2-for-18) continued. Their 4-0 early lead was gone in a blink, as the Halos rattled off eight straight runs and left the Sox staring at an 11-9 spring record.

The Good Guys got to Alek Manoah right out of the gate. Chase Meidroth took a walk, Colson Montgomery slapped a single, and then Austin Hays, still on his spring heater, drove a three-run shot to left. That’s three homers for Hays in the Cactus League. Enjoy it all now because if he keeps this up, he’s probably gone at the deadline.

Montgomery piled on in the third, yanking a 91.7 mph fastball 362 feet to right. 4-0 Sox, and for a fleeting moment, everything was feeling pretty good.

The wheels started to wobble in the fourth. Tristan Peters, fresh off robbing Logan O’Hoppe with a highlight-reel grab, doubled to start things off, and Korey Lee followed with a single. Lee’s all but punched his ticket to the roster with Kyle Teel out, and he’s been one of the few bright spots this spring. But with the bases juiced, Meidroth and Montgomery fizzled, and the Sox let the Angels right back in the door.

Anthony Kay did his job: four innings, one earned, four punchouts. But the bullpen? Not so much. Jo Adell finally broke through with a 469-foot moonshot in the fourth, but the real meltdown was still to come in the sixth.

Rule 5 flyer Alexander Alberto lit up the radar gun at 100, but couldn’t find the zone. Walk, stolen base, two straight singles, and suddenly the Angels were breathing down Chicago’s neck. Jake Palisch came in to put out the fire and instead handed Oswald Peraza the game-tying knock.

The Sox had a golden chance in the sixth, facing Angels blue-chipper Tyler Bremner making his debut. Bremner looked every bit the rookie, walking Lee and Oliver Dunn to open the inning. But the Good Guys went limp: Benintendi froze for strike three, then Meidroth and Montgomery rolled over. Another rally, dead on arrival.

The Halos took the lead for good in the seventh, teeing off on Tyler Gilbert with a Chris Taylor homer and back-to-back triples. The defense didn’t help matters, either, as Jason Matthews threw away two balls at third in the ninth, gifting the Angels an extra run.

The South Siders went down quietly in their half of the ninth. Jacob Gonzalez tried to get things going with a leadoff base hit, but the Sox quickly fizzled out, never threatening a real comeback.

The White Sox get another shot tomorrow night in Scottsdale, squaring off with the Giants under the lights. First pitch at 8:05 PM CT. Ryan Borucki takes the ball for the Good Guys, looking to keep his spotless spring rolling against a Giants squad steamrolling at 14-3.


Cole Young has three-hit day including massive homer in 11-7 loss to Rockies

GLENDALE, ARIZONA - FEBRUARY 23: Cole Young #2 of the Seattle Mariners bats during a spring training game against the Los Angeles Dodgers at Camelback Ranch on February 23, 2026 in Glendale, Arizona. (Photo by Chris Coduto/Getty Images) | Getty Images

If you take out the eight runs given up by Casey Lawrence in the final three innings, this game is a decisive win for the Mariners, and I invite you to live in that reality instead of this one, where the Mariners lose 11-7 to the Colorado Rockies, which even in Spring Training, feels embarrassing. But let us focus on some individual strong performances today: a solid start from Luis Castillo in his third spring tuneup, a great day by Cole Young, and some very strong performances from the bullpen.

Castillo got some of his signature Houdini moves out of the way early in this one. Leadoff hitter Tyler Freeman singled on Castillo’s second pitch of the game and then immediately stole second, advancing to third on an overthrow by Mitch Garver to put a runner on third with no outs. Despite a walk to Charlie Condon, Castillo was able to wiggle out of trouble with an easy popout, a strikeout on the slider, and a flyout to deny the Rockies a high-percentage-chance score.

Unfortunately Castillo’s occasional homer problem also cropped up in this game, with Adael Amador dropping the barrel on a 93.4 mph fastball right in the lefty loop zone for a solo homer to lead off the second. Castillo was able to cap the damage there, however, despite a Nicky Lopez double.

The Mariners got that run right back for Castillo in the bottom of the inning. J.P. Crawford looped an opposite field single (a beautiful sentence, that) and Cole Young drove him home on an opposite-field double, a very satisfying pair of hits.

Connor Joe then drove a pitch right back at Rockies starter Chase Dollander, using that up-the-middle approach he’s been showing off this spring and both getting a double out of it and scoring Young from second to give the Mariners a 2-1 advantage.

But the Rockies continued to swing it against Castillo, who dealt with runners in scoring position in every inning. Brett Sullivan doubled on a slider in the third, eventually coming around to score on a sacrifice fly to tie up the game.

Chase Dollander had some command issues in the third, hitting Refsnyder and Garver, neither of whom were happy about it (Garver had the stronger complaint about it, getting 97 right on the back). A wild pitch moved them both into scoring position, and then J.P. Crawford checked in with yet another opposite-field hit to score Refsnyder. Cole Young then took 98.5 right back where it came from, smoking an RBI single at 105.8 mph right up the middle over the second baseman’s head to double up the lead on the Rockies, 4-2.

Luis Castillo pitched to one batter in the fourth inning, getting Amador—who had homered earlier—to ground out, and then José Ferrer took over. Ferrer looked nasty, striking out the two hitters he faced.

In the fifth we got to see our first Matt Brash appearance of the spring. Brash, whose slider command looked a little wonky, got a pair of soft-contact lineouts before the third one dropped for a base hit. Dan Wilson then brought in Carlos Vargas and Charlie Condon greeted him rudely, turning on a sinker well inside and just muscling it down the left-field line for an RBI double. That was poor luck, but walking Troy Johnston on five pitches was bad process. To his credit, Vargas was able to bounce back and strike out Braxton Fulford, which is not a name of a baseball player but a company that sells commemorative plates, getting him swinging after a 96 mph cutter up.

The Mariners were able to add a run in the sixth, thanks to Colt Emerson smoking a line-drive single and then stealing second base. Rhylan Thomas then drove him home on a double. But the Rockies struck right back against Casey Lawrence in the seventh, tagging him for three runs on some hard contact and giving the Rockies a 6-5 advantage.

One of those runs had come thanks to an error on new shortstop Brock Rodden, and the normally sure-handed Brockstar made up for it in the seventh by sending a Brocket to the moon for a game-tying solo home run. Because he is secretly very selfish and look-at-me and not the nice humble scion of Pittsburgh he pretends to be*, Cole Young immediately trumped that with a majestic moonshot of his own that made me say “jeebus” out loud in the press box. 108.7 off the bat! Cole Young is a power hitter, tell your friends.

*this is A Joke do not come for meCole Cultists

Unfortunately, Casey Lawrence couldn’t stop the onslaught of runs from the Rockies B-squad. He gave up a three-run tank in the eighth to put the Rockies up 9-7, and another two-run shot in the ninth to put the game well out of reach, and that’s all that needs to be said about that. Just watch the Cole Young homer a few more times.

Other notes:

  • Colt Emerson got the start at third today and made a solid catch on a sun ball in the first. In the third, he made a nice charging play on a slow-rolling (58.2 EV) grounder to get the runner at first.
  • Victor Robles worked a walk in the first inning, which is very good to see. He did get thrown out running from first to third on a single, which was less good, but it was nice to see Victor flying around the bases again.
  • Rob Refsnyder checked in with a solid base hit off righty Chase Dollander, whose name I promise I only said like Ilya saying “Hollander” a couple of times to myself in the press box.
  • Michael Arroyo, freshly returned from the WBC, got into the game in the sixth, playing in left field. He didn’t get to do much at the plate because he had to wait a while to get a turn to bat, and then in his second at-bat he got hit square in the back with a pitch. He got a challenge in LF in the eighth inning, but wasn’t able to reel in what would have been a very very tough catch on a ball slicing quickly to his right. He made a good effort though!
  • In the sixth, Cole Young made a play where he had to go to his right, which was a problem for him last year, and although it was routine, it came off the bat at 107 mph and he fielded the ball cleanly and made a solid throw to first. He then made a similar, even more difficult play like that in the seventh, ranging even further to his right and making a nice cross-body throw. This has been a problem for Young in the past so it’s good to see.
  • Yosver Zulueta pitched another scoreless inning, adding another two strikeouts, and continues to be quietly very good this spring.
  • Connor Joe tripled in the home run parade of the seventh but was stranded at third. The ball came off his bat at 102.3 mph for another hard-hit ball from Joe, who is just smacking the ball around this spring in a way his ice-blue Statcast sliders would belie. I talked to Joe today a little about how he’s liking Mariner camp and what he feels like he might have unlocked here so keep an eye out for that soon-ish.

Brewers fall to Reds, 6-3, as Robert Gasser struggles

Milwaukee Brewers pitcher Craig Yoho (48) is shown in the bullpen during the ninth inning of their game against the Philadelphia Phillies Monday, September 1, 2025 at American Family Field in Milwaukee, Wisconsin.Mark Hoffman/Milwaukee Journal Sentinel | Mark Hoffman / Milwaukee Journal Sentinel / USA TODAY NETWORK via Imagn Images

Box Score

The Brewers dropped their second straight spring game Wednesday afternoon, dropping back below .500 at 8-9. The Reds attacked early, scoring four runs off starter Robert Gasser in the 6-3 win.

After Sal Frelick started the day striking out at the hands of Andrew Abbott, Andrew Vaughn walked, and Gary Sánchez followed with a two-run homer to make it 2-0 quickly. The Brewers were able to get another pair of runners in the form of singles by Luis Rengifo and David Hamilton, but Abbott struck out two more to get out of the inning without further damage.

Gasser also started his day with a strikeout, but Matt McLain followed with his fifth homer of the spring to cut the lead in half. Tyler Stephenson doubled but was stranded there as Milwaukee led 2-1 after an inning.

In the second, Milwaukee’s youngsters Luis Lara and Jesús Made both singled, but Lara was picked off at second, and Frelick grounded into a double play to end the threat.

Noelvi Marte led off the second with another homer off Gasser, and two batters later, Jose Trevino added to the home run party to make it 3-2.

After a scoreless third, the Reds tacked on two more in the bottom of the inning, as Gasser gave up a single before striking out the next two. Jesús Broca replaced him and promptly allowed a walk and a two-run double to extend Cincinnati’s lead to 5-2 after three.

Both teams traded scoreless innings in the fourth and fifth, including a caught stealing at home by the Brewers’ defense — the Reds tried to execute a double steal from first and third, but Milwaukee cut McLain down between third and home.

The Brewers tacked on a third run via a Reese McGuire homer in the sixth, his first of the spring. Lara was then hit by a pitch but proceeded to be picked off for the second time on the basepaths.

The Reds added one more run on a pair of singles and a double in the eighth, bringing this one to a 6-3 final.

It wasn’t a great day for the Crew, but there were a few bright spots. Sánchez went 2-for-3 with a homer, and McGuire added a homer of his own. Eight Brewers totaled nine hits on the day, and they also added five walks.

On the mound, Gasser struggled through 2 2/3 innings, allowing four runs on five hits with four strikeouts. Jared Koenig, Trevor Megill, Grant Anderson, and Craig Yoho combined to hold Cincinnati to no runs from the fourth through the seventh, with Megill and Yoho each striking out a pair.

The Brewers are back in action tomorrow as they have their first night game of the spring. They’ll visit the Cleveland Guardians, with first pitch set for 8:05 p.m. CT.

Arizona Diamondbacks 3, Athletics 13

SCOTTSDALE, AZ - FEBRUARY 23: A general view during the game between the Arizona Diamondbacks and the Colorado Rockies at Salt River Fields at Talking Stick on Friday, February 23, 2018 in Scottsdale, Arizona. (Photo by Alex Trautwig/MLB via Getty Images) | MLB via Getty Images
Record 8-11. Change on 2025: -0.5. 5-inning record: 4-13-2.

A new record-holder for the worst margin of defeat this spring, the Arizona pitching staff giving up 14 hits and two walks. To be fair, there were four unearned runs, resulting from errors by Pavin Smith and Kevin Ginkel. But even nine earned runs… is not good. Philip Abner was the only pitcher to go an inning without allowing an earned run. Elsewhere, it was more or less rough outings all over the place. Thomas Hatch allowed five runs over two innings, while both Ryan Thompson and Ginkel gave up two. Ryne Nelson ended up – with the help of some up/downs – going 3.1 innings, and was charged with three runs on two hits (both homers) and a walk. He did strike out four.

The Diamondbacks actually took the lead, on Ildemaro Vargas’s debut home-run of spring in the first inning, and added a second in the second, after loading the bases with no outs. Junior Franco’s groundout scored Aramis Garcia with the second run. But a messy double-play – first baseman to second baseman to catcher to pitcher to second baseman to shortstop Jacob Wilson to first baseman, Óscar Mercado out at home – summed up the day. Arizona managed only five hits and two walks, with a pair of knocks for Vargas. Corbin Carroll, in his hamate-less return, went 0-for-3 with a strikeout. But he’s back, and that’s the main thing.

Tomorrow, it’s the Rockies at Salt River Fields, though it is theoretically a “road” game for the Diamondbacks. Taylor Clarke is the scheduled starting pitcher.

GameThread: Italy @ Mexico And Jays @ Yankees

HOUSTON, TEXAS - MARCH 06: Jonathan Aranda #8 of the Mexico celebrates with teammates after a three run home run in the eighth inning during the 2026 World Baseball Classic Pool B game between Mexico and Great Britain at Daikin Park on March 06, 2026 in Houston, Texas. (Photo by Kenneth Richmond/Getty Images) | Getty Images

Jays @ Yankees is starting now.

Lineups:

Today’s Lineups

BLUE JAYSYANKEES
Myles Straw – CFTrent Grisham – CF
Nathan Lukes – DHRandal Grichuk – LF
Jesus Sanchez – RFCody Bellinger – 1B
Eloy Jimenez – LFGiancarlo Stanton – DH
Brandon Valenzuela – CJazz Chisholm – 2B
Rafael Lantigua – 2BJose Caballero – SS
Sean Keys – 1BRyan McMahon – 3B
Arjun Nimmala – SSOswaldo Cabrera – RF
Charles McAdoo – 3BAli Sanchez – C
Eric Lauer – LHPCam Schlittler – RHP

So, if Mexico wins and scores 4 or fewer runs, the US is out. So ummm, Go Mexico Go…but don’t go too much. Just go enough. 1-0 wins are great.

Italy has Aaron Nola starting. He had a rough year for the Phillies last year.

Javier Assad for Mexico, he made 7 starts for the Cubs last year.

On the Mexico side:

Astros News & Notes: Imai, Javier, McCullers, More

WEST PALM BEACH, FLORIDA - FEBRUARY 22: Tatsuya Imai #45 of the Houston Astros looks on prior to a spring training game against the St. Louis Cardinals at CACTI Park of the Palm Beaches on February 22, 2026 in West Palm Beach, Florida. (Photo by Rich Storry/Getty Images) | Getty Images

Tatsuya Imai said a small adjustment has helped him find more velocity this spring:

SP Cristian Javier will be away from the team for a few days due to a personal matter:

Brian McTaggart of MLB.com identifies 5 players he thinks have a good shot to make the Opening Day roster

Lance McCullers Jr. on his outing yesterday: