HomeSportsBaseball2025 ZiPS Projections: Pittsburgh Pirates

2025 ZiPS Projections: Pittsburgh Pirates

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 Pittsburgh Pirates.

Batters

The Pirates got off to a hot start in 2024, winning 10 of their first 14 games, but getting swept in consecutive series against the Mets and Red Sox quickly vaporized their small early cushion in the NL Central. Pittsburgh didn’t collapse, though, and played respectable baseball for the next three months; at the trade deadline, the Pirates stood just 2 1/2 games out of the final wild card spot in the NL, with the debut of Paul Skenes serving as a harbinger of hope that better days might be ahead. Pittsburgh made some low-key pickups at the deadline, but none of them made much of an impact, and its pitching collapsed in August, sealing the team’s 2024 fate.

Looking down the lineup, it’s not truly a mess anywhere – with the possible exception of DH, which makes me sad since it’s Andrew McCutchen – but it’s hard to get past the feeling of being underwhelmed. Moving Oneil Cruz to center field isn’t the worst idea around, but you’d like to see the organization’s grand plan involve something more ambitious than Isiah Kiner-Falefa playing shortstop every day. I know it’s a pipe dream given their ownership, but the Pirates would be a whole lot more interesting right now if after moving Cruz to the outfield, they’d splurged on, say, Willy Adames in free agency. Alas.

However, there are some things to like, if not love, with this lineup entering 2025. Nick Gonzales has improved enough that he’s a perfectly fine second baseman, albeit not one likely to make any All-Star appearances. ZiPS is optimistic about Spencer Horwitz’s bat at first base, and it was a nice little move to get Luis L. Ortiz and hope he’ll see some positive regression from his .243 BABIP. I think we’ve reached the point at which we recognize that Ke’Bryan Hayes does not have the offensive upside that he showed in a very brief debut, but he’s still got a terrific glove; ZiPS projects a far more typical season for him. I’m still not sold on Joey Bart, but I also think Endy Rodríguez has a pretty decent ceiling so long as he’s fully recovered from his UCL injury, so catcher isn’t really a problem position for Pittsburgh.

I hope that Bryan Reynolds has had enough consecutive 2-3 WAR seasons that people stop sending me angry DMs about ZiPS projecting him to have 2-3 WAR seasons! It’s nice that the Pirates actually paid to keep him around, but Reynolds is also just a solid player, not a star. Right field feels more like a collection of role players assembled rather than a real upside position, but ZiPS does believe Jack Suwinski can get back to his 2022-2023 level of offense after an absolutely brutal 2024.

The Pirates’ lineup is… OK… ish. I think what lends to the pallor is that it just doesn’t feel like there’s much of a ceiling here. A reclamation project or a gamble or two, rather than filling out the roster with known quantities, would have been a lot more interesting at some of these positions. McCutchen isn’t going to suddenly be 25 again. The big exception might be Henry Davis, but he was brutal enough in his very brief time in the majors that he’s likely going to have to continue raking at Triple-A before he gets another shot in the majors, and possibly answer the question of what position he should play (if any).

Pitchers

Paul Skenes and Mitch Keller are a double reminder that the Pirates — even though they’ve finished with a winning record just once (barely) over the last nine seasons — do at least some things far better than in the bleakest days of the Cam Bonifay/David Littlefield era. Skenes was the right guy to take in the draft, and Pittsburgh did a good job with him, promoting him quickly with confidence while ramping up his pitch count slowly and surely. Back in the bad old days, there’s no chance that Keller would have gotten a five-year contract extension. Skenes and Keller are a solid one-two punch, and ZiPS has a lot of confidence that Jared Jones can build upon his rookie year success.

The back of the rotation is adequate. Bailey Falter is extremely hittable, but at least he’s developing into a decent fourth-starter/innings-eater type. Johan Oviedo, Bubba Chandler, and Braxton Ashcraft all get projections in the same general realm as Falter, and ZiPS also includes Thomas Harrington in that same tier. Overall, this is a solid staff because of its first three pitchers, but none of these other guys are breakout candidates, so the ceiling of Pittsburgh’s rotation is limited. Because of Skenes, Keller, and Jones, the Pirates probably have the makings of a top-10 rotation in baseball, and even though this group probably won’t climb into the top five, this amounts to a team highlight.

The bullpen looks a lot like the rotation, except it doesn’t have a reliever of Skenes’ caliber. It’s a bit Olive Garden-esque, which I don’t actually mean as an insult. There’s nothing exciting about the bullpen, but at least most of the relievers are decent, if somewhat interchangeable. ZiPS projects seven Pirates relievers to finish with an ERA+ between 100 and David Bednar’s 116, with nobody projecting above that mark. That’s not the end of the world; if you’ve seen an episode of Kitchen Nightmares, you should be aware that the quality of new restaurants can fluctuate widely, whereas middle-of-the-road chains are known commodities. This bullpen will hold leads as well as Olive Garden’s endless breadsticks will get you a week’s worth of carbs on the cheap, but neither will be the highlight of your Instagram. He didn’t get a great projection, but Kyle Nicolas in a relief-only role might be the most interesting of Pittsburgh’s non-established relievers, with enough nastiness to his stuff that he could blossom if his command improves.

ZiPS sees the Pirates as a .500 team, but in the very early team projections I’ve run, they just have less upside than the rest of the division. If ZiPS is accurate, it’s certainly a concern for the lowest-spending team in the division to have the lowest ceiling as well. Considering this, if the Pirates aren’t going to spend more — which they surely will not — they should instead roll the dice a little bit more to get some low-cost, high-upside players. As of now, though, that isn’t what they’re doing, and that’s a shame because they do have some young and exciting stars who could make for a talented core if ownership were willing to surround them with some capable complementary pieces. Even so, the bright spots of this overall lackluster roster should offer fans enough of a reason to watch the Pirates this year.

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. The final team projections may differ considerably from our Depth Chart playing time.

