Archive for Daily Graphings

2025 ZiPS Projections: St. Louis Cardinals

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 penultimate team is the St. Louis Cardinals.

Batters

The 2024 St. Louis Cardinals experienced a bit of a bounce back from the team’s worst season in decades, but in a year where it took 89 wins to grab the final NL Wild Card spot, the Red Birds were still well short of being able to squeeze back into the playoffs. While things were sunnier than they were the year before, the Cardinals were outscored on the season, and neither of the stars in the lineup, Paul Goldschmidt and Nolan Arenado, returned to their 2023 form. It doesn’t appear as if the Cards feel like they’re on the precipice of an October return, as they’ve largely spent the offseason trying to trade Arenado.

Might Arenado actually be underrated at this point? While his offensive production has come down quite a bit from its peak, his 149 wRC+ in 2022 was likely always a late-era outlier, and a 102 wRC+ is hardly lousy for a third baseman. He’s no longer a star without a resurgence at the plate, but he was at least a good player in 2024, amassing 3.1 WAR thanks to very good defense at the hot corner. I think the perception of Arenado’s 2024 might be a lot worse than his season actually was. When I posted the depth chart graphic on social media, it led to a couple of conversations about ZiPS projecting a comeback season, even though the 2.9 WAR it forecasts is below his 2024 number!

With two glaring exceptions, ZiPS mostly thinks that the Cards are adequate to good around the diamond. Masyn Winn projects as the lineup’s second-best player, and though ZiPS isn’t crazy about Thomas Saggese, it likes Brendan Donovan enough to end up with a good second base WAR number, assuming the latter gets the plate appearances projected on our Depth Charts. The system projects that Willson Contreras will be good enough offensively that he could be a reasonable first baseman, and though it pulls back considerably on Iván Herrera’s rookie offense, the tandem of him and Pedro Pagés also looks solid.

Where ZiPS is unhappy is in the non-Lars Nootbaar portions of the outfield. In center field, Victor Scott II’s defense isn’t enough to completely cancel out a bleak offensive projection, and the computer doesn’t see Michael Siani as providing much of a shove. Scott’s a weird one to project in that he actually hit pretty decently in Double-A in 2023, but he was absolutely horrific in the minors last year, putting up a 59 wRC+. Note that that’s not the translation, but his actual number. Scott hit somewhat better in July after changing his stance, putting up a .711 OPS for the Triple-A Memphis Redbirds, but that hint of production disappeared in the majors and he earned a demotion in mid-September.

As for the other exception, Jordan Walker, ZiPS actually thinks he improved his defense somewhat in 2024, to the point that he’s not a pure designated hitter, just a fairly lousy right fielder who could play if he hits. But that’s kind of the problem. Walker now has about 500 PA of not hitting Triple-A pitchers. If Scott had a 93 wRC+ at Triple-A, it would be cause for optimism, but it’s completely inadequate for someone who is supposed to be valued entirely for his bat. Walker isn’t old, and you can squint and still kind of see his upside, but the odds are against him being a real contributor in 2025.

Pitchers

I’m not sure why ZiPS is suddenly reminded of a couple of knuckleballers, Phil Niekro and Tom Candiotti, when it looks at Sonny Gray, but removing them from the large cohort doesn’t change Gray’s projection, which makes him the favorite to represent the Cardinals at the All-Star Game this summer. It’s hard to tell how seriously the team really considered trading Gray, but he does have some pretty decent value with two years left on his contract. Of course, that assumes that his forearm tendinitis isn’t something darker, but really, you could say that about every pitcher who has ever existed.

He projects as having lower long-term upside than either Quinn Mathews or Tink Hence, but ZiPS is increasingly a fan of Michael McGreevy, who has good control and keeps the ball down, which has value in front of what ZiPS projects to be an above-average infield. Both Mathews and Hence project as legitimate starters right now, with ZiPS a little more confident about the former for 2025. ZiPS isn’t expecting quite as good a year from Erick Fedde, but it remains comfortable with the back of St. Louis’ rotation, both in terms of its non-horrendous quality and its reasonable depth.

It might be a stretch to say that ZiPS sees the Cardinals bullpen as “Ryan Helsley and some other guys,” but their hard-throwing closer is the only reliever who the computer can summon any excitement about. Helsley lost a couple of strikeouts per game coming back from his 2023 injuries, but ZiPS isn’t worried about that, as his velocity is intact and his contact rate is consistent with that of a whiffier pitcher. Ryan Fernandez, JoJo Romero, and John King all project as a bit above average, and the computer would put Matthew Liberatore in that group as well. ZiPS is rather meh on the low-leverage portion of the bullpen, and while the Cardinals could certainly add an arm or two there, this doesn’t appear to be a team that intends to make so much as a ripple in free agency.

Unlike most seasons, ZiPS does’t see the Cardinals as being in the same tier as the Brewers and Cubs. St. Louis has better projections than the Pirates and Reds, at least for now, but even then, only barely. It has been an incredibly quiet offseason in St. Louis outside of the constant Arenado rumors, with the team doing just about nothing, and we’re now only a few weeks from the opening of spring training. The team’s biggest signing this winter? Ryan Vilade. Even throwing in the towel would be more interesting, and probably more helpful than cosplaying as the heat death of the universe.

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
Nolan Arenado R 34 3B 580 527 61 139 28 1 18 77 42 85 2 2
Masyn Winn R 23 SS 639 584 87 148 29 5 14 71 44 116 13 4
Willson Contreras R 33 C 422 362 50 86 19 0 16 52 44 107 4 2
Brendan Donovan L 28 LF 584 514 69 144 26 2 12 63 53 76 4 4
Lars Nootbaar L 27 RF 475 405 63 99 22 3 16 55 63 97 7 2
Alec Burleson L 26 LF 545 501 63 139 23 2 17 73 34 74 6 2
Nolan Gorman L 25 2B 511 461 67 106 19 0 27 75 46 170 6 1
Iván Herrera R 25 C 386 335 47 84 16 2 8 42 43 84 5 1
Jimmy Crooks L 23 C 409 367 42 90 18 2 7 46 32 100 2 0
Thomas Saggese R 23 SS 585 541 70 132 24 4 15 73 28 151 7 3
César Prieto L 26 3B 524 496 55 128 25 2 8 59 18 70 4 5
Leonardo Bernal B 21 C 432 395 42 90 16 2 7 41 33 106 3 4
Bryan Torres L 27 CF 507 450 62 123 22 2 1 44 43 89 18 8
Brandon Crawford L 38 SS 316 281 34 64 13 1 8 34 28 78 2 1
Pedro Pagés R 26 C 355 322 30 71 12 1 8 40 26 93 2 0
Matt Koperniak L 27 LF 500 459 50 116 18 2 11 58 33 102 5 4
Victor Scott II L 24 CF 532 480 58 107 15 5 7 47 33 106 32 6
Mike Antico L 27 CF 511 468 60 106 19 3 10 54 32 129 23 4
Sammy Hernandez R 21 C 371 330 41 64 12 2 5 39 25 84 1 1
Ryan Vilade R 26 RF 489 443 52 105 18 3 8 51 36 119 11 5
Arquímedes Gamboa B 27 SS 374 333 39 69 12 2 5 31 38 106 5 2
Jordan Walker R 23 RF 589 536 57 131 27 3 19 71 42 136 6 3
Jose Barrero R 27 SS 375 342 40 71 14 2 10 44 21 128 11 2
José Fermín R 26 SS 321 279 40 64 11 1 5 34 29 39 9 3
Gavin Collins R 29 C 212 191 19 41 7 0 5 24 13 44 0 0
Michael Siani L 25 CF 459 409 52 86 12 3 5 36 38 115 21 6
Luken Baker R 28 1B 480 425 46 90 17 0 21 66 47 132 1 0
Chance Sisco L 30 C 129 116 12 20 5 0 3 14 9 45 0 0
Carlos Linarez R 23 C 133 125 7 23 4 0 1 9 6 45 1 0
Matt Carpenter L 39 DH 192 162 18 32 9 0 6 21 24 59 0 1
Chase Davis L 23 CF 464 419 44 86 19 1 8 46 37 137 4 1
Alfonso Rivas III L 28 1B 383 332 41 76 17 2 4 39 39 103 3 0
Chase Adkison R 25 C 230 207 18 45 8 1 2 22 15 53 0 1
Chris Rotondo R 26 RF 404 362 45 78 15 2 5 40 27 138 8 3
Jacob Buchberger R 27 3B 426 392 46 85 12 3 6 38 30 114 7 4
Ramon Mendoza R 24 2B 278 245 25 50 10 1 3 23 21 72 1 1
Dakota Harris R 23 2B 363 333 38 77 16 0 6 40 13 89 4 3
Graysen Tarlow R 23 C 89 79 5 14 2 0 1 6 8 24 0 0
Nathan Church L 24 RF 522 478 60 112 18 1 4 47 29 70 13 4
Joshua Baez R 22 RF 348 314 36 61 14 1 8 38 24 147 15 3
Noah Mendlinger L 24 2B 422 374 41 89 15 1 1 39 29 62 3 4
Jeremy Rivas R 22 SS 479 431 47 93 11 1 2 35 33 109 14 6
R.J. Yeager R 26 1B 473 436 55 102 17 1 10 52 25 76 6 2
Matt Lloyd L 29 DH 437 392 46 87 18 0 10 48 34 110 7 2
Brody Moore R 24 SS 408 376 41 82 13 2 2 30 23 101 13 6
Anyelo Encarnacion R 21 2B 343 307 38 59 11 1 5 28 28 122 5 3
Wade Stauss L 26 C 129 109 8 18 4 0 1 12 11 59 0 0
Trey Paige L 24 3B 395 356 41 68 14 3 1 29 30 119 3 1
Michael Curialle R 24 3B 351 315 37 65 15 2 4 35 21 117 3 2
Zach Levenson R 23 LF 309 277 28 51 11 1 6 31 25 84 4 2
Tre Richardson R 23 2B 347 307 28 57 10 4 1 26 25 105 8 5
Miguel Villarroel R 23 SS 428 405 44 92 16 2 2 36 13 110 16 3
Kade Kretzschmar L 25 LF 348 311 33 67 9 3 1 30 26 84 3 2
Darlin Moquete R 25 DH 312 286 40 58 8 1 8 32 17 87 7 3
Johnfrank Salazar R 21 1B 338 311 29 68 13 0 3 30 18 59 0 1
Chandler Redmond L 28 1B 425 385 39 77 13 1 10 43 35 161 2 1
Won-Bin Cho L 21 CF 457 411 45 85 13 3 3 37 31 153 10 7
William Sullivan L 24 1B 169 154 13 26 4 0 2 16 11 64 1 1
Alex Iadisernia L 24 LF 439 399 43 79 17 3 6 40 29 120 11 6
Miguel Ugueto R 22 LF 251 239 22 49 10 2 2 20 7 60 5 3
Osvaldo Tovalin L 25 1B 394 370 35 76 13 1 4 38 12 82 4 2
Brayden Jobert L 24 RF 370 328 33 55 9 1 6 36 28 125 7 3

