HomeSportsBaseball2025 ZiPS Projections: Miami Marlins

2025 ZiPS Projections: Miami Marlins

For the 21st consecutive season, the ZiPS projection system is unleashing a full set of prognostications. For more information on the ZiPS projections, please consult this year’s introduction and MLB’s glossary entry. The team order is selected by lot, and the next team up is the Miami Marlins.

Batters

Building a good offensive team on the cheap is something that can be done, but it’s definitely not anything the Marlins have ever been able to do consistently. In the franchise’s more than 30 years of existence, it has had a wRC+ of at least 100 exactly twice, in 2007 and 2017. The Marlins did come close during their two championship seasons (wRC+ of 99 in both 1997 and 2003), but putting together a great lineup from within just has not been in the organization’s DNA.

That’s not likely to change in 2025. In Miami’s defense, its projected lineup – with some optimism in the health department – isn’t truly dreadful anywhere. There’s a real lack of zero-point-somethings on the depth chart graphic below, which is a nice thing. But if there’s a real lack of zeroes, there’s also a critical shortage of twos and threes, let alone the fours and fives that drive teams to division titles and playoff spots.

It’s also troubling that the brighter spots in the projections are not the players the Marlins have actually developed. They traded with the Rays for Xavier Edwards, a former first-round pick by the Padres. Jonah Bride came from the A’s, Connor Norby from the Orioles, Jesús Sánchez from the Cardinals, and Jake Burger from the White Sox. Defensive-minded minor league catcher Joe Mack is the only one of Miami’s top 10 projected position players that the organization developed in any meaningful way.

Now, getting quality players from other teams isn’t a bad thing, but it’s hard to build mainly on trades. After all, you have to give players of value to get those players of value, so unless you’re absolutely blitzing the other side in trades, like a 10-year-old trading baseball cards with a five-year-old sibling, you’re mostly rearranging value in an efficient way rather than adding value.

These players acquired in trades, few with any plausible superstar upside, would ideally complement a foundation of homegrown talent. But since the departure of the Giancarlo Stanton/Marcell Ozuna/Christian Yelich outfield troika, that foundation has not been there, and that won’t change any time soon, either. ZiPS projects Agustin Ramirez, who also was not developed by the team, to be a 2-3 WAR player for several years at his peak, but outside of him, there’s just not much there.

If this were a team like the Rangers or Braves, I’d say “remember, this is an early offseason projection.” But not so with the Marlins. Sure, they may sign a couple of 34-year-old players who peaked in the 2010s to one-year, $8 million contracts or something like that, but they won’t actually make the lineup better. There’s almost no chance that the Marlins sign real difference makers.

Pitchers

For as bad as they are with their offense, the Marlins are quite good at developing pitchers. As a result, they generally turn to their pitchers to compensate for the underwhelming offenses they put together.

Sandy Alcantara returns to the top of the rotation, but considering he’s coming back from Tommy John surgery, I wouldn’t quite expect him to pitch as many innings as Depth Charts projects (189).

After Alcantara, the Marlins have plenty of other talented pitchers, many of whom have had significant injury problems of their own. Six of the top seven starters project to be about league average or better than that. The seventh, Max Meyer, has a solid projected upside. The question, of course, is health, and when I actually run the seasonal projections, a lot of those pitchers are projected to have innings totals, on average, in the low triple digits.

Even with losses such as Tanner Scott, the Marlins’ bullpen projects to be solid, though it remains to be seen how many leads their relievers will actually get to protect. Anthony Bender, Andrew Nardi, and Jesus Tinoco in particular get strong projections, but you have to go a ways down the depth chart to find relievers whose projected ERA+ is far below 100. Also, how does someone named Andrew Nardi not have the Nard Dog nickname?

Should the Marlins have better luck with the health of the pitching staff, they could get just enough from their offense to squeeze into the playoffs. For that to happen, though, they’d probably need other teams to underperform so they could secure a wild card spot despite having a relatively low win total. That’s how Miami made the playoffs in 2023 and 2020. As far as team goals go, it’s a rather depressing one, but until the Marlins get better at drafting and developing position players or decide to spend more in free agency, this is the organization’s best case scenario.

Ballpark graphic courtesy Eephus League. Depth charts constructed by way of those listed here. Size of player names is very roughly proportional to Depth Chart playing time.