Batters – Standard

Player B Age PO PA AB R H 2B 3B HR RBI BB SO SB CS
Oneil Cruz L 26 CF 587 529 80 134 28 4 24 80 52 168 20 3
Spencer Horwitz L 27 1B 588 508 70 139 35 1 12 63 68 102 3 2
Nick Gonzales R 26 2B 523 474 66 125 32 5 11 66 35 117 4 4
Bryan Reynolds B 30 LF 644 574 74 153 28 4 21 84 57 139 8 2
Ke’Bryan Hayes R 28 3B 459 422 51 106 20 2 8 43 31 89 11 3
Jared Triolo R 27 3B 457 407 50 100 19 2 7 46 43 114 10 2
Endy Rodríguez B 25 C 467 426 60 104 26 3 10 53 34 96 2 1
Jack Suwinski L 26 CF 508 441 61 102 21 3 22 67 57 151 12 2
Bryce Johnson B 29 CF 379 331 49 83 15 3 4 36 35 91 16 3
Henry Davis R 25 C 409 356 48 83 18 1 13 53 37 109 6 3
Ji Hwan Bae L 25 CF 434 390 64 102 18 4 6 44 38 99 19 6
Yasmani Grandal B 36 C 320 277 29 64 10 0 9 30 38 67 1 0
Nick Yorke R 23 2B 553 504 66 124 24 1 10 54 42 127 12 5
Michael A. Taylor R 34 CF 355 321 40 71 10 1 9 32 26 113 10 2
Liover Peguero R 24 SS 557 515 61 123 26 3 11 61 32 137 13 4
Joey Bart R 28 C 317 284 39 69 12 0 10 38 25 88 0 0
Trey Cabbage L 28 RF 412 372 55 88 21 2 15 52 34 148 15 4
Isiah Kiner-Falefa R 30 2B 477 442 51 116 18 2 5 42 23 72 12 3
Billy Cook R 26 1B 504 457 55 106 20 4 14 59 35 140 16 4
Tsung-Che Cheng L 23 SS 529 465 63 105 22 3 8 50 44 130 12 6
Joshua Palacios L 29 RF 354 320 44 84 17 2 9 43 26 74 7 3
Enmanuel Valdez L 26 2B 469 422 52 98 22 1 15 52 40 110 4 2
Jack Brannigan R 24 SS 349 312 45 68 13 2 9 41 28 107 7 2
Tristan Gray L 29 3B 476 437 50 94 21 2 15 53 31 145 1 1
Shawn Ross R 25 C 353 310 38 54 10 1 12 38 35 144 4 1
Connor Joe R 32 1B 408 355 48 82 20 2 9 36 45 92 2 2
Matt Gorski R 27 CF 425 393 52 88 20 3 15 55 25 131 11 5
Jason Delay R 30 C 224 204 22 48 12 0 2 20 14 47 1 1
Alika Williams R 26 SS 374 339 43 82 16 2 4 31 25 78 3 2
Nick Solak R 30 LF 381 338 44 84 15 1 6 40 32 72 6 2
Termarr Johnson L 21 2B 550 476 66 100 17 1 10 54 61 140 10 3
Jake Lamb L 34 1B 370 327 39 77 17 1 7 36 34 91 0 1
Omar Alfonzo L 21 C 434 392 39 83 15 1 8 42 39 128 1 1
Andrés Alvarez R 28 2B 357 320 37 71 15 2 7 37 28 103 6 2
Andrew McCutchen R 38 DH 442 382 51 86 17 0 13 44 53 109 4 2
Jase Bowen R 24 CF 492 453 54 102 17 3 10 53 23 139 13 4
Billy McKinney L 30 LF 292 257 31 59 11 1 7 32 29 79 1 1
Joe Perez R 25 1B 397 366 38 90 18 1 9 39 27 123 2 1
Nick Cimillo R 25 1B 427 380 49 85 17 1 13 48 43 106 2 0
Rowdy Tellez L 30 1B 451 406 40 98 18 0 16 56 39 94 1 0
Darick Hall L 29 1B 470 427 42 96 20 0 15 50 36 115 1 1
Tres Gonzalez L 24 LF 427 380 42 91 14 1 2 34 31 94 8 6
Abrahan Gutierrez R 25 C 297 273 25 63 14 1 3 27 19 63 1 1
Eli Wilson R 26 C 179 162 16 33 6 1 3 18 12 49 2 1
Duce Gourson L 22 2B 100 85 10 15 4 0 0 9 10 25 2 1
Seth Beer L 28 1B 433 385 41 89 19 1 9 52 28 103 1 0
Carter Bins R 26 C 297 266 31 50 13 1 7 32 24 117 2 1
Geovanny Planchart R 23 C 250 222 21 43 8 1 2 18 25 68 0 1
Matt Fraizer L 27 RF 431 398 47 90 17 3 6 42 27 117 10 3
Kervin Pichardo R 23 2B 428 392 44 86 14 1 9 43 24 135 4 2
Malcom Nuñez R 24 3B 495 452 49 104 18 0 10 49 33 111 2 2
Jose Rojas L 32 DH 364 327 40 67 17 1 13 42 33 84 3 1
DJ Stewart L 31 RF 339 295 33 62 11 1 9 34 35 91 4 1
Wyatt Hendrie R 26 C 246 223 24 44 8 1 2 21 15 80 5 0
Sammy Siani L 24 CF 451 409 50 91 16 3 6 42 34 123 9 5
Sergio Campana R 23 CF 252 220 27 41 8 1 2 20 25 108 13 4
Mitch Jebb L 23 2B 515 465 62 103 13 7 3 39 39 109 21 6
P.J. Hilson R 24 CF 358 334 51 72 14 2 8 38 15 104 8 2
Jackson Glenn R 27 2B 322 297 30 61 14 1 4 28 18 94 2 1
Aaron McKeithan R 25 C 248 220 17 50 6 1 2 23 17 46 0 0
Grant Koch R 28 C 164 151 16 28 5 0 3 14 10 54 0 0
Mike Jarvis R 27 3B 295 272 31 52 8 2 4 26 16 82 10 2
Mason Martin L 26 DH 403 362 39 70 17 2 15 52 32 169 3 2
Javier Rivas R 22 SS 422 391 33 78 14 2 7 43 13 160 4 3
Aaron Shackelford L 28 1B 371 339 34 66 15 2 11 43 24 129 4 1
Brenden Dixon R 24 3B 285 255 26 50 9 1 7 29 25 100 3 1
Hudson Head L 24 LF 413 373 45 73 14 3 7 40 29 147 4 3
Dustin Peterson R 30 DH 334 304 33 64 13 0 8 32 24 94 3 1
Maikol Escotto R 23 3B 286 270 29 53 10 1 5 25 11 99 5 3
Lonnie White Jr. R 22 CF 371 334 39 60 13 2 8 39 26 136 8 4
Luke Brown L 26 LF 244 219 27 39 7 1 3 21 18 82 5 1
Josiah Sightler L 25 1B 318 291 29 61 7 1 8 32 21 140 1 0
Kalae Harrison L 23 3B 255 229 22 38 7 0 1 15 19 78 5 2