Batters – Advanced
Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Nolan Arenado 580 .264 .321 .423 106 .159 .285 5 2.9 .321 102 73
Masyn Winn 639 .253 .307 .392 94 .139 .295 5 2.9 .304 97 75
Willson Contreras 422 .237 .341 .422 113 .185 .293 -2 2.6 .336 106 54
Brendan Donovan 584 .280 .360 .408 115 .128 .310 2 2.5 .339 113 78
Lars Nootbaar 475 .244 .344 .432 116 .188 .284 4 2.3 .337 114 62
Alec Burleson 545 .277 .325 .433 110 .156 .297 2 2.0 .328 111 73
Nolan Gorman 511 .230 .301 .447 106 .217 .300 -4 1.9 .322 109 64
Iván Herrera 386 .251 .342 .382 103 .131 .312 -2 1.9 .321 102 45
Jimmy Crooks 409 .245 .314 .363 89 .117 .320 4 1.9 .298 93 42
Thomas Saggese 585 .244 .291 .386 88 .142 .312 -1 1.6 .295 92 64
César Prieto 524 .258 .292 .365 83 .107 .287 8 1.3 .287 84 56
Leonardo Bernal 432 .228 .289 .331 74 .104 .294 7 1.3 .276 79 40
Bryan Torres 507 .273 .336 .337 90 .064 .338 -2 1.1 .300 89 58
Brandon Crawford 316 .228 .304 .367 87 .139 .287 2 1.0 .293 78 32
Pedro Pagés 355 .220 .282 .338 73 .118 .285 4 1.0 .274 73 31
Matt Koperniak 500 .253 .308 .373 90 .120 .304 6 1.0 .299 91 55
Victor Scott II 532 .223 .280 .318 68 .096 .272 5 0.7 .265 71 52
Mike Antico 511 .226 .283 .344 75 .118 .292 1 0.7 .277 77 52
Sammy Hernandez 371 .194 .274 .288 58 .094 .245 7 0.6 .255 62 27
Ryan Vilade 489 .237 .299 .345 80 .108 .306 8 0.6 .284 81 50
Arquímedes Gamboa 374 .207 .292 .301 67 .093 .289 3 0.6 .268 67 31
Jordan Walker 589 .244 .306 .412 99 .168 .294 -5 0.5 .312 102 70
Jose Barrero 375 .208 .270 .348 72 .140 .299 0 0.4 .272 72 35
José Fermín 321 .229 .315 .329 82 .100 .251 -4 0.4 .290 84 32
Gavin Collins 212 .214 .280 .329 70 .115 .253 -1 0.2 .271 69 18
Michael Siani 459 .210 .281 .291 61 .081 .280 4 0.2 .258 64 40
Luken Baker 480 .212 .292 .400 92 .188 .254 -1 0.1 .300 94 50
Chance Sisco 129 .173 .256 .294 54 .121 .252 2 0.1 .249 54 9
Carlos Linarez 133 .185 .227 .241 32 .056 .280 5 0.0 .210 33 7
Matt Carpenter 192 .197 .308 .363 88 .166 .267 0 0.0 .298 80 19
Chase Davis 464 .205 .276 .312 65 .107 .284 3 0.0 .261 70 37
Alfonso Rivas III 383 .229 .323 .328 84 .099 .320 -1 0.0 .294 83 36
Chase Adkison 230 .217 .280 .294 62 .077 .283 0 0.0 .258 64 18
Chris Rotondo 404 .215 .287 .309 68 .094 .333 6 -0.1 .268 70 35
Jacob Buchberger 426 .217 .277 .309 64 .092 .290 3 -0.1 .260 66 36
Ramon Mendoza 278 .204 .275 .290 59 .086 .277 2 -0.1 .255 61 20
Dakota Harris 363 .231 .276 .333 70 .102 .298 -1 -0.2 .268 72 33
Graysen Tarlow 89 .176 .258 .239 41 .063 .239 0 -0.2 .230 39 5
Nathan Church 522 .234 .289 .301 66 .067 .267 8 -0.2 .263 68 46
Joshua Baez 348 .194 .265 .322 64 .128 .334 3 -0.3 .261 73 31
Noah Mendlinger 422 .238 .312 .292 71 .054 .283 -5 -0.4 .275 73 36
Jeremy Rivas 479 .216 .277 .260 52 .044 .284 2 -0.4 .245 57 37
R.J. Yeager 473 .234 .286 .346 76 .112 .263 2 -0.4 .278 77 45
Matt Lloyd 437 .222 .291 .345 78 .123 .283 0 -0.5 .280 77 41
Brody Moore 408 .218 .267 .279 54 .061 .293 -1 -0.6 .245 55 33
Anyelo Encarnacion 343 .192 .266 .284 55 .091 .301 0 -0.6 .248 62 26
Wade Stauss 129 .165 .282 .229 46 .064 .346 -5 -0.7 .244 44 7
Trey Paige 395 .191 .258 .256 45 .065 .284 5 -0.7 .233 48 24
Michael Curialle 351 .206 .277 .304 63 .098 .314 -4 -0.7 .261 64 28
Zach Levenson 309 .184 .262 .296 57 .112 .241 1 -0.9 .251 64 23
Tre Richardson 347 .186 .262 .254 46 .068 .279 1 -0.9 .235 51 24
Miguel Villarroel 428 .227 .257 .291 54 .064 .307 -4 -1.0 .241 57 35
Kade Kretzschmar 348 .215 .289 .273 59 .058 .292 0 -1.0 .256 63 26
Darlin Moquete 312 .203 .253 .322 60 .119 .262 0 -1.1 .253 63 26
Johnfrank Salazar 338 .219 .269 .290 57 .071 .261 2 -1.1 .248 63 25
Chandler Redmond 425 .200 .271 .317 64 .117 .314 1 -1.1 .261 65 34
Won-Bin Cho 457 .207 .270 .275 54 .068 .321 -2 -1.2 .246 61 35
William Sullivan 169 .169 .243 .234 35 .065 .273 -2 -1.3 .220 44 9
Alex Iadisernia 439 .198 .263 .301 58 .103 .268 1 -1.3 .252 63 36
Miguel Ugueto 251 .205 .231 .289 45 .084 .266 -1 -1.5 .227 49 18
Osvaldo Tovalin 394 .206 .247 .279 47 .073 .254 3 -1.7 .235 52 27
Brayden Jobert 370 .168 .254 .256 44 .088 .249 -2 -1.9 .234 48 24