Batters – Advanced

Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Xavier Edwards 461 .287 .349 .368 98 .080 .334 -1 2.0 .317 97 60
Jonah Bride 516 .240 .344 .377 98 .137 .282 3 2.0 .321 97 57
Connor Norby 612 .254 .317 .424 101 .169 .332 -4 1.7 .321 104 78
Jesús Sánchez 501 .258 .324 .447 109 .189 .318 3 1.7 .332 109 68
Jake Burger 562 .252 .306 .469 109 .217 .299 -6 1.7 .331 107 75
Otto Lopez 461 .275 .324 .381 93 .106 .329 4 1.7 .310 93 57
Joe Mack 530 .225 .287 .363 77 .138 .288 7 1.6 .285 84 51
Agustin Ramirez 509 .241 .308 .406 95 .165 .279 -6 1.4 .311 100 61
Derek Hill 373 .259 .306 .411 95 .152 .343 1 1.2 .310 93 46
Jared Serna 568 .233 .292 .365 80 .133 .275 3 1.1 .289 84 60
Javier Sanoja 602 .268 .312 .367 86 .099 .285 -2 1.0 .297 88 70
Dane Myers 385 .255 .317 .396 95 .140 .339 3 0.8 .312 91 47
Kyle Stowers 460 .236 .309 .430 100 .194 .313 1 0.8 .320 102 55
Griffin Conine 491 .227 .301 .393 89 .166 .331 5 0.7 .303 91 52
Johnny Olmstead 525 .232 .286 .365 78 .134 .280 0 0.7 .285 81 53
Nick Fortes 334 .231 .285 .343 72 .112 .255 4 0.6 .277 72 31
Deyvison De Los Santos 577 .253 .289 .428 94 .176 .315 4 0.6 .308 99 68
Troy Johnston 516 .253 .314 .388 92 .134 .308 4 0.6 .307 92 60
David Hensley 417 .239 .324 .363 89 .125 .333 5 0.6 .305 89 46
Ali Sánchez 281 .234 .288 .328 69 .094 .299 4 0.6 .273 70 25
Cristian Pache 280 .223 .298 .330 73 .108 .321 5 0.5 .280 72 26
Jhonny Pereda 255 .254 .326 .341 84 .088 .319 -2 0.5 .298 84 26
Jakob Marsee 563 .202 .310 .308 71 .106 .261 0 0.4 .282 76 53
Victor Mesa 472 .232 .283 .355 74 .124 .288 4 0.4 .280 79 46
Graham Pauley 513 .220 .291 .361 78 .140 .273 2 0.4 .286 81 51
Jonathan Davis 292 .219 .309 .325 75 .106 .309 7 0.4 .286 71 28
Shane Sasaki 331 .258 .327 .352 87 .094 .374 1 0.4 .302 90 38
Colby Shade 503 .212 .287 .319 66 .107 .321 4 0.3 .272 71 48
Tim Anderson 376 .271 .303 .340 77 .070 .352 -2 0.3 .284 76 40
Vidal Bruján 373 .232 .304 .345 78 .113 .277 -1 0.2 .286 81 42
Josh Zamora 435 .215 .270 .335 65 .120 .256 6 0.2 .267 71 36
Marty Costes 286 .252 .329 .338 84 .087 .308 1 0.1 .300 84 30
Mark Coley II 494 .196 .279 .348 71 .151 .301 -2 0.1 .278 76 47
Wilfredo Lara 443 .220 .284 .339 71 .119 .286 -2 0.0 .275 76 42
Jose Devers 317 .232 .282 .334 69 .102 .283 1 0.0 .272 70 29
Jorge Caballero 287 .244 .317 .322 77 .078 .368 3 0.0 .288 77 28
Jacob Thompson 281 .240 .310 .377 88 .138 .315 0 0.0 .303 90 30
Nick Gordon 359 .254 .293 .404 89 .150 .312 0 0.0 .301 89 43
Ryan Ignoffo 403 .241 .280 .349 72 .109 .271 -4 0.0 .274 74 40
Avisaíl García 316 .231 .288 .376 81 .145 .301 0 -0.2 .289 76 32
Carlos Santiago 224 .213 .254 .356 65 .142 .307 1 -0.2 .263 72 20
Sean Roby 282 .207 .262 .361 69 .153 .306 -1 -0.3 .272 68 25
Tony Bullard 285 .216 .281 .286 57 .070 .284 2 -0.4 .256 60 23
Paul McIntosh 417 .220 .300 .349 78 .129 .274 -11 -0.4 .288 80 40
Andrew Pintar 437 .218 .286 .315 65 .096 .287 -1 -0.4 .268 71 39
Gage Miller 123 .211 .252 .255 40 .044 .270 0 -0.5 .227 46 8
Osiris Johnson 283 .208 .249 .311 53 .102 .273 1 -0.6 .246 55 23
Diego Infante 366 .247 .303 .348 79 .101 .372 -3 -0.6 .288 80 38
Cameron Barstad 259 .195 .263 .314 58 .119 .348 -4 -0.6 .255 62 20
Andrew Fernandez 79 .151 .203 .260 26 .110 .272 -3 -0.7 .205 27 4
Sam Praytor 198 .187 .261 .300 54 .113 .247 -5 -0.7 .252 57 14
Ynmanol Mariñez 372 .201 .250 .285 47 .083 .296 4 -0.8 .238 52 25
Torin Montgomery 321 .219 .296 .309 67 .090 .333 -1 -0.8 .273 72 27
Nathan Martorella 531 .216 .281 .349 72 .133 .253 0 -1.0 .277 78 48
Brett Roberts 276 .212 .252 .305 52 .093 .295 1 -1.0 .245 59 21
Zach Zubia 331 .194 .293 .319 69 .125 .288 -3 -1.1 .275 69 27
Harrison Spohn 380 .186 .245 .286 46 .100 .287 0 -1.1 .237 49 27
Cody Morissette 435 .193 .244 .305 50 .112 .254 1 -1.1 .242 54 32
Kemp Alderman 337 .213 .258 .346 64 .133 .281 -1 -1.1 .263 68 29
Bennett Hostetler 320 .217 .273 .322 63 .105 .317 -8 -1.2 .264 62 27
Tanner Allen 294 .211 .267 .307 58 .096 .260 -2 -1.2 .256 57 24
Chase Luttrell 262 .188 .234 .288 43 .100 .274 2 -1.3 .231 47 17
Cristhian Rodriguez 260 .177 .240 .236 32 .059 .313 -1 -1.4 .217 36 15
Dalvy Rosario 379 .214 .254 .294 50 .080 .313 -3 -1.4 .242 55 30
Jacob Berry 498 .223 .275 .334 67 .111 .278 -3 -1.4 .268 70 44
Yiddi Cappe 413 .207 .245 .271 42 .064 .279 2 -1.6 .229 47 30
Jay Beshears 473 .202 .264 .273 49 .072 .274 -6 -1.7 .242 54 33
Jonathan Guzman 309 .179 .227 .239 29 .060 .256 0 -1.7 .210 29 17
Jake DeLeo 385 .196 .245 .274 43 .078 .299 0 -1.9 .232 49 27
Brock Vradenburg 494 .183 .263 .283 50 .100 .273 -6 -2.9 .247 56 37