Batters – Advanced

Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Oneil Cruz 587 .253 .322 .458 114 .204 .327 -2 2.9 .333 116 83
Spencer Horwitz 588 .273 .366 .417 118 .144 .322 4 2.6 .344 116 79
Nick Gonzales 523 .264 .324 .422 106 .158 .329 5 2.6 .323 107 67
Bryan Reynolds 644 .266 .340 .439 115 .172 .319 0 2.4 .337 111 88
Ke’Bryan Hayes 459 .251 .305 .365 86 .114 .301 9 1.8 .294 86 50
Jared Triolo 457 .246 .322 .354 88 .108 .325 6 1.7 .300 90 49
Endy Rodríguez 467 .244 .304 .390 91 .146 .294 0 1.7 .303 90 51
Jack Suwinski 508 .231 .323 .443 111 .211 .299 -9 1.7 .330 112 66
Bryce Johnson 379 .250 .333 .350 91 .100 .334 2 1.4 .306 89 43
Henry Davis 409 .233 .326 .399 101 .166 .299 -7 1.3 .318 101 49
Ji Hwan Bae 434 .262 .328 .374 95 .113 .337 -1 1.3 .309 96 54
Yasmani Grandal 320 .231 .326 .365 93 .134 .274 0 1.3 .308 88 33
Nick Yorke 553 .246 .307 .357 84 .111 .310 3 1.3 .293 88 60
Michael A. Taylor 355 .221 .281 .343 73 .121 .311 9 1.1 .275 68 34
Liover Peguero 557 .239 .285 .365 79 .126 .305 1 1.1 .284 81 58
Joey Bart 317 .243 .319 .391 96 .148 .317 -3 1.1 .313 95 36
Trey Cabbage 412 .236 .304 .424 100 .188 .349 1 1.0 .315 102 53
Isiah Kiner-Falefa 477 .262 .308 .346 82 .084 .304 3 1.0 .288 80 51
Billy Cook 504 .232 .296 .385 88 .153 .303 9 1.0 .297 89 57
Tsung-Che Cheng 529 .226 .295 .337 76 .112 .296 2 1.0 .281 81 51
Joshua Palacios 354 .262 .326 .412 104 .150 .316 1 0.9 .322 97 46
Enmanuel Valdez 469 .232 .299 .396 91 .164 .280 -3 0.9 .302 93 51
Jack Brannigan 349 .218 .293 .359 80 .141 .301 0 0.8 .288 85 35
Tristan Gray 476 .215 .273 .375 78 .160 .285 5 0.8 .283 78 46
Shawn Ross 353 .174 .267 .329 65 .155 .273 6 0.8 .265 68 28
Connor Joe 408 .231 .326 .374 95 .144 .287 3 0.8 .311 91 45
Matt Gorski 425 .224 .271 .404 85 .180 .295 0 0.6 .290 86 47
Jason Delay 224 .235 .293 .324 72 .088 .297 4 0.6 .275 72 20
Alika Williams 374 .242 .298 .336 76 .094 .303 1 0.6 .281 76 35
Nick Solak 381 .248 .328 .352 90 .104 .300 2 0.5 .304 89 41
Termarr Johnson 550 .210 .307 .313 74 .103 .276 1 0.5 .281 79 49
Jake Lamb 370 .235 .316 .358 87 .122 .305 5 0.5 .298 83 37
Omar Alfonzo 434 .212 .286 .317 68 .105 .293 2 0.5 .269 76 36
Andrés Alvarez 357 .222 .291 .347 77 .125 .305 2 0.5 .282 76 34
Andrew McCutchen 442 .225 .324 .372 93 .147 .281 0 0.4 .308 86 48
Jase Bowen 492 .225 .274 .342 70 .117 .303 3 0.3 .271 74 47
Billy McKinney 292 .229 .315 .361 88 .132 .303 2 0.3 .298 86 30
Joe Perez 397 .246 .300 .374 86 .128 .346 3 0.2 .295 88 42
Nick Cimillo 427 .224 .307 .376 89 .153 .276 0 0.2 .302 92 44
Rowdy Tellez 451 .241 .308 .404 96 .163 .277 -3 0.1 .308 95 51
Darick Hall 470 .225 .289 .377 84 .152 .272 4 0.1 .290 84 47
Tres Gonzalez 427 .240 .306 .298 70 .058 .314 9 0.1 .272 70 39
Abrahan Gutierrez 297 .231 .290 .323 70 .092 .290 -2 0.1 .272 70 26
Eli Wilson 179 .204 .270 .309 61 .105 .273 0 0.0 .258 67 14
Duce Gourson 100 .176 .300 .224 49 .047 .250 2 0.0 .252 57 7
Seth Beer 433 .231 .309 .356 85 .125 .293 1 0.0 .295 84 43
Carter Bins 297 .188 .270 .324 65 .136 .304 -2 -0.1 .265 67 24
Geovanny Planchart 250 .194 .280 .266 54 .072 .270 1 -0.1 .250 54 17
Matt Fraizer 431 .226 .281 .329 69 .103 .305 6 -0.1 .269 71 40
Kervin Pichardo 428 .219 .276 .329 68 .110 .311 0 -0.2 .269 71 38
Malcom Nuñez 495 .230 .287 .336 73 .106 .284 -3 -0.2 .275 76 45
Jose Rojas 364 .205 .280 .383 82 .178 .235 0 -0.3 .288 77 36
DJ Stewart 339 .210 .307 .346 82 .136 .272 -4 -0.3 .293 80 32
Wyatt Hendrie 246 .197 .259 .269 48 .072 .298 0 -0.4 .239 52 17
Sammy Siani 451 .223 .286 .321 69 .098 .304 -3 -0.4 .270 73 41
Sergio Campana 252 .186 .280 .259 52 .073 .354 0 -0.4 .249 60 20
Mitch Jebb 515 .222 .284 .299 63 .077 .284 -2 -0.5 .261 66 46
P.J. Hilson 358 .215 .261 .341 66 .126 .288 -3 -0.6 .262 69 32
Jackson Glenn 322 .205 .254 .299 53 .094 .286 1 -0.6 .245 55 24
Aaron McKeithan 248 .227 .302 .291 67 .064 .279 -8 -0.6 .270 72 20
Grant Koch 164 .185 .244 .278 45 .093 .265 -2 -0.6 .234 46 10
Mike Jarvis 295 .191 .248 .280 47 .088 .259 2 -0.6 .236 52 22
Mason Martin 403 .193 .268 .376 77 .182 .309 0 -0.6 .280 81 38
Javier Rivas 422 .199 .243 .299 50 .100 .316 2 -0.7 .240 55 30
Aaron Shackelford 371 .195 .259 .348 67 .153 .277 3 -0.7 .265 66 32
Brenden Dixon 285 .196 .274 .322 65 .125 .290 -5 -0.7 .266 68 23
Hudson Head 413 .196 .265 .305 59 .110 .301 6 -0.7 .254 62 33
Dustin Peterson 334 .210 .272 .332 67 .122 .277 0 -0.8 .267 64 28
Maikol Escotto 286 .196 .232 .296 46 .100 .289 2 -0.8 .232 49 21
Lonnie White Jr. 371 .180 .259 .302 56 .123 .274 -2 -0.8 .252 62 29
Luke Brown 244 .178 .248 .260 42 .082 .268 3 -0.9 .231 47 16
Josiah Sightler 318 .210 .270 .323 65 .114 .372 -1 -1.0 .262 70 26
Kalae Harrison 255 .166 .235 .209 25 .044 .246 1 -1.3 .206 29 13

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
Oneil Cruz .282 .347 .519 134 4.5 .225 .292 .408 91 1.4
Spencer Horwitz .299 .391 .465 135 3.9 .244 .338 .376 99 1.3
Nick Gonzales .291 .352 .473 128 3.9 .240 .298 .371 86 1.4
Bryan Reynolds .293 .365 .488 134 3.8 .240 .314 .394 99 1.0
Ke’Bryan Hayes .273 .329 .411 104 2.8 .222 .279 .322 67 0.7
Jared Triolo .274 .349 .402 106 2.7 .218 .291 .314 67 0.6
Endy Rodríguez .271 .329 .442 112 2.8 .216 .278 .347 75 0.7
Jack Suwinski .256 .350 .505 131 2.9 .205 .295 .392 91 0.5
Bryce Johnson .280 .360 .392 109 2.3 .222 .304 .302 71 0.5
Henry Davis .261 .354 .454 119 2.3 .205 .298 .337 76 0.2
Ji Hwan Bae .289 .354 .419 113 2.2 .231 .298 .327 77 0.2
Yasmani Grandal .259 .352 .410 110 2.0 .199 .295 .314 72 0.5
Nick Yorke .270 .333 .407 102 2.5 .218 .281 .321 67 0.0
Michael A. Taylor .253 .314 .401 97 2.1 .188 .249 .284 50 0.1
Liover Peguero .264 .310 .410 98 2.3 .213 .262 .322 61 -0.2
Joey Bart .270 .347 .442 117 1.9 .208 .289 .336 73 0.2
Trey Cabbage .269 .333 .485 124 2.3 .205 .273 .367 77 -0.1
Isiah Kiner-Falefa .294 .335 .385 99 2.1 .236 .279 .304 61 -0.2
Billy Cook .264 .324 .443 110 2.5 .207 .269 .340 69 -0.2
Tsung-Che Cheng .255 .321 .383 95 2.3 .202 .272 .300 60 -0.1
Joshua Palacios .299 .358 .463 126 1.9 .234 .299 .358 84 0.1
Enmanuel Valdez .258 .323 .441 109 1.9 .209 .275 .347 73 -0.2
Jack Brannigan .249 .324 .415 103 1.7 .193 .271 .302 59 -0.1
Tristan Gray .240 .296 .430 97 1.9 .190 .248 .332 61 -0.2
Shawn Ross .204 .298 .388 88 1.8 .147 .235 .275 44 -0.1
Connor Joe .258 .352 .425 115 1.7 .206 .301 .330 75 -0.3
Matt Gorski .250 .297 .452 103 1.7 .199 .245 .353 64 -0.4
Jason Delay .272 .330 .369 95 1.3 .207 .264 .278 51 0.1
Alika Williams .272 .327 .381 96 1.5 .212 .269 .294 57 -0.3
Nick Solak .279 .360 .400 111 1.5 .223 .303 .314 72 -0.3
Termarr Johnson .240 .333 .363 92 1.8 .185 .284 .274 57 -0.6
Jake Lamb .267 .345 .405 107 1.3 .207 .288 .310 66 -0.4
Omar Alfonzo .248 .317 .373 92 1.7 .181 .249 .270 46 -0.7
Andrés Alvarez .253 .321 .402 98 1.4 .192 .263 .297 55 -0.4
Andrew McCutchen .256 .356 .424 114 1.5 .201 .294 .326 75 -0.7
Jase Bowen .250 .300 .391 88 1.4 .199 .252 .302 53 -0.8
Billy McKinney .257 .346 .414 109 1.0 .201 .288 .316 68 -0.5
Joe Perez .272 .325 .428 105 1.1 .217 .269 .333 68 -0.7
Nick Cimillo .253 .336 .426 110 1.3 .196 .280 .324 70 -0.8
Rowdy Tellez .268 .336 .456 114 1.2 .211 .282 .349 76 -1.0
Darick Hall .251 .314 .429 106 1.4 .197 .260 .326 66 -1.0
Tres Gonzalez .268 .333 .332 85 0.9 .213 .280 .265 53 -0.8
Abrahan Gutierrez .259 .320 .366 91 0.9 .200 .262 .283 53 -0.6
Eli Wilson .235 .303 .363 84 0.5 .172 .241 .257 40 -0.5
Duce Gourson .210 .332 .274 72 0.3 .150 .275 .186 32 -0.2
Seth Beer .262 .338 .409 106 1.1 .201 .281 .314 67 -1.0
Carter Bins .218 .299 .379 85 0.6 .156 .238 .271 43 -0.9
Geovanny Planchart .230 .318 .312 76 0.6 .162 .252 .221 35 -0.7
Matt Fraizer .253 .308 .373 88 0.8 .202 .257 .294 52 -1.1
Kervin Pichardo .248 .303 .378 89 1.0 .191 .248 .282 49 -1.1
Malcom Nuñez .257 .312 .378 90 0.8 .205 .260 .299 57 -1.2
Jose Rojas .232 .309 .449 105 0.8 .175 .250 .328 58 -1.4
DJ Stewart .235 .334 .397 102 0.5 .181 .276 .293 59 -1.2
Wyatt Hendrie .229 .293 .318 70 0.3 .164 .229 .228 26 -1.0
Sammy Siani .250 .312 .365 87 0.6 .194 .260 .286 53 -1.3
Sergio Campana .221 .320 .310 74 0.3 .157 .251 .218 34 -1.1
Mitch Jebb .252 .312 .338 81 0.8 .200 .259 .261 47 -1.5
P.J. Hilson .244 .288 .393 87 0.3 .190 .238 .304 50 -1.3
Jackson Glenn .237 .283 .345 72 0.2 .177 .226 .252 35 -1.4
Aaron McKeithan .258 .333 .333 86 0.0 .193 .273 .252 49 -1.1
Grant Koch .218 .283 .331 67 -0.1 .156 .214 .238 26 -1.0
Mike Jarvis .219 .276 .329 65 0.0 .166 .224 .237 29 -1.3
Mason Martin .222 .297 .433 97 0.4 .166 .240 .318 55 -1.6
Javier Rivas .226 .270 .352 71 0.4 .173 .218 .257 33 -1.5
Aaron Shackelford .225 .283 .406 87 0.2 .171 .230 .299 47 -1.6
Brenden Dixon .225 .303 .373 85 0.0 .169 .248 .278 49 -1.3
Hudson Head .227 .297 .342 75 0.2 .173 .242 .258 40 -1.6
Dustin Peterson .239 .305 .385 88 0.1 .182 .245 .291 49 -1.5
Maikol Escotto .222 .257 .338 62 -0.3 .167 .204 .248 25 -1.6
Lonnie White Jr. .206 .284 .350 75 0.0 .153 .234 .255 39 -1.6
Luke Brown .210 .283 .307 64 -0.2 .154 .221 .224 25 -1.4
Josiah Sightler .247 .304 .372 87 -0.1 .178 .237 .268 43 -1.8
Kalae Harrison .197 .266 .242 42 -0.8 .142 .207 .176 9 -1.9