Batters – Top Near-Age Offensive Comps
Player Hit Comp 1 Hit Comp 2 Hit Comp 3
Nolan Arenado Bill Madlock Mike Lowell Brooks Robinson
Masyn Winn Jimmy Rollins Robin Yount Zoilo Versalles
Willson Contreras Mike Stanley Chris Hoiles Ray Mueller
Brendan Donovan Mark Grace Orlando Gonzalez Nick Markakis
Lars Nootbaar Mike Jorgensen Tommy Henrich Phil Stephenson
Alec Burleson Derrick May Chad Tracy Lou Piniella
Nolan Gorman Dean Palmer Pedro Alvarez Jeff Kent
Iván Herrera Doug Robbins Shawn McGill Mike Stanley
Jimmy Crooks Frank Zupo Jim Bonnici Johnny Edwards
Thomas Saggese Alex Gonzalez Max Alvis Sheldon Neuse
César Prieto Luis Sojo Bruce Miller Bobby Pfeil
Leonardo Bernal Bill Fahey Conrado Lezcano John Wathan
Bryan Torres Joey Gathright Tony Gwynn Jr. Orlando Gonzalez
Brandon Crawford Chris Speier Don Lang Charlie Hayes
Pedro Pagés Dusty Brown Martín Maldonado Chad Moeller
Matt Koperniak Andy Dirks Art James Del Unser
Victor Scott II Keith Curcio Mel Stocker Tike Redman
Mike Antico Gary Brown Dave Jacas Eric Fox
Sammy Hernandez Wynston Sawyer Ben Rortvedt Gerry Brooks
Ryan Vilade Gary Thomas Winston Ficklin Jamie Hoffmann
Arquímedes Gamboa Darrel Chaney Anderson Machado Ken Jackson
Jordan Walker Frank Demaree Les Norman Darryl Motley
Jose Barrero Haley Young Carlos Duncan Tony Thomas
José Fermín Sonny Jackson Jeff Huson Al Newman
Gavin Collins Cody Clark Jerry Zimmerman Jim Command
Michael Siani Patrick Biondi Steve Murphy Mike Mesh
Luken Baker Eric Munson Cotton Nash R C Stevens
Chance Sisco Jeff Hearron Gary Tremblay Fred Hofmann
Carlos Linarez Josh Davis Juan Nunez Angel Diaz
Matt Carpenter Woodie Held Duke Snider Eric Hinske
Chase Davis Jake Skole Sean Dwyer Andy Rohleder
Alfonso Rivas III Reid Fronk Derek Nicholson Joe Bracchitta
Chase Adkison David Fore Matt Kennelly Jorge Maduro
Chris Rotondo Mark Doran Torii Hunter Juan Piniella
Jacob Buchberger Shane Turner Ed Lucas Jeff Bertoni
Ramon Mendoza Chuck Scrivener Zach McKinstry John Hamilton
Dakota Harris Rex Hudler Luis Gonzalez Pat Meares
Graysen Tarlow Mark Carroll John Harrell Raul Jimenez
Nathan Church Bobby Moore Pookie Wilson Chad Wright
Joshua Baez Tyler Johnson Todd Steverson Dylan Johnston
Noah Mendlinger Douglas Palmer Irving Lopez Raymond Rivas
Jeremy Rivas Jhonny Carvajal Chone Figgins Guillermo Reyes
R.J. Yeager Tony Martinez Ken Foster Garrett Guzman
Matt Lloyd Andy Barkett Larry DiPippo Danny Ozark
Brody Moore James Lofton Robbie Hudson Ryan Rutz
Anyelo Encarnacion Joe Morales Wayne Busby Kevin Flora
Wade Stauss Jim Baxter Matt Allen Bodie Shepherd
Trey Paige Jack Lind Zach Strong Pooh Hines
Michael Curialle Rob Marconi Rob Mackowiak Ronald Schmitt
Zach Levenson Joe Mackay Theodore Savia Dan Madsen
Tre Richardson Rick Wolff Ron Dillard Kevin Flora
Miguel Villarroel Tony Pena Jr. Tim Olson Juan Ciriaco
Kade Kretzschmar Justin Maffei Matthew Acosta Jared James
Darlin Moquete Sthervin Matos Jeffrey Baez Jerry Simmons
Johnfrank Salazar Ruben Cruz Jeffrey Ronevich Mark Elliott
Chandler Redmond Ron Durham Phil Westendorf Chip Cannon
Won-Bin Cho Greg Burns Josh Womack Kevin Kiermaier
William Sullivan Onesimo Perez Ryan Davis Matt Brooks
Alex Iadisernia Duane Singleton Josh Beauregard Wynter Phoenix
Miguel Ugueto Walker Gourley Cristian Paulino Julio Pacheco
Osvaldo Tovalin Scott Gillitzer David Hicks Christopher Minaker
Brayden Jobert Brian Blair Enoch Simmons Brad Bennett

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
Nolan Arenado .295 .350 .470 127 4.3 .237 .295 .375 86 1.4
Masyn Winn .280 .334 .444 113 4.4 .230 .282 .348 75 1.4
Willson Contreras .262 .367 .467 131 3.6 .208 .317 .365 92 1.6
Brendan Donovan .304 .386 .450 133 3.8 .248 .333 .364 96 1.1
Lars Nootbaar .270 .369 .493 137 3.4 .220 .319 .380 97 1.1
Alec Burleson .307 .355 .485 130 3.4 .249 .295 .385 91 0.6
Nolan Gorman .259 .330 .511 129 3.4 .202 .270 .388 84 0.5
Iván Herrera .281 .369 .440 124 2.9 .222 .310 .341 83 0.9
Jimmy Crooks .273 .339 .421 112 3.0 .217 .283 .322 71 1.0
Thomas Saggese .272 .318 .442 108 3.0 .219 .269 .343 70 0.2
César Prieto .286 .318 .413 103 2.6 .225 .262 .321 64 0.0
Leonardo Bernal .259 .323 .383 97 2.5 .198 .261 .291 56 0.3
Bryan Torres .303 .369 .378 109 2.4 .241 .304 .297 70 -0.1
Brandon Crawford .257 .332 .419 109 1.9 .196 .272 .315 64 0.2
Pedro Pagés .251 .310 .385 92 1.8 .189 .251 .292 54 0.1
Matt Koperniak .283 .339 .421 110 2.1 .226 .281 .329 71 -0.2
Victor Scott II .248 .304 .359 84 1.8 .195 .259 .278 51 -0.5
Mike Antico .250 .306 .382 91 1.7 .201 .257 .303 57 -0.5
Sammy Hernandez .233 .307 .342 83 1.7 .165 .243 .244 41 -0.2
Ryan Vilade .262 .326 .386 97 1.6 .216 .277 .303 64 -0.4
Arquímedes Gamboa .232 .320 .347 86 1.4 .174 .262 .260 49 -0.3
Jordan Walker .271 .333 .463 118 1.9 .221 .278 .367 80 -0.9
Jose Barrero .234 .295 .402 94 1.5 .179 .240 .296 51 -0.5
José Fermín .258 .343 .376 101 1.2 .205 .288 .287 65 -0.3
Gavin Collins .243 .307 .386 93 0.8 .184 .249 .280 50 -0.4
Michael Siani .237 .305 .331 78 1.1 .182 .254 .257 46 -0.8
Luken Baker .235 .311 .453 109 1.0 .188 .268 .350 75 -0.9
Chance Sisco .202 .286 .357 78 0.4 .151 .227 .248 35 -0.2
Carlos Linarez .221 .262 .283 53 0.4 .156 .204 .198 14 -0.3
Matt Carpenter .222 .340 .423 108 0.5 .168 .277 .303 64 -0.5
Chase Davis .231 .300 .354 82 1.0 .177 .251 .268 46 -1.0
Alfonso Rivas III .257 .351 .375 103 0.9 .202 .294 .289 65 -1.0
Chase Adkison .248 .312 .342 83 0.6 .184 .253 .253 44 -0.6
Chris Rotondo .250 .318 .359 89 1.0 .189 .260 .270 49 -1.0
Jacob Buchberger .241 .303 .355 83 0.9 .190 .252 .274 48 -0.9
Ramon Mendoza .236 .308 .341 81 0.7 .178 .251 .253 43 -0.7
Dakota Harris .257 .301 .371 88 0.7 .206 .252 .293 54 -0.9
Graysen Tarlow .206 .294 .277 59 0.0 .148 .229 .202 23 -0.4
Nathan Church .262 .316 .342 84 0.9 .207 .263 .267 50 -1.3
Joshua Baez .230 .294 .376 86 0.7 .171 .237 .274 45 -1.2
Noah Mendlinger .264 .338 .325 86 0.5 .209 .286 .257 55 -1.2
Jeremy Rivas .245 .307 .296 69 0.7 .194 .255 .234 40 -1.2
R.J. Yeager .263 .314 .395 96 0.7 .208 .261 .305 59 -1.6
Matt Lloyd .249 .318 .395 97 0.7 .193 .261 .299 56 -1.6
Brody Moore .240 .294 .311 69 0.2 .189 .243 .247 38 -1.4
Anyelo Encarnacion .219 .299 .337 77 0.3 .163 .240 .238 34 -1.5
Wade Stauss .203 .317 .276 69 -0.3 .136 .252 .189 28 -1.0
Trey Paige .223 .286 .300 64 0.2 .165 .230 .222 28 -1.6
Michael Curialle .235 .302 .349 80 0.0 .182 .249 .268 46 -1.5
Zach Levenson .214 .290 .349 77 -0.1 .161 .238 .259 41 -1.5
Tre Richardson .212 .289 .294 65 -0.1 .158 .235 .218 28 -1.7
Miguel Villarroel .255 .284 .326 70 0.0 .199 .230 .253 36 -1.9
Kade Kretzschmar .242 .314 .310 74 -0.4 .189 .260 .237 42 -1.8
Darlin Moquete .231 .282 .375 80 -0.2 .177 .228 .279 44 -1.8
Johnfrank Salazar .249 .297 .331 76 -0.3 .194 .240 .255 39 -1.9
Chandler Redmond .230 .300 .366 83 -0.1 .174 .243 .276 45 -2.1
Won-Bin Cho .239 .298 .318 74 -0.1 .182 .243 .243 38 -2.1
William Sullivan .195 .268 .281 51 -1.0 .144 .214 .198 17 -1.7
Alex Iadisernia .225 .289 .344 76 -0.4 .175 .240 .262 42 -2.2
Miguel Ugueto .237 .261 .334 65 -0.8 .178 .202 .248 26 -2.1
Osvaldo Tovalin .232 .275 .317 65 -0.8 .179 .220 .238 29 -2.7
Brayden Jobert .193 .281 .293 60 -1.1 .145 .228 .219 28 -2.7