Batters – Top Near-Age Offensive Comps

Batters – 80th/20th Percentiles

Player 80th BA 80th OBP 80th SLG 80th OPS+ 80th WAR 20th BA 20th OBP 20th SLG 20th OPS+ 20th WAR
Xavier Edwards .316 .379 .408 116 3.0 .256 .323 .326 81 0.9
Jonah Bride .268 .369 .429 118 3.2 .214 .316 .328 78 0.7
Connor Norby .285 .345 .472 122 3.3 .227 .290 .369 79 0.2
Jesús Sánchez .288 .350 .501 128 3.0 .233 .298 .399 91 0.6
Jake Burger .277 .332 .522 129 3.1 .226 .282 .413 89 0.4
Otto Lopez .305 .354 .424 112 2.7 .245 .293 .336 74 0.6
Joe Mack .253 .313 .415 95 2.7 .200 .258 .321 61 0.5
Agustin Ramirez .270 .336 .463 113 2.6 .214 .281 .355 74 0.2
Derek Hill .291 .337 .464 117 2.2 .232 .278 .360 73 0.2
Jared Serna .262 .319 .409 98 2.3 .204 .265 .320 62 -0.2
Javier Sanoja .298 .343 .415 107 2.6 .241 .285 .333 70 -0.2
Dane Myers .287 .348 .446 114 1.7 .226 .288 .343 72 -0.2
Kyle Stowers .262 .333 .486 120 1.9 .209 .280 .374 79 -0.4
Griffin Conine .252 .323 .449 110 1.9 .196 .274 .341 68 -0.6
Johnny Olmstead .260 .313 .402 94 1.7 .207 .260 .319 58 -0.5
Nick Fortes .263 .316 .396 94 1.5 .200 .255 .297 52 -0.2
Deyvison De Los Santos .279 .314 .480 114 2.0 .229 .266 .384 76 -0.6
Troy Johnston .281 .344 .432 112 1.9 .226 .291 .343 75 -0.4
David Hensley .264 .350 .408 106 1.5 .210 .293 .319 70 -0.4
Ali Sánchez .266 .319 .369 88 1.2 .200 .252 .278 47 -0.2
Cristian Pache .253 .325 .373 91 1.1 .193 .271 .286 55 -0.1
Jhonny Pereda .282 .357 .384 103 1.0 .223 .297 .300 65 -0.1
Jakob Marsee .226 .336 .355 89 1.7 .177 .283 .269 54 -0.8
Victor Mesa .259 .310 .397 92 1.5 .203 .259 .307 56 -0.6
Graham Pauley .244 .312 .405 94 1.5 .195 .264 .320 61 -0.7
Jonathan Davis .250 .338 .375 95 1.1 .191 .276 .280 55 -0.4
Shane Sasaki .294 .359 .407 109 1.2 .228 .296 .311 68 -0.4
Colby Shade .237 .307 .360 83 1.3 .185 .266 .279 52 -0.7
Tim Anderson .306 .337 .381 96 1.2 .242 .277 .302 59 -0.6
Vidal Bruján .257 .330 .394 97 1.2 .207 .277 .305 60 -0.6
Josh Zamora .242 .298 .378 83 1.1 .190 .245 .287 47 -0.9
Marty Costes .286 .359 .382 103 0.8 .227 .303 .301 69 -0.4
Mark Coley II .226 .308 .405 93 1.3 .169 .256 .293 51 -1.0
Wilfredo Lara .244 .310 .388 88 1.0 .194 .260 .295 52 -0.9
Jose Devers .265 .313 .389 89 0.8 .204 .254 .289 49 -0.8
Jorge Caballero .279 .347 .366 96 0.7 .214 .284 .277 56 -0.7
Jacob Thompson .265 .333 .428 106 0.6 .207 .281 .328 66 -0.7
Nick Gordon .282 .321 .460 110 0.9 .224 .265 .354 68 -1.0
Ryan Ignoffo .270 .310 .394 91 0.9 .211 .249 .300 51 -1.1
Avisaíl García .263 .319 .433 103 0.7 .201 .258 .325 61 -0.9
Carlos Santiago .241 .280 .417 90 0.4 .184 .227 .303 47 -0.7
Sean Roby .233 .292 .416 90 0.5 .183 .237 .312 51 -0.9
Tony Bullard .244 .307 .330 75 0.3 .190 .251 .248 38 -0.9
Paul McIntosh .251 .331 .400 100 0.7 .193 .269 .301 59 -1.4
Andrew Pintar .248 .311 .360 84 0.6 .196 .261 .279 51 -1.2
Gage Miller .248 .285 .302 61 -0.2 .179 .222 .211 21 -0.8
Osiris Johnson .239 .280 .357 71 0.1 .184 .222 .269 34 -1.2
Diego Infante .278 .331 .397 97 0.2 .215 .272 .300 57 -1.6
Cameron Barstad .226 .296 .365 78 0.0 .167 .233 .269 37 -1.3
Andrew Fernandez .178 .233 .313 44 -0.5 .124 .178 .216 8 -0.8
Sam Praytor .213 .289 .357 76 -0.1 .161 .234 .255 38 -1.1
Ynmanol Mariñez .229 .275 .329 65 -0.1 .174 .219 .245 30 -1.6
Torin Montgomery .244 .323 .350 83 -0.2 .188 .268 .269 47 -1.6
Nathan Martorella .242 .306 .398 90 0.2 .189 .254 .302 53 -2.2
Brett Roberts .242 .287 .355 73 -0.3 .185 .225 .262 36 -1.6
Zach Zubia .225 .322 .368 89 -0.3 .168 .264 .277 50 -1.8
Harrison Spohn .211 .269 .330 63 -0.3 .157 .220 .239 27 -1.9
Cody Morissette .221 .271 .361 70 0.0 .168 .218 .265 34 -2.0
Kemp Alderman .242 .288 .400 86 -0.2 .187 .231 .301 46 -1.9
Bennett Hostetler .247 .298 .371 81 -0.5 .193 .245 .280 44 -1.9
Tanner Allen .236 .296 .347 75 -0.6 .188 .244 .267 42 -1.8
Chase Luttrell .217 .264 .331 60 -0.7 .162 .205 .246 23 -1.9
Cristhian Rodriguez .211 .274 .281 53 -0.7 .150 .212 .197 15 -1.9
Dalvy Rosario .243 .284 .335 69 -0.5 .186 .228 .258 34 -2.2
Jacob Berry .250 .302 .375 84 -0.3 .195 .253 .287 48 -2.5
Yiddi Cappe .233 .269 .309 58 -0.7 .179 .218 .237 26 -2.4
Jay Beshears .228 .294 .316 65 -0.6 .175 .239 .238 32 -2.6
Jonathan Guzman .207 .259 .278 46 -1.0 .154 .202 .208 13 -2.3
Jake DeLeo .228 .275 .320 62 -1.0 .172 .221 .236 28 -2.7
Brock Vradenburg .212 .291 .326 68 -1.8 .159 .236 .247 33 -3.9