Batters – Platoon Splits

Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Oneil Cruz .243 .305 .422 .258 .330 .475
Spencer Horwitz .259 .344 .373 .281 .376 .439
Nick Gonzales .272 .331 .438 .260 .320 .413
Bryan Reynolds .272 .335 .439 .264 .342 .439
Ke’Bryan Hayes .267 .322 .405 .244 .297 .347
Jared Triolo .253 .335 .373 .241 .314 .342
Endy Rodríguez .252 .310 .403 .240 .300 .382
Jack Suwinski .225 .312 .413 .234 .328 .455
Bryce Johnson .252 .327 .359 .250 .338 .345
Henry Davis .241 .341 .422 .229 .319 .388
Ji Hwan Bae .250 .312 .350 .268 .337 .388
Yasmani Grandal .236 .341 .361 .229 .321 .366
Nick Yorke .242 .308 .345 .248 .307 .363
Michael A. Taylor .227 .290 .351 .219 .278 .339
Liover Peguero .249 .297 .381 .234 .279 .356
Joey Bart .245 .327 .408 .242 .314 .382
Trey Cabbage .218 .277 .387 .245 .317 .443
Isiah Kiner-Falefa .265 .315 .348 .261 .304 .345
Billy Cook .232 .304 .404 .232 .293 .376
Tsung-Che Cheng .219 .285 .328 .229 .299 .341
Joshua Palacios .253 .317 .379 .267 .331 .427
Enmanuel Valdez .220 .284 .348 .238 .307 .420
Jack Brannigan .215 .298 .376 .219 .292 .352
Tristan Gray .205 .260 .353 .221 .280 .388
Shawn Ross .169 .267 .337 .176 .267 .326
Connor Joe .240 .340 .411 .226 .318 .354
Matt Gorski .225 .279 .415 .223 .267 .398
Jason Delay .243 .309 .351 .231 .284 .308
Alika Williams .240 .301 .355 .243 .297 .326
Nick Solak .259 .341 .353 .243 .321 .351
Termarr Johnson .197 .285 .276 .215 .315 .327
Jake Lamb .213 .294 .293 .242 .323 .377
Omar Alfonzo .194 .269 .287 .218 .292 .327
Andrés Alvarez .227 .301 .373 .219 .286 .333
Andrew McCutchen .232 .336 .404 .223 .319 .360
Jase Bowen .238 .289 .374 .219 .267 .327
Billy McKinney .221 .303 .338 .233 .319 .370
Joe Perez .246 .308 .380 .246 .295 .371
Nick Cimillo .233 .326 .388 .220 .298 .371
Rowdy Tellez .237 .306 .371 .243 .309 .414
Darick Hall .216 .276 .345 .229 .296 .392
Tres Gonzalez .232 .298 .263 .242 .308 .309
Abrahan Gutierrez .240 .303 .330 .225 .282 .318
Eli Wilson .214 .290 .304 .198 .259 .311
Duce Gourson .160 .300 .200 .183 .300 .233
Seth Beer .220 .302 .317 .237 .313 .374
Carter Bins .189 .280 .337 .187 .263 .316
Geovanny Planchart .200 .294 .280 .190 .273 .259
Matt Fraizer .220 .280 .318 .229 .282 .335
Kervin Pichardo .226 .289 .339 .216 .270 .325
Malcom Nuñez .237 .296 .349 .226 .282 .329
Jose Rojas .204 .275 .361 .205 .283 .393
DJ Stewart .203 .298 .311 .213 .310 .357
Wyatt Hendrie .197 .260 .282 .197 .259 .263
Sammy Siani .218 .283 .300 .224 .287 .328
Sergio Campana .191 .287 .258 .183 .275 .260
Mitch Jebb .211 .266 .289 .226 .290 .303
P.J. Hilson .217 .263 .368 .215 .259 .329
Jackson Glenn .216 .270 .324 .200 .245 .287
Aaron McKeithan .231 .307 .295 .225 .300 .289
Grant Koch .185 .254 .278 .186 .238 .278
Mike Jarvis .194 .248 .280 .190 .247 .279
Mason Martin .191 .260 .360 .195 .273 .385
Javier Rivas .195 .244 .293 .201 .243 .302
Aaron Shackelford .193 .254 .328 .195 .261 .359
Brenden Dixon .193 .280 .301 .198 .272 .331
Hudson Head .190 .258 .289 .198 .270 .313
Dustin Peterson .220 .287 .366 .204 .263 .309
Maikol Escotto .205 .239 .307 .192 .229 .291
Lonnie White Jr. .192 .273 .343 .174 .253 .285
Luke Brown .164 .227 .246 .184 .257 .266
Josiah Sightler .200 .256 .307 .213 .275 .329
Kalae Harrison .161 .235 .194 .168 .235 .216