Batters – Platoon Splits
Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Nolan Arenado .273 .338 .439 .260 .315 .418
Masyn Winn .263 .323 .427 .248 .297 .372
Willson Contreras .248 .356 .455 .234 .336 .410
Brendan Donovan .268 .349 .396 .285 .365 .414
Lars Nootbaar .239 .331 .389 .247 .349 .449
Alec Burleson .267 .314 .398 .282 .331 .450
Nolan Gorman .222 .289 .393 .233 .307 .469
Iván Herrera .254 .349 .389 .249 .338 .378
Jimmy Crooks .230 .297 .320 .251 .320 .378
Thomas Saggese .247 .297 .388 .242 .289 .386
César Prieto .250 .285 .346 .262 .294 .374
Leonardo Bernal .232 .289 .336 .226 .290 .330
Bryan Torres .256 .317 .318 .280 .345 .346
Brandon Crawford .228 .295 .342 .228 .307 .376
Pedro Pagés .226 .291 .348 .217 .278 .333
Matt Koperniak .245 .297 .357 .256 .313 .380
Victor Scott II .214 .268 .275 .226 .285 .335
Mike Antico .220 .275 .312 .229 .287 .358
Sammy Hernandez .204 .278 .327 .190 .273 .272
Ryan Vilade .244 .307 .355 .232 .294 .339
Arquímedes Gamboa .202 .281 .312 .210 .296 .295
Jordan Walker .250 .316 .438 .241 .300 .398
Jose Barrero .214 .275 .365 .204 .266 .338
José Fermín .224 .311 .318 .233 .318 .337
Gavin Collins .225 .291 .352 .208 .273 .317
Michael Siani .209 .278 .288 .211 .283 .293
Luken Baker .214 .298 .417 .210 .287 .389
Chance Sisco .167 .242 .300 .174 .260 .291
Carlos Linarez .190 .227 .214 .181 .225 .253
Matt Carpenter .182 .288 .295 .203 .317 .390
Chase Davis .197 .264 .291 .209 .281 .321
Alfonso Rivas III .209 .298 .308 .237 .332 .336
Chase Adkison .227 .288 .318 .213 .277 .284
Chris Rotondo .219 .297 .333 .214 .282 .298
Jacob Buchberger .232 .298 .326 .209 .265 .299
Ramon Mendoza .205 .283 .284 .204 .272 .293
Dakota Harris .233 .282 .340 .230 .273 .330
Graysen Tarlow .185 .267 .222 .173 .254 .250
Nathan Church .233 .286 .295 .235 .290 .304
Joshua Baez .198 .268 .337 .192 .264 .315
Noah Mendlinger .225 .298 .265 .243 .317 .301
Jeremy Rivas .221 .283 .269 .213 .275 .255
R.J. Yeager .244 .299 .356 .229 .280 .342
Matt Lloyd .211 .278 .307 .227 .296 .360
Brody Moore .215 .267 .289 .220 .267 .275
Anyelo Encarnacion .198 .277 .297 .189 .260 .277
Wade Stauss .152 .282 .182 .171 .284 .250
Trey Paige .188 .248 .240 .192 .262 .262
Michael Curialle .204 .275 .306 .207 .279 .304
Zach Levenson .186 .268 .302 .183 .259 .293
Tre Richardson .184 .266 .235 .187 .260 .263
Miguel Villarroel .227 .259 .305 .227 .256 .285
Kade Kretzschmar .200 .274 .247 .221 .295 .283
Darlin Moquete .210 .266 .330 .199 .246 .317
Johnfrank Salazar .229 .281 .295 .214 .262 .286
Chandler Redmond .191 .254 .278 .204 .278 .333
Won-Bin Cho .195 .258 .265 .211 .275 .279
William Sullivan .163 .250 .256 .171 .240 .225
Alex Iadisernia .187 .254 .271 .202 .266 .312
Miguel Ugueto .213 .241 .320 .201 .227 .274
Osvaldo Tovalin .200 .252 .261 .208 .245 .286
Brayden Jobert .169 .257 .225 .167 .253 .268