Batters – Platoon Splits

Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Xavier Edwards .291 .350 .372 .285 .349 .365
Jonah Bride .245 .357 .374 .238 .336 .379
Connor Norby .257 .320 .439 .253 .315 .416
Jesús Sánchez .246 .303 .402 .262 .332 .464
Jake Burger .257 .313 .492 .249 .302 .457
Otto Lopez .281 .335 .395 .271 .318 .372
Joe Mack .215 .277 .323 .228 .291 .377
Agustin Ramirez .248 .318 .433 .238 .304 .395
Derek Hill .269 .318 .445 .254 .300 .393
Jared Serna .237 .299 .375 .231 .289 .361
Javier Sanoja .275 .321 .385 .264 .308 .357
Dane Myers .266 .331 .422 .249 .309 .380
Kyle Stowers .231 .302 .420 .239 .312 .437
Griffin Conine .216 .284 .359 .233 .311 .410
Johnny Olmstead .238 .294 .381 .229 .283 .358
Nick Fortes .243 .299 .374 .224 .277 .327
Deyvison De Los Santos .256 .295 .439 .251 .287 .423
Troy Johnston .241 .302 .355 .260 .320 .405
David Hensley .253 .345 .387 .228 .309 .347
Ali Sánchez .234 .291 .351 .235 .287 .315
Cristian Pache .245 .325 .373 .206 .276 .298
Jhonny Pereda .256 .333 .337 .252 .321 .343
Jakob Marsee .191 .298 .282 .206 .314 .318
Victor Mesa .231 .280 .346 .232 .284 .361
Graham Pauley .216 .288 .344 .222 .292 .367
Jonathan Davis .221 .320 .326 .219 .304 .325
Shane Sasaki .263 .340 .368 .256 .321 .345
Colby Shade .218 .291 .338 .208 .284 .309
Tim Anderson .287 .321 .356 .265 .296 .335
Vidal Bruján .229 .303 .344 .234 .304 .346
Josh Zamora .225 .282 .367 .211 .265 .321
Marty Costes .255 .333 .337 .250 .326 .340
Mark Coley II .194 .282 .338 .197 .278 .352
Wilfredo Lara .226 .292 .355 .218 .281 .332
Jose Devers .222 .278 .311 .236 .284 .345
Jorge Caballero .250 .337 .321 .241 .307 .322
Jacob Thompson .229 .308 .343 .245 .310 .391
Nick Gordon .244 .284 .390 .258 .296 .409
Ryan Ignoffo .246 .293 .377 .239 .275 .337
Avisaíl García .241 .304 .386 .227 .281 .372
Carlos Santiago .217 .260 .348 .211 .252 .359
Sean Roby .216 .283 .371 .201 .250 .354
Tony Bullard .224 .287 .306 .213 .277 .276
Paul McIntosh .226 .307 .371 .218 .296 .339
Andrew Pintar .218 .288 .328 .218 .285 .309
Gage Miller .211 .262 .237 .211 .247 .263
Osiris Johnson .207 .253 .315 .209 .247 .308
Diego Infante .246 .313 .338 .248 .297 .354
Cameron Barstad .191 .257 .279 .196 .265 .327
Andrew Fernandez .160 .222 .320 .146 .192 .229
Sam Praytor .203 .288 .356 .178 .246 .271
Ynmanol Mariñez .211 .266 .308 .195 .240 .270
Torin Montgomery .225 .310 .337 .216 .290 .296
Nathan Martorella .208 .268 .315 .219 .285 .362
Brett Roberts .218 .256 .321 .210 .250 .298
Zach Zubia .204 .313 .327 .189 .282 .316
Harrison Spohn .190 .254 .305 .184 .241 .278
Cody Morissette .190 .243 .278 .195 .245 .318
Kemp Alderman .225 .273 .382 .207 .251 .329
Bennett Hostetler .220 .280 .321 .215 .269 .323
Tanner Allen .205 .258 .301 .214 .271 .310
Chase Luttrell .185 .232 .262 .189 .234 .297
Cristhian Rodriguez .169 .234 .225 .181 .243 .241
Dalvy Rosario .214 .257 .313 .214 .252 .282
Jacob Berry .227 .275 .333 .222 .275 .334
Yiddi Cappe .208 .250 .264 .207 .242 .274
Jay Beshears .205 .269 .280 .200 .262 .270
Jonathan Guzman .183 .234 .260 .177 .223 .227
Jake DeLeo .198 .252 .288 .194 .242 .267
Brock Vradenburg .171 .237 .268 .188 .273 .288