Pitchers – Advanced

Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Paul Skenes 155.3 10.5 2.5 1.0 6.8% 28.8% .286 129 130 3.18 77 3.6
Mitch Keller 168.0 8.1 2.6 1.1 6.9% 21.5% .296 104 102 4.01 96 2.5
Jared Jones 129.7 9.1 2.7 1.1 7.2% 24.3% .287 108 111 3.80 93 2.2
Bailey Falter 125.7 6.4 2.6 1.2 6.8% 16.9% .288 96 96 4.44 104 1.4
Thomas Harrington 111.7 7.1 2.4 1.3 6.3% 18.5% .295 96 100 4.41 104 1.3
Johan Oviedo 109.7 8.2 3.6 1.1 9.3% 21.1% .287 98 99 4.32 102 1.3
Braxton Ashcraft 81.0 7.3 2.0 1.1 5.3% 19.4% .299 105 107 3.89 95 1.3
Bubba Chandler 110.0 7.8 3.5 1.2 9.1% 20.0% .291 93 98 4.59 107 1.1
Carmen Mlodzinski 71.3 7.8 3.5 0.9 9.1% 20.2% .290 107 109 4.02 93 0.9
Domingo Germán 88.7 7.8 3.1 1.2 8.2% 20.3% .291 94 90 4.39 107 0.9
Caleb Ferguson 54.7 9.5 3.5 0.5 9.1% 25.0% .311 127 125 3.20 79 0.8
Sean Sullivan 99.3 6.1 3.2 1.2 8.1% 15.4% .294 89 94 4.74 112 0.8
David Bednar 60.0 9.6 3.2 0.9 8.4% 25.5% .291 116 114 3.49 86 0.8
Cam Alldred 75.7 7.3 3.6 1.1 9.1% 18.5% .295 93 95 4.46 108 0.8
Mike Burrows 73.3 7.4 3.4 1.2 8.8% 18.9% .282 92 97 4.58 108 0.7
Marco Gonzales 83.3 5.7 2.8 1.4 7.2% 14.7% .294 88 85 4.94 113 0.7
Anthony Solometo 94.3 6.0 3.8 1.1 9.5% 15.0% .295 86 92 4.99 116 0.6
Joey Wentz 84.3 9.0 3.9 1.2 10.0% 22.8% .303 93 97 4.27 107 0.6
Dennis Santana 61.7 8.8 3.5 0.7 9.2% 22.9% .288 110 108 3.60 91 0.6
Jalen Beeks 71.7 7.5 3.6 0.9 9.2% 19.0% .306 101 99 4.15 99 0.6
Beau Sulser 75.3 6.1 2.7 1.3 6.9% 15.4% .305 90 88 4.76 111 0.6
Po-Yu Chen 118.3 5.8 3.3 1.3 8.2% 14.5% .297 83 89 5.11 120 0.6
Colin Holderman 55.0 9.0 3.8 0.8 9.8% 23.4% .289 107 107 3.83 94 0.6
Nick Dombkowski 76.0 6.2 3.2 1.2 8.1% 15.6% .295 91 94 4.67 110 0.5
Wily Peralta 64.7 6.7 4.2 1.3 10.3% 16.5% .299 89 81 4.99 113 0.5
Kade McClure 59.3 6.4 3.3 1.1 8.5% 16.2% .303 92 93 4.56 109 0.5
Kyle Nicolas 76.3 8.7 4.6 1.1 11.4% 21.7% .296 94 96 4.54 107 0.5
Luis Cessa 77.0 5.4 3.4 1.2 8.5% 13.4% .298 87 84 4.84 114 0.5
Dominic Perachi 95.7 6.5 4.0 1.2 9.8% 16.1% .297 82 87 5.07 121 0.4
Hunter Stratton 51.0 8.6 3.5 0.9 9.1% 22.3% .296 103 104 3.94 97 0.4
Aaron Shortridge 80.0 5.7 3.4 1.4 8.4% 14.3% .296 85 85 5.09 118 0.4
Carson Fulmer 72.7 7.4 4.5 1.0 11.0% 18.4% .292 91 90 4.61 109 0.4
Chase Shugart 70.3 6.8 3.3 1.2 8.4% 17.1% .298 91 92 4.61 110 0.4
Daulton Jefferies 54.0 6.5 2.5 1.2 6.4% 16.7% .304 87 88 4.42 115 0.3
Emmanuel Chapman 68.7 6.9 3.9 1.2 9.8% 17.3% .295 89 92 4.74 113 0.3
Dauri Moreta 47.7 9.4 3.6 1.3 9.4% 24.6% .280 101 101 4.31 99 0.3
Chris Gau 45.3 6.9 3.6 1.2 9.0% 17.5% .295 92 92 4.61 109 0.2
Jaden Woods 57.3 7.8 3.8 0.9 9.6% 20.1% .298 95 100 4.31 105 0.2
Isaac Mattson 57.7 8.7 5.2 1.1 12.8% 21.7% .289 89 90 4.74 112 0.2
Peter Strzelecki 51.0 8.3 3.7 1.1 9.5% 21.4% .297 95 95 4.34 105 0.1
Brady Feigl 55.0 7.7 3.8 1.5 9.3% 19.0% .309 85 80 5.01 117 0.1
Drake Fellows 64.0 6.2 4.6 1.3 11.3% 15.0% .296 81 82 5.32 124 0.1
Justin Bruihl 48.7 7.0 3.5 0.9 9.0% 18.1% .288 94 94 4.49 106 0.1
Justin Meis 69.3 6.9 4.4 1.3 10.9% 16.9% .296 83 87 5.13 121 0.1
Yerry Rodríguez 50.0 8.5 4.7 1.1 11.6% 21.0% .308 86 89 4.60 116 0.1
Tyler Samaniego 35.0 7.5 4.1 1.0 10.4% 18.8% .291 96 98 4.55 104 0.1
Ryder Ryan 53.0 7.1 3.6 1.0 9.1% 18.1% .298 95 94 4.48 105 0.1
Burch Smith 44.0 7.2 2.7 1.2 6.8% 18.2% .309 93 86 4.38 107 0.0
Yohan Ramírez 58.3 8.5 4.0 0.8 10.2% 21.5% .288 94 92 4.36 107 0.0
Ryan Borucki 24.0 9.4 4.5 1.1 11.2% 23.4% .297 93 89 4.59 107 0.0
Valentin Linarez 56.3 7.2 4.8 1.3 11.7% 17.5% .294 82 87 5.29 122 0.0
Geronimo Franzua 50.7 8.0 4.1 1.4 10.1% 19.8% .299 84 84 4.99 119 -0.1
Fineas Del Bonta-Smith 41.7 6.9 3.5 1.3 8.6% 17.3% .297 88 89 4.81 113 -0.1
Elvis Alvarado 44.0 8.0 4.5 1.2 11.1% 19.7% .297 85 90 4.95 117 -0.1
Jaycob Deese 52.3 5.2 2.9 1.4 7.3% 12.8% .301 84 87 5.11 119 -0.1
J.C. Flowers 59.7 6.2 5.1 1.1 12.2% 14.7% .300 82 84 5.24 122 -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
Paul Skenes .218 .285 .360 .218 .263 .347 4.8 2.4 2.59 3.93
Mitch Keller .259 .324 .414 .239 .298 .387 3.3 1.5 3.60 4.61
Jared Jones .227 .298 .362 .240 .293 .404 3.2 1.1 3.21 4.58
Bailey Falter .262 .300 .411 .259 .316 .434 2.0 0.7 3.93 4.91
Thomas Harrington .265 .323 .427 .259 .304 .435 2.1 0.6 3.77 5.06
Johan Oviedo .244 .336 .380 .239 .309 .404 2.0 0.6 3.82 4.89
Braxton Ashcraft .244 .292 .385 .274 .309 .451 1.9 0.7 3.36 4.65
Bubba Chandler .262 .345 .467 .241 .310 .368 1.8 0.4 4.04 5.04
Carmen Mlodzinski .244 .315 .382 .241 .319 .366 1.4 0.3 3.39 4.67
Domingo Germán .251 .323 .434 .250 .311 .401 1.4 0.3 3.96 5.08
Caleb Ferguson .229 .321 .300 .237 .314 .345 1.3 0.3 2.62 4.04
Sean Sullivan .257 .329 .398 .278 .336 .463 1.4 0.2 4.20 5.26
David Bednar .219 .297 .352 .236 .296 .366 1.4 0.1 2.85 4.56
Cam Alldred .217 .305 .337 .273 .342 .449 1.1 0.2 4.08 5.27
Mike Burrows .246 .320 .440 .250 .320 .382 1.2 0.2 4.03 5.15
Marco Gonzales .284 .337 .432 .272 .325 .469 1.1 0.2 4.28 5.37
Anthony Solometo .257 .331 .425 .273 .353 .432 1.2 0.1 4.42 5.36
Joey Wentz .252 .319 .411 .248 .331 .414 1.2 -0.2 3.78 5.52
Dennis Santana .227 .315 .351 .232 .301 .348 1.0 0.1 3.19 4.56
Jalen Beeks .235 .313 .400 .268 .342 .399 1.1 -0.1 3.48 5.01
Beau Sulser .288 .348 .473 .270 .318 .440 1.0 0.0 4.17 5.35
Po-Yu Chen .290 .361 .477 .262 .331 .430 1.1 -0.1 4.61 5.48
Colin Holderman .240 .339 .385 .221 .294 .336 1.0 0.0 3.28 4.87
Nick Dombkowski .253 .324 .414 .275 .330 .446 1.0 0.0 4.11 5.25
Wily Peralta .278 .357 .476 .258 .336 .394 0.9 0.0 4.17 5.52
Kade McClure .279 .352 .423 .262 .324 .421 0.9 0.1 4.01 5.24
Kyle Nicolas .241 .356 .387 .245 .328 .396 1.0 -0.2 3.91 5.30
Luis Cessa .276 .338 .434 .277 .337 .452 0.8 0.0 4.35 5.35
Dominic Perachi .243 .331 .387 .277 .357 .454 0.9 -0.1 4.63 5.59
Hunter Stratton .264 .360 .414 .220 .289 .339 0.8 -0.1 3.43 5.06
Aaron Shortridge .273 .347 .422 .278 .333 .485 0.8 -0.1 4.46 5.53
Carson Fulmer .264 .356 .426 .239 .328 .381 0.8 -0.1 3.99 5.33
Chase Shugart .263 .336 .421 .265 .331 .435 0.8 -0.1 4.17 5.34
Daulton Jefferies .274 .333 .453 .270 .317 .414 0.6 0.0 4.35 5.61
Emmanuel Chapman .243 .333 .404 .279 .340 .441 0.7 -0.2 4.26 5.38
Dauri Moreta .238 .319 .452 .224 .300 .357 0.7 -0.2 3.45 5.26
Chris Gau .281 .347 .461 .242 .314 .396 0.5 -0.1 4.07 5.27
Jaden Woods .236 .325 .319 .257 .337 .421 0.6 -0.3 3.87 5.18
Isaac Mattson .233 .339 .340 .244 .350 .437 0.7 -0.3 3.93 5.51
Peter Strzelecki .284 .360 .466 .218 .304 .345 0.5 -0.3 3.76 5.30
Brady Feigl .259 .322 .420 .279 .358 .479 0.6 -0.3 4.10 5.72
Drake Fellows .293 .385 .463 .248 .331 .414 0.5 -0.4 4.73 5.92
Justin Bruihl .222 .305 .319 .265 .351 .436 0.5 -0.3 3.80 5.20
Justin Meis .258 .356 .445 .270 .343 .439 0.5 -0.4 4.56 5.73
Yerry Rodríguez .270 .369 .438 .243 .333 .383 0.4 -0.4 4.26 5.68
Tyler Samaniego .227 .320 .318 .261 .343 .446 0.3 -0.2 3.86 5.04
Ryder Ryan .295 .376 .455 .231 .304 .372 0.5 -0.3 3.75 5.04
Burch Smith .291 .341 .494 .255 .315 .398 0.3 -0.3 3.73 5.39
Yohan Ramírez .253 .368 .400 .219 .322 .328 0.5 -0.5 3.84 5.23
Ryan Borucki .200 .314 .333 .258 .356 .403 0.2 -0.3 3.82 5.55
Valentin Linarez .273 .376 .465 .250 .343 .403 0.3 -0.4 4.59 5.70
Geronimo Franzua .250 .329 .375 .265 .348 .478 0.4 -0.6 4.16 5.97
Fineas Del Bonta-Smith .276 .353 .461 .256 .320 .422 0.2 -0.5 4.18 5.52
Elvis Alvarado .231 .348 .359 .274 .352 .474 0.2 -0.5 4.28 5.65
Jaycob Deese .310 .369 .520 .263 .315 .421 0.2 -0.4 4.41 5.51
J.C. Flowers .268 .366 .402 .270 .367 .437 0.2 -0.6 4.67 5.88

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. It is important to remember that ZiPS is agnostic about playing time, and has no information about, for example, how quickly a team will call up a prospect or what veteran has fallen into disfavor.

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