Pitchers – Standard
Player T Age W L ERA G GS IP H ER HR BB SO
Sonny Gray R 35 11 7 3.43 26 26 149.7 129 57 17 41 156
Michael McGreevy R 24 9 8 3.99 28 27 153.3 155 68 18 41 108
Andre Pallante R 26 7 7 3.82 36 18 117.7 115 50 9 47 87
Quinn Mathews L 24 6 6 4.05 25 25 126.7 115 57 15 46 122
Ryan Helsley R 30 7 3 2.77 58 0 61.7 45 19 5 22 75
Erick Fedde R 32 8 9 4.21 26 26 143.3 143 67 21 45 129
Drew Rom L 25 5 5 3.98 18 17 83.7 80 37 9 29 73
Tink Hence R 22 5 5 4.20 26 26 98.7 95 46 13 34 83
Kyle Gibson R 37 7 8 4.47 25 25 139.0 141 69 18 55 116
Gordon Graceffo R 25 7 9 4.42 25 24 124.3 126 61 16 41 86
Lance Lynn R 38 6 8 4.44 23 23 125.7 125 62 19 46 115
Matthew Liberatore L 25 6 5 4.15 43 15 102.0 96 47 12 38 93
Steven Matz L 34 4 4 4.10 21 16 83.3 86 38 10 27 73
Miles Mikolas R 36 7 10 4.63 25 25 140.0 151 72 21 28 95
Sem Robberse R 23 5 5 4.41 21 19 100.0 100 49 13 35 78
Zack Thompson L 27 5 6 4.27 26 18 92.7 86 44 11 44 91
Max Rajcic R 23 8 11 4.62 24 23 120.7 126 62 17 37 84
Alex Cornwell L 26 5 5 4.50 22 15 90.0 97 45 12 26 62
Packy Naughton L 29 2 2 3.71 20 8 43.7 43 18 4 12 38
Adam Kloffenstein R 24 5 5 4.61 20 19 95.7 96 49 12 41 74
Victor Santos R 24 6 7 4.52 28 14 93.7 95 47 11 28 62
John King L 30 4 3 3.58 53 1 60.3 63 24 5 15 39
JoJo Romero L 28 5 4 3.60 57 0 55.0 49 22 6 18 55
Tekoah Roby R 23 3 4 4.48 16 16 64.3 65 32 9 20 49
Ryan Fernandez R 27 4 3 3.71 53 0 60.7 55 25 6 23 60
Roddery Muñoz R 25 6 8 4.84 26 21 109.7 108 59 18 49 93
Ian Bedell R 25 3 3 4.82 21 18 93.3 94 50 14 36 71
Kyle Leahy R 28 4 4 4.39 39 6 84.0 85 41 10 32 64
Riley O’Brien R 30 3 3 4.44 29 7 50.7 46 25 6 27 51
Zane Mills R 24 4 6 4.80 26 10 80.7 89 43 11 25 47
Keynan Middleton R 31 2 1 3.93 39 0 36.7 33 16 5 15 39
Ryan Loutos R 26 3 2 4.14 46 0 58.7 58 27 6 23 49
Chris Roycroft R 28 5 5 4.19 53 0 68.7 66 32 7 32 57
Wilfredo Pereira R 26 4 6 5.03 26 13 91.3 98 51 13 35 58
Oddanier Mosqueda L 26 4 3 4.33 49 1 60.3 54 29 7 29 58
Cooper Hjerpe L 24 3 4 5.11 17 17 56.3 52 32 9 30 53
Bailey Horn L 27 4 4 4.50 41 2 54.0 52 27 7 28 49
Nick Raquet L 29 4 6 4.78 32 5 75.3 80 40 10 31 53
Matt Svanson R 26 3 4 4.55 45 1 59.3 61 30 7 21 43
Jacob Bosiokovic R 31 3 3 4.47 38 0 46.3 44 23 6 23 43
Benito Garcia R 25 3 3 4.65 30 1 60.0 65 31 8 16 37
Josh James R 32 1 0 4.87 21 1 20.3 19 11 2 14 18
Ryan Shreve R 27 4 4 4.55 36 0 63.3 66 32 8 24 45
Andre Granillo R 25 4 5 4.63 45 0 58.3 55 30 8 31 55
Jack Ralston R 27 3 3 4.71 34 1 49.7 46 26 6 30 47
Michael Gomez R 28 3 4 4.61 38 0 54.7 53 28 6 25 42
Nathanael Heredia L 24 2 3 5.48 34 1 44.3 43 27 5 32 35
Andrew Marrero R 25 3 4 5.24 37 0 46.3 45 27 7 27 42
Leonardo Taveras R 26 2 3 5.26 39 0 53.0 51 31 7 35 46
Edwin Nunez R 23 3 5 6.00 27 12 69.0 71 46 11 42 48

Pitchers – Advanced
Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Sonny Gray 149.7 9.4 2.5 1.0 6.7% 25.4% .284 120 112 3.49 84 2.9
Michael McGreevy 153.3 6.3 2.4 1.1 6.3% 16.7% .287 103 105 4.14 97 2.1
Andre Pallante 117.7 6.7 3.6 0.7 9.1% 16.9% .292 107 108 3.99 93 1.6
Quinn Mathews 126.7 8.7 3.3 1.1 8.6% 22.7% .287 101 104 4.07 99 1.6
Ryan Helsley 61.7 10.9 3.2 0.7 8.8% 29.9% .274 148 143 2.87 68 1.6
Erick Fedde 143.3 8.1 2.8 1.3 7.4% 21.1% .295 98 94 4.29 103 1.6
Drew Rom 83.7 7.9 3.1 1.0 8.1% 20.3% .292 103 106 4.05 97 1.1
Tink Hence 98.7 7.6 3.1 1.2 8.0% 19.6% .285 98 101 4.30 102 1.1
Kyle Gibson 139.0 7.5 3.6 1.2 9.1% 19.1% .297 92 84 4.49 109 1.1
Gordon Graceffo 124.3 6.2 3.0 1.2 7.6% 16.0% .284 93 97 4.55 108 1.1
Lance Lynn 125.7 8.2 3.3 1.4 8.5% 21.2% .295 92 84 4.55 108 1.0
Matthew Liberatore 102.0 8.2 3.4 1.1 8.7% 21.2% .290 99 103 4.18 101 0.9
Steven Matz 83.3 7.9 2.9 1.1 7.5% 20.3% .308 100 92 4.07 100 0.9
Miles Mikolas 140.0 6.1 1.8 1.4 4.8% 16.1% .293 89 83 4.48 113 0.9
Sem Robberse 100.0 7.0 3.2 1.2 8.1% 18.1% .289 93 99 4.45 107 0.9
Zack Thompson 92.7 8.8 4.3 1.1 10.8% 22.4% .293 96 98 4.34 104 0.9
Max Rajcic 120.7 6.3 2.8 1.3 7.1% 16.1% .288 89 93 4.74 113 0.8
Alex Cornwell 90.0 6.2 2.6 1.2 6.6% 15.9% .297 91 94 4.53 110 0.7
Packy Naughton 43.7 7.8 2.5 0.8 6.5% 20.7% .302 111 112 3.52 90 0.7
Adam Kloffenstein 95.7 7.0 3.9 1.1 9.6% 17.4% .290 89 94 4.83 112 0.7
Victor Santos 93.7 6.0 2.7 1.1 7.0% 15.6% .284 91 96 4.41 110 0.7
John King 60.3 5.8 2.2 0.7 5.9% 15.2% .297 115 113 3.81 87 0.6
JoJo Romero 55.0 9.0 2.9 1.0 7.8% 23.8% .289 114 114 3.74 88 0.5
Tekoah Roby 64.3 6.9 2.8 1.3 7.2% 17.8% .287 92 98 4.55 109 0.5
Ryan Fernandez 60.7 8.9 3.4 0.9 8.9% 23.3% .293 111 113 3.67 90 0.5
Roddery Muñoz 109.7 7.6 4.0 1.5 10.1% 19.2% .283 85 90 5.12 118 0.4
Ian Bedell 93.3 6.8 3.5 1.4 8.9% 17.5% .284 85 89 5.02 117 0.4
Kyle Leahy 84.0 6.9 3.4 1.1 8.7% 17.4% .292 93 95 4.45 107 0.3
Riley O’Brien 50.7 9.1 4.8 1.1 12.0% 22.7% .290 92 92 4.60 108 0.3
Zane Mills 80.7 5.2 2.8 1.2 7.1% 13.4% .293 86 91 4.86 117 0.2
Keynan Middleton 36.7 9.6 3.7 1.2 9.5% 24.7% .289 105 104 4.13 96 0.2
Ryan Loutos 58.7 7.5 3.5 0.9 9.0% 19.1% .297 99 101 4.12 101 0.1
Chris Roycroft 68.7 7.5 4.2 0.9 10.5% 18.8% .291 98 98 4.42 102 0.1
Wilfredo Pereira 91.3 5.7 3.4 1.3 8.7% 14.4% .289 82 84 5.07 122 0.1
Oddanier Mosqueda 60.3 8.7 4.3 1.0 11.0% 22.1% .283 95 97 4.60 105 0.0
Cooper Hjerpe 56.3 8.5 4.8 1.4 12.0% 21.2% .277 80 86 5.29 125 0.0
Bailey Horn 54.0 8.2 4.7 1.2 11.7% 20.4% .292 91 94 4.72 110 0.0
Nick Raquet 75.3 6.3 3.7 1.2 9.3% 15.8% .295 86 86 4.89 116 0.0
Matt Svanson 59.3 6.5 3.2 1.1 8.1% 16.7% .293 90 94 4.63 111 0.0
Jacob Bosiokovic 46.3 8.4 4.5 1.2 11.0% 20.6% .290 92 89 4.69 109 -0.1
Benito Garcia 60.0 5.6 2.4 1.2 6.2% 14.4% .292 88 92 4.68 113 -0.1
Josh James 20.3 8.0 6.2 0.9 14.6% 18.8% .288 84 79 5.05 119 -0.1
Ryan Shreve 63.3 6.4 3.4 1.1 8.7% 16.2% .293 90 92 4.58 111 -0.1
Andre Granillo 58.3 8.5 4.8 1.2 11.7% 20.8% .288 89 93 4.72 113 -0.2
Jack Ralston 49.7 8.5 5.4 1.1 13.0% 20.3% .288 87 90 4.79 115 -0.2
Michael Gomez 54.7 6.9 4.1 1.0 10.4% 17.4% .285 89 90 4.88 112 -0.2
Nathanael Heredia 44.3 7.1 6.5 1.0 15.2% 16.7% .286 75 80 5.64 134 -0.5
Andrew Marrero 46.3 8.2 5.2 1.4 12.6% 19.5% .288 78 83 5.47 128 -0.5
Leonardo Taveras 53.0 7.8 5.9 1.2 14.2% 18.6% .288 78 80 5.48 128 -0.6
Edwin Nunez 69.0 6.3 5.5 1.4 12.9% 14.8% .280 68 74 6.21 146 -0.7