Pitchers – Advanced

Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Sandy Alcantara 157.1 7.7 2.1 0.9 5.6% 20.8% .284 125 122 3.52 80 3.3
Braxton Garrett 106.1 8.1 2.3 1.1 6.1% 21.5% .300 112 112 3.95 89 1.8
Eury Pérez 90.2 9.4 2.8 1.3 7.3% 24.9% .285 116 119 3.94 86 1.7
Jesús Luzardo 108.1 9.3 3.2 1.2 8.2% 24.3% .292 105 106 4.07 95 1.6
Edward Cabrera 113.0 9.5 4.3 1.2 11.0% 24.3% .280 102 103 4.42 98 1.5
Ryan Weathers 103.2 7.8 3.4 1.1 8.7% 20.1% .297 99 102 4.35 101 1.3
Max Meyer 101.0 7.8 3.2 1.2 8.2% 20.0% .300 100 102 4.40 100 1.3
Darren McCaughan 118.2 6.7 2.5 1.3 6.5% 17.2% .302 94 95 4.59 106 1.1
Patrick Monteverde 99.2 6.6 3.2 1.3 8.0% 16.7% .301 95 97 4.71 105 1.1
Anthony Veneziano 100.2 7.2 3.6 1.2 9.0% 18.2% .304 98 99 4.62 102 1.1
Adam Mazur 110.2 6.8 2.9 1.3 7.5% 17.5% .300 93 97 4.57 108 1.0
Valente Bellozo 116.2 6.4 3.0 1.5 7.6% 16.3% .295 91 96 4.95 109 1.0
Robby Snelling 109.1 6.7 3.5 1.2 8.9% 16.8% .301 91 97 4.71 109 1.0
Luis Palacios 116.1 5.2 2.2 1.5 5.5% 13.2% .301 88 92 5.00 113 0.8
Xzavion Curry 97.0 6.6 2.7 1.5 6.9% 17.0% .288 92 96 4.85 108 0.8
Evan Fitterer 105.1 6.4 4.5 1.1 10.9% 15.5% .300 88 93 5.15 113 0.8
Yonny Chirinos 111.1 5.9 3.1 1.4 7.7% 14.7% .304 89 86 5.04 113 0.8
Anthony Bender 51.1 9.6 3.3 0.7 8.7% 25.2% .299 119 116 3.39 84 0.7
Jacob Miller 103.2 5.4 3.4 1.3 8.5% 13.4% .295 87 92 5.11 115 0.7
Andrew Nardi 53.0 11.4 3.6 1.2 9.4% 30.0% .299 117 120 3.73 86 0.6
Jonathan Bermúdez 88.0 7.2 4.0 1.3 9.9% 17.8% .302 89 89 5.08 112 0.6
Jesus Tinoco 58.2 8.9 3.5 0.9 9.2% 23.1% .292 114 111 3.81 88 0.6
Shaun Anderson 80.0 6.3 2.7 1.4 6.7% 15.7% .313 90 90 4.70 111 0.6
Calvin Faucher 53.0 9.7 4.4 0.8 11.0% 24.1% .313 112 111 3.84 89 0.6
Christian Roa 72.2 8.4 5.4 1.2 13.2% 20.4% .296 90 94 5.12 111 0.5
Declan Cronin 65.0 7.9 3.5 0.7 8.9% 20.2% .307 113 111 3.81 89 0.5
Tristan Stevens 76.2 5.4 2.7 1.3 6.8% 13.6% .305 89 92 4.82 113 0.5
Kent Emanuel 58.1 6.2 2.5 1.2 6.4% 15.9% .305 94 91 4.62 106 0.5
Jeff Lindgren 79.2 5.8 4.1 1.2 10.0% 14.1% .300 88 89 5.24 114 0.5
Mike Baumann 62.0 8.6 4.1 1.0 10.2% 21.5% .301 100 100 4.19 100 0.5
Devin Smeltzer 78.0 6.1 3.3 1.4 8.5% 15.5% .291 86 87 5.13 116 0.4
George Soriano 67.0 8.6 4.0 1.2 10.3% 21.9% .294 96 100 4.67 105 0.4
Collin Lowe 76.2 5.0 2.1 1.4 5.4% 12.9% .301 89 92 4.99 113 0.3
Angel Macuare 64.0 6.8 3.5 1.3 8.8% 16.9% .302 89 94 4.87 113 0.3
M.D. Johnson 79.0 5.9 4.0 1.4 9.7% 14.4% .298 83 85 5.43 120 0.3
Zach McCambley 55.1 7.8 4.9 1.1 11.8% 18.8% .301 87 90 5.04 115 0.3
Adam Laskey 60.0 6.8 3.9 1.2 9.6% 16.7% .305 91 94 4.91 110 0.3
Sixto Sánchez 34.1 5.8 3.1 1.0 7.9% 14.5% .310 93 95 4.63 108 0.3
Cade Gibson 77.1 5.6 3.6 1.4 8.9% 13.7% .299 83 85 5.47 120 0.2
Anderson Pilar 52.2 7.3 3.2 1.2 8.2% 18.6% .297 95 97 4.70 106 0.2
Adam Oller 78.1 7.4 4.3 1.5 10.5% 18.2% .298 83 82 5.23 121 0.2
Matt Andriese 52.1 6.2 2.6 1.5 6.4% 15.5% .320 88 81 5.01 114 0.2
Josh Simpson 41.1 10.0 4.8 1.1 11.9% 24.9% .299 100 104 4.41 100 0.2
Lake Bachar 66.2 8.4 3.6 1.4 9.2% 21.2% .304 95 95 4.57 105 0.2
Paul Campbell 46.2 6.8 3.5 1.5 8.7% 16.9% .299 84 83 5.32 119 0.2
Luarbert Arias 60.2 8.0 3.4 1.3 8.7% 20.5% .291 95 100 4.71 105 0.1
Austin Roberts 59.0 8.1 4.0 1.2 9.8% 20.0% .298 95 99 4.67 105 0.1
Dale Stanavich 49.2 8.9 4.5 1.3 11.3% 22.1% .297 96 99 4.79 104 0.1
Tyler Eckberg 51.1 6.3 2.5 1.2 6.3% 16.1% .309 96 99 4.48 104 0.1
Woo-Suk Go 51.1 8.2 3.9 1.2 9.6% 20.4% .309 96 99 4.64 104 0.1
Raffi Vizcaíno 48.2 8.7 5.4 1.1 12.8% 20.8% .304 91 91 4.76 110 0.0
Matt Pushard 49.0 7.3 3.7 1.3 9.3% 18.5% .295 95 96 4.81 105 0.0
Justin King 32.2 9.6 5.2 1.1 12.8% 23.5% .299 93 95 4.65 107 0.0
Chandler Jozwiak 48.0 6.0 3.9 1.1 9.8% 14.9% .299 90 93 4.91 112 0.0
Mychal Givens 33.2 8.0 4.5 1.3 11.3% 19.9% .296 91 82 5.11 110 0.0
Nigel Belgrave 55.2 8.1 4.7 1.1 11.5% 19.8% .294 90 97 4.90 111 0.0
Elvis Alvarado 43.2 8.2 4.7 1.2 11.6% 20.2% .302 88 93 4.99 113 -0.1