Pitchers – Top Near-Age Comps
Player Pit Comp 1 Pit Comp 2 Pit Comp 3
Sonny Gray Phil Niekro Tom Candiotti Luis Tiant
Michael McGreevy Ariel Jurado Nate Minchey Peter Lambert
Andre Pallante Joe Kelly Dakota Hudson Bob Darnell
Quinn Mathews Sean Manaea Randy Wolf David Price
Ryan Helsley Rich Gossage Felix Rodriguez 로드리게스 Craig Kimbrel
Erick Fedde Merrill Kelly 켈리 Jim Clancy Rick Helling
Drew Rom Christian Friedrich 프리드릭 Kevin Bearse Dan Smith
Tink Hence Nick Pesco Joe Skalski Todd Burns
Kyle Gibson Jack Morris Jose Contreras Rick Sutcliffe
Gordon Graceffo Daniel Mengden Braden Shipley Tyler Mahle
Lance Lynn Mark Gardner Dave Stewart Elmer Singleton
Matthew Liberatore John Gebhard Bobby Shantz Hal Hudson
Steven Matz Hippo Vaughn Bob Kuzava Bill Flynt
Miles Mikolas Jeremy Guthrie Jason Hammel Jeff Samardzija
Sem Robberse Rusty Richards Bob Tewksbury George Case
Zack Thompson Brian Burres Steven Brault Jorge De La Rosa
Max Rajcic Henderson Alvarez Alec Asher Tyler Mahle
Alex Cornwell Kurt Peltzer Kellen Raab Ryan Yarbrough
Packy Naughton Tim Kubinski Jan Dukes Ken Frailing
Adam Kloffenstein Sam Hinds Buster Narum Vic Martin
Victor Santos Kendry Flores John Simms Chih-Wei Hu
John King T.J. McFarland Ken Lehman Matt Grace
JoJo Romero Don Gross Jose Luis Garcia Paul Assenmacher
Tekoah Roby Bob Stocker Marcus Tyner Sonny Garcia
Ryan Fernandez Mark Lowe Darryl Scott Jim Miller
Roddery Muñoz Jim Bullinger Rex Rupert Pat Overholt
Ian Bedell Matt Esparza Doug Waechter Matt Petersen
Kyle Leahy Jordan Lyles Drew VerHagen Eddie Butler 버틀러
Riley O’Brien Kevin Campbell Roman Mendez Hector Heredia
Zane Mills Gary Wilson Joey Cramblitt Artie Lewicki
Keynan Middleton Dave Tobik Johnny Murphy John Costello
Ryan Loutos Calvin Medlock Randy Messenger Jason Martin 마틴es
Chris Roycroft Jake Petricka Sam Coonrod Victor Moreno
Wilfredo Pereira Jesus Tinoco Barrett Astin Chad Beck
Oddanier Mosqueda Dave LaRoche Rob Kaminsky Pedro Martinez
Cooper Hjerpe Mike Tanzi Mike Mason Dave Martinez
Bailey Horn Nick Maronde Russ Rohlicek Kyle Bird
Nick Raquet Derrin Ebert Pete Olsen David Maust
Matt Svanson J.R. Graham Paul Quinzer Duaner Sanchez
Jacob Bosiokovic Ryan Garton Dave Wallace Jimmy Rogers
Benito Garcia Mike Moat Mike Welch Corey Baker
Josh James Jack Berly Gary Waslewski Dwight Bernard
Ryan Shreve Larry Corr Steve Rowe Michael Cisco
Andre Granillo Alex Maestri 마에스트리 Steve Cishek Tom Ebert
Jack Ralston Jose Valdez Jeff Jones Mike Shade
Michael Gomez Sam Marsonek Carroll Sembera Steve Shea
Nathanael Heredia Tom Miali Mike Pomeranz Larry Dierks
Andrew Marrero Adam Lau Austin Glorius Mario Alcantara
Leonardo Taveras Myles Smith Adrian Hollinger Jordan Foley
Edwin Nunez Yunior Marte Jason Backs Carl Randle

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
Sonny Gray .223 .283 .363 .231 .283 .372 3.8 1.8 2.86 4.09
Michael McGreevy .274 .336 .462 .241 .273 .359 2.9 1.1 3.56 4.56
Andre Pallante .236 .306 .322 .263 .337 .406 2.3 0.9 3.40 4.36
Quinn Mathews .230 .318 .370 .239 .308 .390 2.6 0.8 3.51 4.63
Ryan Helsley .206 .281 .324 .194 .257 .298 2.3 0.7 2.07 3.87
Erick Fedde .254 .314 .428 .254 .308 .429 2.4 0.5 3.71 4.94
Drew Rom .225 .292 .343 .256 .325 .413 1.7 0.5 3.46 4.55
Tink Hence .249 .316 .396 .247 .305 .419 1.8 0.5 3.65 4.75
Kyle Gibson .267 .344 .429 .247 .313 .411 1.9 0.1 3.92 5.23
Gordon Graceffo .262 .331 .444 .254 .307 .402 1.8 0.4 4.00 4.90
Lance Lynn .265 .348 .466 .243 .298 .402 1.8 0.1 3.78 5.27
Matthew Liberatore .225 .288 .308 .251 .329 .429 1.7 0.2 3.58 4.74
Steven Matz .269 .341 .385 .258 .313 .425 1.4 0.2 3.58 4.94
Miles Mikolas .279 .320 .461 .261 .295 .436 1.7 0.0 4.12 5.29
Sem Robberse .246 .329 .421 .263 .310 .411 1.5 0.2 3.91 5.03
Zack Thompson .236 .328 .349 .242 .330 .409 1.6 0.1 3.71 5.00
Max Rajcic .262 .338 .433 .264 .313 .439 1.5 0.1 4.14 5.12
Alex Cornwell .265 .318 .429 .271 .325 .439 1.2 0.1 4.05 5.09
Packy Naughton .214 .254 .304 .270 .325 .426 1.0 0.3 3.12 4.52
Adam Kloffenstein .262 .355 .437 .249 .326 .394 1.2 0.1 4.19 5.16
Victor Santos .249 .312 .403 .266 .317 .415 1.2 0.1 4.03 5.08
John King .238 .287 .300 .277 .322 .428 1.0 0.2 3.08 4.06
JoJo Romero .200 .264 .277 .248 .317 .421 1.1 -0.1 2.86 4.40
Tekoah Roby .239 .311 .367 .271 .321 .465 0.9 0.0 3.95 5.19
Ryan Fernandez .238 .328 .406 .235 .287 .341 1.0 -0.1 3.09 4.45
Roddery Muñoz .267 .349 .485 .238 .322 .396 1.1 -0.3 4.35 5.40
Ian Bedell .266 .349 .467 .247 .320 .404 1.0 -0.2 4.30 5.39
Kyle Leahy .248 .325 .393 .263 .325 .425 0.8 -0.2 3.89 4.99
Riley O’Brien .238 .354 .393 .234 .333 .378 0.8 -0.2 3.67 5.28
Zane Mills .292 .352 .465 .261 .315 .428 0.7 -0.3 4.33 5.37
Keynan Middleton .242 .329 .419 .228 .295 .392 0.5 -0.2 3.15 5.06
Ryan Loutos .255 .336 .402 .250 .312 .383 0.5 -0.3 3.62 4.76
Chris Roycroft .272 .370 .416 .225 .302 .352 0.5 -0.5 3.72 4.94
Wilfredo Pereira .277 .353 .446 .261 .326 .437 0.5 -0.5 4.58 5.57
Oddanier Mosqueda .193 .306 .301 .257 .355 .426 0.5 -0.5 3.70 5.08
Cooper Hjerpe .238 .347 .317 .240 .344 .468 0.5 -0.5 4.51 5.84
Bailey Horn .229 .313 .386 .257 .352 .421 0.5 -0.4 3.91 5.11
Nick Raquet .281 .358 .438 .260 .333 .431 0.4 -0.6 4.31 5.43
Matt Svanson .274 .352 .463 .252 .323 .374 0.4 -0.4 4.02 5.13
Jacob Bosiokovic .271 .347 .435 .221 .330 .379 0.4 -0.4 3.77 5.18
Benito Garcia .294 .345 .486 .252 .308 .389 0.3 -0.5 4.04 5.27
Josh James .243 .391 .378 .238 .340 .357 0.1 -0.4 4.17 6.20
Ryan Shreve .264 .339 .436 .262 .318 .404 0.3 -0.6 4.00 5.14
Andre Granillo .276 .390 .469 .219 .289 .359 0.3 -0.6 3.98 5.28
Jack Ralston .239 .352 .402 .240 .342 .380 0.3 -0.6 4.09 5.51
Michael Gomez .253 .357 .411 .246 .338 .381 0.2 -0.7 4.07 5.33
Nathanael Heredia .255 .379 .345 .246 .384 .424 -0.2 -1.0 4.89 6.41
Andrew Marrero .256 .389 .449 .243 .342 .408 -0.2 -0.9 4.68 5.96
Leonardo Taveras .271 .398 .438 .227 .344 .391 -0.3 -1.1 4.73 6.00
Edwin Nunez .269 .385 .479 .253 .376 .429 -0.3 -1.3 5.47 6.84

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.


Sunday Notes: Garrett Cleavinger Emerged With a Five-Pitch Mix (Or Was It Four?)

The Tampa Bay Rays have a reputation of getting the best out of previously undervalued pitchers, and Garrett Cleavinger is a prime example. Acquired from the Los Angeles Dodgers in August 2022 in exchange for German Tapia, the 30-year-old southpaw was subsequently limited to 12 games in 2023 due to a knee injury, but a breakout was right around the corner. Cleavinger made a career-high 68 appearances last year, logging a 3.75 ERA and a 26.7 strikeout rate over 60 relief innings. His ledger included seven wins and six saves.

A high-octane heater was one of his best weapons; at 96.3 mph, Cleavinger’s four-seamer ranked in the 84th percentile for velocity. With that in mind, I asked the Lawrence, Kansas native if he identifies as a power pitcher.

“It’s a part of my game,” Cleavinger told me at the close of the 2024 campaign. “I’m definitely not a pinpoint command guy like some pitchers are — I wish I was a little bit better in that aspect — but power stuff coming out of the pen does kind of fit the description for me.”

Possessor of a varied arsenal is another accurate description. The erstwhile University of Oregon closer now features five-pitches, only one of which he threw less than 10 percent of the time. Per Baseball Savant, the breakdown was: cutter 26.3%, four-seamer 24.8%, slider 22.0%, sweeper 17.4%, and two-seamer 9.5%. Two of those were recent additions. Read the rest of this entry »


Matrix Reloaded: January 24, 2025

Denis Poroy-Imagn Images

I began last week’s Matrix Reloaded with a note about the slow pace of the offseason in January, and that was still the case when the column was published at 3:35 p.m. ET. So, of course, less than three hours after that went live, Roki Sasaki announced on Instagram that he’d signed with the Dodgers. His signing kicked the market into gear, making these past seven days far more eventful than what we’d experienced in recent weeks.

For my neurotic Offseason Matrices work, that means a lot fewer blank cells and a lot more maroon cells, indicating a lack of fit due to a positional logjam. The game of musical chairs continues and free agents remain available to sign, but many of the teams that might’ve been interested earlier in the offseason have since filled their openings. That doesn’t necessarily mean that all of these players will sign for less than what they were expected to when the offseason began — though, as Ben Clemens demonstrated earlier this week, many of them will — but it does mean their options are limited. Without further ado, let’s get to the transactions that happened and what we can glean about the ones that may still be to come. Read the rest of this entry »


Sick of the Dodgers Signing all the Free Agents? Well, Get Off Your Butt and Do Something About It.

Jayne Kamin-Oncea-Imagn Images

The Dodgers won 100 games in 2023. Then they signed the top two free agents in that year’s class: Shohei Ohtani and Yoshinobu Yamamoto, a pair of unicorns the likes of which aren’t available every offseason. In 2024, the Dodgers had the best record in baseball. Then they won the World Series, and along the way made the last two rounds of the playoffs look pretty easy. Ohtani won the NL MVP award.

And then they signed a bunch of new players and brought back a few more! Blake Snell! Roki Sasaki! Tanner Scott! Hyeseong Kim! Michael Conforto! Kirby Yates, probably! Teoscar Hernández! Blake Treinen! Kotaro Matsushima! (OK, Matsushima is a rugby player — I included him to see if you’re paying attention.)

MLB needs a salary cap, say two thirds of the 36,000 respondents to a much-circulated poll on MLB Trade Rumors. More jarring are the results to question no. 2: Almost exactly half of some 27,000 respondents would be willing to lose the entire 2027 season if it meant MLB instituted a salary cap. Read the rest of this entry »


Eric Longenhagen Prospects Chat: 1/24/25

12:01
Eric A Longenhagen: Hello from crisp Tempe where guys are cutting dead limbs off of trees on my street. Some of these big coniferous jawns haven’t been doing so well with temps being what they’ve been. When should I move?