Pitchers – Top Near-Age Comps

Pitchers – Splits and Percentiles

Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R 80th WAR 20th WAR 80th ERA 20th ERA
Sandy Alcantara .243 .292 .382 .235 .281 .356 4.0 2.3 3.10 4.10
Braxton Garrett .246 .297 .339 .255 .313 .433 2.4 1.1 3.40 4.51
Eury Pérez .230 .304 .430 .236 .281 .379 2.4 0.9 3.12 4.65
Jesús Luzardo .219 .278 .343 .246 .316 .425 2.3 0.8 3.60 4.81
Edward Cabrera .243 .339 .400 .214 .306 .377 2.3 0.5 3.77 5.15
Ryan Weathers .235 .310 .348 .261 .330 .436 1.9 0.6 3.89 5.08
Max Meyer .246 .323 .392 .270 .321 .460 2.0 0.6 3.75 4.99
Darren McCaughan .262 .324 .428 .279 .328 .462 1.8 0.5 4.11 5.15
Patrick Monteverde .278 .333 .437 .267 .333 .443 1.6 0.3 4.08 5.34
Anthony Veneziano .258 .336 .411 .268 .340 .435 1.6 0.3 3.99 5.20
Adam Mazur .291 .352 .468 .247 .295 .413 1.7 0.4 4.19 5.22
Valente Bellozo .262 .328 .440 .280 .330 .481 1.7 0.3 4.23 5.33
Robby Snelling .289 .351 .446 .262 .329 .432 1.6 0.3 4.26 5.37
Luis Palacios .282 .318 .458 .288 .335 .486 1.4 0.2 4.44 5.47
Xzavion Curry .277 .330 .473 .252 .308 .436 1.4 0.2 4.15 5.33
Evan Fitterer .244 .354 .383 .291 .368 .464 1.2 0.1 4.55 5.53
Yonny Chirinos .280 .345 .474 .282 .340 .456 1.3 0.1 4.53 5.53
Anthony Bender .264 .347 .391 .202 .279 .312 1.2 0.2 2.89 4.75
Jacob Miller .287 .360 .446 .267 .324 .456 1.2 0.1 4.61 5.60
Andrew Nardi .200 .282 .314 .237 .318 .420 1.2 0.1 2.95 4.80
Jonathan Bermúdez .250 .325 .357 .276 .361 .485 1.1 0.0 4.44 5.62
Jesus Tinoco .248 .328 .410 .225 .293 .342 1.1 0.1 3.12 4.79
Shaun Anderson .304 .355 .500 .266 .315 .432 1.0 0.1 4.37 5.50
Calvin Faucher .253 .352 .429 .235 .315 .330 1.0 0.0 3.24 4.89
Christian Roa .248 .368 .434 .252 .350 .400 1.0 -0.1 4.27 5.66
Declan Cronin .252 .328 .387 .252 .329 .357 0.9 0.0 3.37 4.66
Tristan Stevens .313 .375 .514 .260 .298 .414 0.9 0.1 4.47 5.50
Kent Emanuel .237 .298 .355 .296 .347 .484 0.9 0.1 4.01 5.30
Jeff Lindgren .290 .387 .484 .263 .324 .413 0.9 0.0 4.53 5.50
Mike Baumann .245 .336 .396 .250 .322 .390 0.9 0.0 3.72 5.13
Devin Smeltzer .261 .340 .409 .272 .337 .469 0.8 -0.1 4.59 5.74
George Soriano .262 .359 .451 .232 .318 .370 0.8 -0.2 3.95 5.33
Collin Lowe .300 .353 .450 .276 .316 .494 0.8 0.0 4.40 5.42
Angel Macuare .283 .364 .469 .259 .323 .413 0.7 0.0 4.33 5.46
M.D. Johnson .298 .382 .490 .256 .335 .429 0.7 -0.2 4.81 5.85
Zach McCambley .279 .377 .441 .234 .341 .393 0.7 -0.1 4.46 5.66
Adam Laskey .266 .344 .392 .273 .352 .453 0.7 -0.1 4.18 5.53
Sixto Sánchez .284 .360 .463 .278 .329 .417 0.4 0.1 4.37 5.23
Cade Gibson .280 .354 .380 .280 .358 .505 0.6 -0.2 4.78 5.86
Anderson Pilar .266 .346 .436 .254 .328 .412 0.6 -0.2 3.96 5.36
Adam Oller .264 .359 .458 .268 .337 .458 0.8 -0.4 4.67 6.06
Matt Andriese .292 .349 .500 .298 .338 .479 0.5 -0.2 4.43 5.85
Josh Simpson .200 .333 .291 .252 .345 .437 0.6 -0.1 3.59 5.12
Lake Bachar .248 .344 .389 .267 .319 .467 0.7 -0.3 3.93 5.47
Paul Campbell .287 .364 .511 .258 .327 .430 0.5 -0.1 4.61 5.83
Luarbert Arias .243 .315 .414 .260 .340 .433 0.6 -0.2 4.00 5.15
Austin Roberts .262 .350 .439 .248 .326 .400 0.5 -0.3 4.00 5.27
Dale Stanavich .250 .342 .359 .246 .344 .446 0.5 -0.3 3.87 5.24
Tyler Eckberg .291 .345 .485 .267 .310 .410 0.4 -0.3 3.95 5.18
Woo-Suk Go .260 .342 .460 .262 .342 .398 0.4 -0.3 3.92 5.17
Raffi Vizcaíno .247 .362 .427 .255 .347 .392 0.4 -0.4 4.18 5.68
Matt Pushard .233 .320 .378 .282 .348 .476 0.4 -0.3 3.99 5.32
Justin King .233 .340 .349 .241 .354 .422 0.3 -0.3 3.94 5.55
Chandler Jozwiak .242 .320 .333 .286 .359 .484 0.3 -0.3 4.26 5.39
Mychal Givens .283 .397 .491 .238 .319 .400 0.3 -0.4 4.05 5.88
Nigel Belgrave .303 .407 .545 .203 .301 .288 0.4 -0.5 4.24 5.60
Elvis Alvarado .231 .348 .359 .277 .361 .479 0.2 -0.4 4.25 5.69

Players are listed with their most recent teams wherever possible. This includes players who are unsigned or have retired, players who will miss 2025 due to injury, and players who were released in 2024. So yes, if you see Joe Schmoe, who quit baseball back in August to form a Norwegian Ukulele Dixieland Jazz band that only covers songs by The Smiths, he’s still listed here intentionally. ZiPS is assuming a league with an ERA of 4.11.

Hitters are ranked by zWAR, which is to say, WAR values as calculated by me, Dan Szymborski, whose surname is spelled with a z. WAR values might differ slightly from those that appear in the full release of ZiPS. Finally, I will advise anyone against — and might karate chop anyone guilty of — merely adding up WAR totals on a depth chart to produce projected team WAR.

As always, incorrect projections are either caused by misinformation, a non-pragmatic reality, or by the skillful sabotage of our friend and former editor. You can, however, still get mad at me on Twitter or on Bluesky.

Content Source: blogs.fangraphs.com

Related News

Latest News