12:02
Eric A Longenhagen: Let’s chat.

12:02
Anne: Bullish on the offensive ceilings of Xavier Isaac and Laz Montes? Seen them slip in some rankings, but purely on offense still middle of the order type ceilings?

12:04
Eric A Longenhagen: I have been higher on Isaac than Montes. Montes doesn’t have enormous power. I know he’s huge, but he’s slugged more because of the leagues/stadiums he’s played in more than because of his raw power. He also has a sub-70% contact rate. Mariners prospects can be overvalued during the Modesto/Everett window and then perhaps people over correct when they get to Arkansas (which is a tough place to hit)…

12:05
Eric A Longenhagen: Isaac has elite power, but his swing is a mess and needs to change if he’s going to hit enough to be relevant. His ceiling, imo, is clearly higher than Lazaro’s because the power is lurking.

12:06
Fans MLB Forever: What do you think about the anonymous voters that the Cooperstown Hall of Fame has and what would be the solution or what do you think about the minimum vote for each ballot being 5 votes or more?

Read the rest of this entry »


Pirates Prospect Termarr Johnson Wants Us To See Him Play

Charles LeClaire-USA TODAY Sports

Back in early October, Termarr Johnson self-assuredly told MLB Pipeline’s Jim Callis that he is continuing to work on being “the best hitter in the world.” The 20-year-old Pittsburgh Pirates prospect didn’t put it quite that way when I spoke to him days later, but he did exude determination and confidence when addressing his craft. That’s understandable. Drafted fourth overall in 2022 out of Atlanta’s Mays High School, Johnson remains a high-ceiling hitter, albeit one whose developmental path hasn’t been as smooth as many had anticipated.

His 2024 season included both stumbles and strides. The 5-foot-7, 190-pound middle infielder logged a solid 121 wRC+ between High-A Greensboro (487 plate appearances) and Double-A Altoona (57), but as our lead prospect analyst Eric Longenhagen wrote last summer, Johnson’s “underlying contact data is pretty concerning.” Moreover, while his 15 home runs were indicative of plus power potential, the accompanying .386 slugging percentage was a bit underwhelming. Johnson’s left-handed stroke is unquestionably capable of causing damage, but further fine-tuning is needed before that can happen at the big league level.

Johnson discussed his approach to hitting shortly after the start of the Arizona Fall League season.

———

David Laurila: You’re still just 20 years old. Do you feel that you’ve settled into your identity as a hitter?

Termarr Johnson: “For sure. I feel like I have a pretty good swing, and I hit the ball hard pretty often, so I’m just trying to keep a good approach and bring the pitcher to me. I feel like that puts me in the best position possible. And to be honest with you, I’m a different hitter every at-bat. I’m a different hitter based on… like, every pitcher is different. Every pitch is different. Every situation is different. I’ll be a different hitter if there’s a runner on base and I’m trying to get him in, late in the game, or I’ll be a different hitter when I’m leading off the game.”

Laurila: That’s basically approach. What about mechanically? Read the rest of this entry »


Presenting Further Research on When Free Agents Ink Their Deals

Ron Chenoy-Imagn Images

Earlier this week, I published my findings about the relationship between when free agents sign and the size of their contracts. As a quick refresher, in recent years, the last 20% or so of free agents to sign have been settling for contracts meaningfully lower than pre-offseason expectations. But that finding raises more questions, some of which I hope to answer today.

First, there’s an obvious question: Did the free agents who got those late, discounted deals perform worse than expected during the following season? In other words, did their low-dollar-value deals foreshadow lower-than-projected production? To examine this, I took the upcoming season’s projections for the players ranked on my Top 50 Free Agents list in each of the past three years, 150 players in all, to come up with a projected WAR for each segment of players. I then compared it to how they actually did in the ensuing year. There is indeed a drop-off for those who signed late:

Free Agent Timing and Subsequent Performance
Signing Group Projected WAR Actual WAR WAR Gap
First 10 2.1 1.6 -0.4
Second 10 2.7 2.5 -0.2
Third 10 1.7 1.6 -0.1
Fourth 10 1.7 1.3 -0.3
Last 10 1.8 0.9 -0.9
Data from 2021-22, 2022-23, and 2023-24 offseasons, top 50 projected contracts only

First things first: Every group underperformed its projections. That comes down to playing time. Our projections use Depth Charts playing time, which approximates the most likely distribution of playing time across a given roster without accounting for the likelihood of injuries. Just as an example, non-catcher batters were projected for an average of more than 600 plate appearances in this dataset, and they came in closer to the mid-500s in practice. So don’t pay too much attention to the absolute numbers; the relative differences are what to look at here.

The last 10 free agents to sign saw huge shortfalls in production relative to expectations. One reason: They played less. The average hitter in this group of 150 free agents batted 70 times less than projected. Hitters signed among the last 10 free agents in their class batted 100 times less than projected. Likewise, the average pitcher in the group came up 25 innings shy of projections, but pitchers among the last 10 players signed came up 40 innings short.
Read the rest of this entry »


2025 ZiPS Projections: Houston Astros

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 Houston Astros.

Batters

The 2024 season started terribly for the Astros, with a 12-24 record in the early going and most of their projected rotation on the IL. The hole the team dug was deep enough that even with them playing solid ball after early May, the Astros didn’t get above .500 for good until the end of June. Still, nobody in the AL West managed to take advantage of Houston’s weak start. The Astros built a comfortable lead throughout August, and though the Mariners never fell hopelessly behind in the race, they never made Houston really sweat either. Read the rest of this entry »


Can You Extrapolate a Part-Time Player?

Darren Yamashita-USA TODAY Sports

The other day, I was poking around on the Minnesota Twins’ RosterResource page. Mostly because the Twins have been quiet this offseason, I wanted to make sure they were still there and that I hadn’t missed another round of contraction rumors.

It’s fine, guys, I checked and the Twins are not going out of business anytime soon.

The other thing I noticed is that Minnesota had only two hitters who qualified for the batting title last season, which is not a lot. The Rangers and Brewers (which I would not have guessed) had seven each. And with Carlos Santana bound for his fifth go-around with Cleveland (it’s only his third but I know you were about to look), Willi Castro stands alone in Minnesota. The Marlins and Rays are the only other teams that are set to return only a single qualified hitter from 2024. Read the rest of this entry »


Landmines and Landing Spots for Ha-Seong Kim

Orlando Ramirez-USA TODAY Sports

On August 18 in Colorado, Ha-Seong Kim led off first base, then dived back to beat a pickoff attempt. He tore the labrum in his right shoulder, and that was the last time we saw him play in 2024. After a failed rehab attempt, Kim underwent surgery in October, and he won’t be ready to play again until sometime between April and June. Just as uncertain: Where exactly Kim will be suiting up when he returns. There’s no doubt about his skill. Over the past four years, Kim has spent time at second, short, and third, and neither DRS nor FRV has ever rated him as below average at any of those spots. He needed a year to adjust on offense after arriving from the KBO in 2021, but over the past three seasons, he’s run a 106 wRC+. That ranks 13th among shortstops, and over the same period, his 10.5 WAR ranks 11th.

Kim entered free agency after both he and the Padres declined their ends of a mutual option, and he came in at ninth on our Top 50 Free Agents. According to the projections, he’ll command a four- or five-year deal with an AAV in the neighborhood of $19 million. However, the shoulder injury could cost him as much as half of the 2025 season, and it makes for a tough needle to thread. He’s got to sign with a team that needs a solid infielder, but not badly enough to need one right away. Moreover, a shoulder injury is especially scary for Kim, whose arm strength is an important part of his overall value and who already possesses below-average power at the plate. For that reason, it wouldn’t be surprising to see Kim get a pillow contract: Ben Clemens proposed two years with an opt-out. Back in November, Mark Feinsand reported that Kim had generated “lots of interest,” and wrote about the possibility that he’d be among the first free agents off the board. However, it’s now late January, and if you cruise through our Depth Charts, you’ll notice that there just don’t seem to be many good landing spots for Kim. Let us begin our litanies. Read the rest of this entry »