Archive for Featured

2026 ZiPS Projections: Minnesota Twins

For the 22nd 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, as well as MLB’s glossary entry. The team order is selected by lot, and the next team up is the Minnesota Twins.

Batters

The Minnesota Twins are in a weird place. They looked to be legitimate AL Central contenders when this year began, but for the second straight year, they started slowly and dug themselves a pretty good hole. Just like in 2024, the Twins then got hot, surged to a bit over .500, and looked to right the ship somewhat in May and early June. But this year, after six weeks of lousy play knocked them out for good, they traded away Carlos Correa, and half of their bullpen, including Jhoan Duran and Griffin Jax, slashing payroll and appearing to set off a full rebuilding process. The initial buzz was that Pablo López and Joe Ryan would be looking for new homes this offseason, but they’ve stayed put so far, and the Twins are at least publicly saying they plan to build around the players they didn’t trade away. And it sort of makes sense, though I’m not sure if the Twins see it the same way I do.

The lineup looks to me — and ZiPS — as decidedly below average, but it should be noted that ZiPS is considerably less bullish about Brooks Lee at shortstop and the London Symphony Orchestra-sized cast in left field, seeing both of these positions as real problems. That puts me into the camp of having really mixed feelings about the Correa trade. One can see why a team that clearly didn’t want to run a high payroll might be uneasy spending that much money on Correa, who had one abbreviated awesome season and two underwhelming ones in Minnesota. But at the same time, Correa represented at least potential star performance at shortstop. ZiPS is a big fan of Kaelen Culpepper, who I like to imagine is the son of former Vikings quarterback Daunte Culpepper, but I’m not sure whether the Twins agree with ZiPS and plan on promoting him aggressively, or if they are simply happy to roll with Lee at shortstop. ZiPS also hopes that Emmanuel Rodriguez is healthy and cleans out left field quickly, though it’s still on the fence about the future of Walker Jenkins.

Byron Buxton remains, of course, the closest thing to a star on the team, but there’s always going to be the question of his health that limits the realistic expectation of his playing time. It’s encouraging that he had the most plate appearances of his major league career in 2025, but he’s also creeping into his mid-30s, when players become less durable. I remember being 32, also, and that was about the time where the aches and pains that I assumed would just magically go away in a week just… didn’t.

ZiPS is fine with Luke Keaschall at second, and sees Royce Lewis, Matt Wallner, and Ryan Jeffers as the serviceable middle class of the lineup. But in addition to the poor projections at shortstop and in left, the DH ones are unimpressive, and ZiPS sees very little merit in the Josh Bell signing. Overall, I’m not sure the Twins really have the lineup to be anything but fringe AL Central contenders. While they’ve talked about building around their remaining talent, that also doesn’t necessarily mean they’ll spend that much to work on their current holes rather than trying to develop in-house options over the next two or three years.

Pitchers

Keeping Ryan and López, if that’s what the Twins actually plan to do, is a pretty big deal. With those two at the top, Minnesota would have a legitimate playoff-caliber rotation. Bailey Ober’s history is better than his 2025 performance, and I don’t think it’s unreasonable to see him as a fine mid-rotation starter, and ZiPS has always been stanning for Zebby Matthews. Simeon Woods Richardson, Taj Bradley, and Mick Abel all get highly useful projections from ZiPS, and the computer really likes the organization’s minor league depth.

Meanwhile, Minnesota’s bullpen is interesting. Losing Duran and Jax really crossed out the top tier of the bullpen, but ZiPS still sees the remaining relievers as far more than merely viable. Cole Sands, Kody Funderburk, and Justin Topa all project as solid B-minus relievers, and ZiPS expects the Twins’ tradition of cobbling together a lot of their random Triple-A arms into real bullpen options to continue in 2026. Pierson Ohl, Connor Prielipp, David Festa, Andrew Morris, and Eric Orze all have projections just a shade less sunny than the first three pitchers mentioned at the top of the paragraph.

The easiest thing for people to do is set this past season as a baseline and understand that this team isn’t going to be much better in 2026. But using last season’s record as a baseline is generally a poor idea, as there’s a good argument that a lot of the 2025 Twins underperformed their actual ability. It’s the same kind of shortcut reasoning that caused people to underrate the Blue Jays going into this season, assuming that the Jays had to build up from their actual 74-win total in 2024 rather than from something closer to 81-83 wins, which was about Toronto’s true talent level. The 2025 Twins were better than a 70-92 team, but they do have some problems with their offense that they may or may not address between now and next season. If the season started today, the Twins look like a roughly .500 team, with their expected win total somewhere in the 78-84 range, but they’re close enough to good that if they were to hit their upside scenario, they could be an interesting contender. How much the Twins end up pushing that upside scenario, rather than simply deciding not to make the team worse, is something I just don’t know yet.

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
Byron Buxton R 32 CF 473 424 75 106 22 4 24 67 37 130 14 0
Matt Wallner L 28 RF 506 436 63 104 25 2 23 69 54 155 4 2
Kaelen Culpepper R 23 SS 510 465 62 115 15 3 13 61 34 105 12 3
Luke Keaschall R 23 2B 373 322 49 85 18 1 7 44 37 62 17 4
Ryan Jeffers R 29 C 428 375 47 92 20 1 12 47 41 86 2 1
Royce Lewis R 27 3B 404 370 45 93 19 0 14 54 29 83 9 1
James Outman L 29 CF 516 450 72 99 20 3 18 55 53 173 12 2
Emmanuel Rodriguez L 23 CF 331 277 47 62 13 3 7 34 50 114 7 2
Edouard Julien L 27 2B 520 443 55 106 20 2 11 50 69 151 5 3
Alan Roden L 26 LF 438 385 57 100 21 2 7 47 38 68 7 2
DaShawn Keirsey Jr. L 29 CF 417 381 48 93 17 4 6 42 27 110 23 5
Mickey Gasper B 30 C 325 282 40 68 15 0 7 36 34 58 3 0
Kody Clemens L 30 1B 392 357 49 82 16 3 16 51 28 95 4 1
Gabriel Gonzalez R 22 LF 534 488 55 132 32 3 9 64 32 92 5 3
Alex Jackson R 30 C 278 254 35 53 15 1 10 31 19 88 1 1
Maddux Houghton R 27 CF 346 316 46 71 13 3 7 36 23 123 12 2
Jhonny Pereda R 30 C 274 241 25 62 13 0 3 25 30 61 0 0
Trevor Larnach L 29 DH 504 445 59 111 22 1 15 58 50 116 3 2
Ryan Fitzgerald L 32 SS 355 317 37 72 17 2 8 37 30 92 4 3
Josh Bell B 33 1B 530 465 53 117 21 1 17 62 58 96 0 2
Ricardo Olivar R 24 C 424 380 49 91 19 1 9 46 37 97 5 1
Noah Cardenas R 26 C 315 271 30 55 13 0 5 31 36 75 2 2
Christian Vázquez R 35 C 271 248 23 56 10 0 4 23 18 48 1 1
Brooks Lee B 25 SS 515 476 52 116 21 1 13 59 33 88 3 1
Eduardo Tait L 19 C 475 442 47 99 28 1 10 50 22 113 0 0
Walker Jenkins L 21 CF 389 343 44 82 17 2 7 43 37 81 9 2
Ryan Kreidler R 28 SS 394 339 42 67 16 1 6 36 44 117 11 5
Danny De Andrade R 22 3B 486 445 46 93 24 5 7 50 27 134 7 4
Andrew Cossetti R 26 C 362 316 37 62 17 2 9 39 36 116 2 1
Austin Martin R 27 LF 361 311 42 78 15 1 3 30 39 57 13 5
Armando Alvarez R 31 3B 289 263 34 62 14 0 7 31 22 71 2 1
Yunior Severino B 26 3B 448 399 43 89 17 1 11 47 42 144 2 1
Kala’i Rosario R 23 RF 548 491 64 111 28 3 16 64 50 177 12 3
Jay Thomason L 24 3B 235 206 27 39 7 2 5 25 23 77 9 1
Rubel Cespedes L 25 3B 439 409 40 95 21 2 8 43 26 99 1 1
Jeferson Morales R 27 LF 328 293 34 68 16 2 5 36 25 69 4 1
Hendry Mendez L 22 LF 487 428 55 109 18 2 5 43 48 76 4 2
Will Holland R 28 SS 301 265 37 55 11 2 5 28 25 91 11 3
Tanner Schobel R 25 SS 456 411 48 90 17 2 7 42 38 109 6 3
Poncho Ruiz R 24 C 347 311 32 65 21 0 1 26 33 88 0 1
Jose Miranda R 28 3B 421 387 35 90 20 1 7 43 25 72 2 1
Kyle DeBarge R 22 2B 531 477 63 96 20 4 6 46 44 146 30 5
Patrick Winkel L 26 C 274 255 19 55 12 0 5 25 17 88 0 0
Jake Rucker R 26 2B 431 393 41 90 17 2 6 40 28 86 5 4
Carson McCusker R 28 RF 447 413 45 93 22 1 13 52 28 164 3 3
Allan Cerda R 26 CF 277 243 27 42 10 1 8 29 29 106 2 2
Caden Kendle R 24 RF 367 335 42 72 18 2 6 39 21 83 7 3
Tyler Dearden L 27 LF 224 204 18 50 9 1 2 21 16 58 1 0
Rayne Doncon R 22 3B 303 278 26 56 13 2 6 27 22 90 2 1
Mike Ford L 33 1B 304 267 28 57 11 0 9 34 32 74 0 1
Billy Amick R 23 1B 254 223 31 48 13 1 4 30 20 82 0 1
Brandon Winokur R 21 CF 527 487 60 100 21 2 14 60 29 162 14 4
Kyler Fedko R 26 CF 489 433 55 95 20 1 12 52 48 117 14 4
Nate Baez R 25 1B 371 334 40 79 16 2 7 40 28 92 1 0
Andy Lugo R 22 1B 348 323 34 73 19 2 4 33 18 88 8 2
Misael Urbina R 24 LF 350 311 35 63 17 2 4 29 31 91 3 2
Ben Ross R 25 SS 485 440 48 89 19 1 10 45 37 139 9 4
Aaron Sabato R 27 1B 416 378 35 79 17 1 11 45 31 139 2 1
Kyle Hess L 27 RF 251 224 24 43 10 2 2 22 21 80 3 2
Jefferson Valladares R 24 C 242 219 20 43 10 1 4 25 11 71 2 1
Jose Salas B 23 1B 335 303 34 63 14 1 5 32 16 108 11 4
Jorel Ortega R 25 2B 405 364 40 74 15 2 7 37 33 120 7 3
Garrett Spain L 25 RF 474 433 42 76 16 3 10 48 31 165 6 4
Jaime Ferrer R 23 1B 365 330 30 65 19 2 3 36 15 97 1 1

Batters – Advanced
Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Byron Buxton 473 .250 .319 .491 119 .241 .304 2 3.0 .343 111 69
Matt Wallner 506 .239 .340 .463 119 .224 .314 0 2.1 .348 119 70
Kaelen Culpepper 510 .247 .314 .376 90 .129 .294 2 1.9 .305 92 59
Luke Keaschall 373 .264 .354 .391 106 .127 .308 0 1.8 .330 107 50
Ryan Jeffers 428 .245 .333 .400 101 .155 .289 -4 1.6 .322 97 51
Royce Lewis 404 .251 .307 .416 97 .165 .289 1 1.4 .313 98 49
James Outman 516 .220 .312 .398 94 .178 .313 -2 1.3 .311 96 59
Emmanuel Rodriguez 331 .224 .347 .368 98 .144 .353 1 1.3 .321 104 38
Edouard Julien 520 .239 .347 .368 98 .129 .338 -6 1.2 .320 97 59
Alan Roden 438 .260 .342 .379 100 .119 .300 3 1.2 .320 102 52
DaShawn Keirsey Jr. 417 .244 .300 .357 81 .113 .328 5 1.1 .289 82 48
Mickey Gasper 325 .241 .335 .369 95 .128 .281 -4 1.0 .314 92 35
Kody Clemens 392 .230 .292 .426 95 .196 .268 8 1.0 .309 90 46
Gabriel Gonzalez 534 .270 .326 .404 100 .134 .318 -1 0.9 .319 101 67
Alex Jackson 278 .209 .273 .394 81 .185 .276 3 0.9 .290 80 28
Maddux Houghton 346 .225 .286 .351 75 .126 .344 5 0.7 .281 76 35
Jhonny Pereda 274 .257 .341 .349 92 .092 .333 -3 0.7 .309 90 29
Trevor Larnach 504 .249 .325 .404 100 .155 .306 0 0.6 .318 98 60
Ryan Fitzgerald 355 .227 .302 .369 84 .142 .295 -1 0.6 .296 80 37
Josh Bell 530 .252 .338 .411 106 .159 .284 -5 0.5 .328 103 65
Ricardo Olivar 424 .239 .314 .366 87 .127 .299 -7 0.6 .301 90 45
Noah Cardenas 315 .203 .311 .306 72 .103 .262 2 0.6 .283 73 27
Christian Vázquez 271 .226 .281 .315 65 .089 .265 6 0.6 .265 65 23
Brooks Lee 515 .244 .293 .374 83 .130 .275 -5 0.5 .291 84 53
Eduardo Tait 475 .224 .265 .360 71 .136 .279 1 0.4 .271 77 42
Walker Jenkins 389 .239 .321 .362 89 .123 .294 -5 0.4 .303 93 43
Ryan Kreidler 394 .198 .299 .304 68 .106 .282 2 0.4 .275 69 35
Danny De Andrade 486 .209 .274 .333 67 .124 .283 8 0.4 .269 72 44
Andrew Cossetti 362 .196 .296 .348 77 .152 .277 -3 0.4 .288 79 33
Austin Martin 361 .251 .345 .334 90 .083 .299 0 0.3 .308 90 41
Armando Alvarez 289 .236 .298 .369 83 .133 .297 -1 0.3 .293 81 30
Yunior Severino 448 .223 .301 .353 80 .130 .320 -2 0.2 .290 81 43
Kala’i Rosario 548 .226 .303 .393 90 .167 .319 -2 0.2 .305 96 62
Jay Thomason 235 .189 .281 .316 65 .127 .274 -1 -0.1 .268 70 21
Rubel Cespedes 439 .232 .280 .352 73 .120 .288 0 -0.1 .277 76 41
Jeferson Morales 328 .232 .308 .352 82 .120 .288 -1 -0.1 .293 85 33
Hendry Mendez 487 .255 .334 .341 88 .086 .300 -3 -0.1 .303 90 50
Will Holland 301 .208 .291 .321 69 .113 .296 -5 -0.3 .275 68 28
Tanner Schobel 456 .219 .289 .321 69 .102 .281 -5 -0.3 .273 73 41
Poncho Ruiz 347 .209 .288 .286 60 .077 .288 -2 -0.3 .261 63 26
Jose Miranda 421 .233 .287 .344 74 .111 .269 -3 -0.3 .278 74 39
Kyle DeBarge 531 .201 .277 .298 59 .096 .277 0 -0.4 .259 64 47
Patrick Winkel 274 .216 .266 .322 62 .106 .309 -3 -0.4 .260 64 22
Jake Rucker 431 .229 .288 .328 70 .099 .279 -2 -0.4 .274 71 40
Carson McCusker 447 .225 .280 .378 79 .153 .339 0 -0.4 .287 80 46
Allan Cerda 277 .173 .274 .321 64 .148 .264 -2 -0.5 .268 66 23
Caden Kendle 367 .215 .275 .334 67 .119 .268 3 -0.5 .269 71 33
Tyler Dearden 224 .245 .308 .328 76 .083 .333 -3 -0.5 .284 77 21
Rayne Doncon 303 .201 .261 .327 61 .126 .275 0 -0.5 .259 69 25
Mike Ford 304 .213 .306 .356 82 .143 .261 -3 -0.5 .295 79 30
Billy Amick 254 .215 .299 .336 76 .121 .321 -1 -0.5 .284 80 23
Brandon Winokur 527 .205 .262 .343 65 .138 .277 -1 -0.5 .265 75 48
Kyler Fedko 489 .219 .301 .353 80 .134 .273 -12 -0.6 .290 83 50
Nate Baez 371 .237 .305 .359 83 .122 .306 -4 -0.7 .293 84 37
Andy Lugo 348 .226 .276 .334 68 .108 .299 1 -0.7 .269 73 32
Misael Urbina 350 .203 .280 .309 63 .106 .273 1 -0.8 .264 63 28
Ben Ross 485 .202 .266 .318 61 .116 .271 -5 -0.8 .259 63 41
Aaron Sabato 416 .209 .276 .347 71 .138 .298 0 -0.9 .275 73 37
Kyle Hess 251 .192 .275 .281 55 .089 .289 0 -0.9 .253 58 19
Jefferson Valladares 242 .196 .264 .306 57 .110 .271 -8 -1.0 .255 64 19
Jose Salas 335 .208 .258 .310 56 .102 .305 3 -1.0 .251 62 28
Jorel Ortega 405 .203 .275 .313 62 .110 .283 -6 -1.0 .263 66 34
Garrett Spain 474 .176 .239 .296 49 .120 .256 10 -1.0 .238 55 34
Jaime Ferrer 365 .197 .256 .294 52 .097 .270 -1 -1.9 .244 56 25

Batters – Top Near-Age Offensive Comps
Player Hit Comp 1 Hit Comp 2 Hit Comp 3
Byron Buxton Will Venable Alfonso Soriano George Watkins
Matt Wallner Mack Jones Matt Joyce Jonny Gomes
Kaelen Culpepper Bill Spiers Howard Freigau Ricky Adams
Luke Keaschall Willie Randolph Quilvio Veras Ray LaDuke
Ryan Jeffers Jim Leyritz Butch Henline Johnny Edwards
Royce Lewis Andy Carey Don Money Gene Freese
James Outman Gary Redus Keon Broxton Corey Brown
Emmanuel Rodriguez Scott Reid Larry Foster Billy Grabarkewitz
Edouard Julien Colin Walsh Cavan Biggio Marlan Coughtry
Alan Roden Creighton Tevlin Tom Poquette Billy Severns
DaShawn Keirsey Jr. McKay Christensen Bert Hamric Jeff Stone
Mickey Gasper Rick Dempsey Bud Bulling Ron Hassey
Kody Clemens Willie Kirkland Jim Beauchamp Jim Marshall
Gabriel Gonzalez Mark Smith Bob Koeppel James Loney
Alex Jackson Troy Afenir Brett Hayes Mark Strucher
Maddux Houghton Dennis Hood Steve Walker David Fowler
Jhonny Pereda Roy Partee Jose Morales Mitch Meluskey
Trevor Larnach Chris Parmelee Steve Cox Travis Lee
Ryan Fitzgerald Chase d’Arnaud Jayson Nix Mike Brumley
Josh Bell Alvin Davis Yonder Alonso Pete O’Brien
Ricardo Olivar Joe Durso Marv Foley Steven Sogge
Noah Cardenas Pete Gonzalez James Skelton Bob Bonalewicz
Christian Vázquez Charlie Hargreaves Scott Servais Birdie Tebbetts
Brooks Lee Bobby Bragan Kevin Elster Rey Quinones
Eduardo Tait Julio Vinas Javier Valentin John Orsino
Walker Jenkins Roger Cedeno Joe Solimine Joe McCarthy
Ryan Kreidler Anthony Granato Lauro Felix Anderson Machado
Danny De Andrade Scott Hemond Tony Taylor Tyler Goeddel
Andrew Cossetti Arlo Brunsberg Don Werner Herbert Orensky
Austin Martin J.T. Bruett Todd Mayo John Finn
Armando Alvarez Adam Rosales Fran Mullins Mark Teahen
Yunior Severino Bruce Caldwell Randy Asadoor Stefan Welch
Kala’i Rosario Ruben Rivera Mike Cameron Nelson Mathews
Jay Thomason Todd Claus Jamie Doughty Larry Beardman
Rubel Cespedes Corey Slavik Ray Knight Cam Kneeland
Jeferson Morales Mike Koritko Marlin McPhail Jeff McVaney
Hendry Mendez Rod Gaspar Bob Burda Tommy Gregg
Will Holland Buddy Biancalana Luis Ugueto Connor Kopach
Tanner Schobel Danny Solano Robinson Chirinos Nelson Castellanos
Poncho Ruiz Austin Rei Chip Alley Chadd Krist
Jose Miranda Maikel Franco Nate Hanson Gordon Beckham
Kyle DeBarge Rod Smith Donnie Sadler Jose Ortiz
Patrick Winkel Al Corbeil Dave Ullery Geoff Klein
Jake Rucker Thomas Silicato Junior Betances Vic Gutierrez
Carson McCusker Rhyne Hughes Chris Wakeland Howie Goss
Allan Cerda Paul Jernigan Vinnie Scarduzio Jack Daniels
Caden Kendle Kyle Logan Alberth Martinez Brody Jackson
Tyler Dearden Gerardo Avila Chad Sedio Bob Gallagher
Rayne Doncon Parker Wilson George Arias Torsten Boss
Mike Ford Mike Jorgensen Brad Nelson Miguel Ojeda
Billy Amick Matt Rizzotti Scott McDonald Matt Huff
Brandon Winokur Ron Shepherd Ellis Burks Mike Shannon
Kyler Fedko Steve Lyons Chip Ambres Joe Patterson
Nate Baez Dan Jones Dexture McCall Ed Hartman
Andy Lugo Art Toal Gary Isakson Daniel Russell
Misael Urbina Shane Gunderson Elbie Flint Tom Harms
Ben Ross Dylan Moore Ryan Klosterman Ryan Lane
Aaron Sabato Keith Raisanen Kiel Roling Gabe Johnson
Kyle Hess David Robinson Bob Deller Brian Blair
Jefferson Valladares Brian Valichka Stan Hough Alex Garabedian
Jose Salas Max Mejia Jose Taveras Jonathan Piron
Jorel Ortega Mica Lewis Kody Eaves Frederick Nori
Garrett Spain Jamie Sykes Mike Scanlin Tom Smith
Jaime Ferrer Clint Vaughn Franklin Hernandez Shawn Buhner

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
Byron Buxton .277 .344 .548 139 4.1 .227 .295 .425 96 1.7
Matt Wallner .266 .364 .520 139 3.2 .213 .315 .402 98 0.9
Kaelen Culpepper .276 .340 .428 109 3.1 .224 .289 .334 75 0.8
Luke Keaschall .295 .383 .445 127 2.8 .237 .326 .343 87 0.9
Ryan Jeffers .273 .358 .450 121 2.6 .220 .307 .349 82 0.6
Royce Lewis .276 .332 .465 117 2.3 .229 .282 .370 80 0.5
James Outman .247 .337 .455 114 2.6 .196 .289 .349 75 0.2
Emmanuel Rodriguez .257 .377 .427 120 2.2 .192 .313 .323 79 0.5
Edouard Julien .268 .375 .421 117 2.5 .211 .319 .325 77 0.0
Alan Roden .287 .367 .426 118 2.2 .235 .315 .333 82 0.2
DaShawn Keirsey Jr. .275 .326 .406 99 2.1 .218 .268 .310 60 0.0
Mickey Gasper .270 .364 .421 115 1.8 .210 .310 .321 75 0.3
Kody Clemens .259 .318 .481 117 2.1 .203 .267 .377 75 0.1
Gabriel Gonzalez .300 .355 .450 122 2.3 .240 .295 .354 83 -0.3
Alex Jackson .240 .304 .455 103 1.7 .182 .243 .326 57 0.1
Maddux Houghton .253 .312 .402 96 1.6 .195 .257 .311 56 -0.1
Jhonny Pereda .285 .367 .390 110 1.3 .227 .310 .302 72 0.1
Trevor Larnach .267 .348 .452 116 1.6 .225 .302 .365 85 -0.3
Ryan Fitzgerald .256 .330 .413 101 1.3 .200 .277 .327 67 -0.1
Josh Bell .280 .361 .452 123 1.5 .225 .312 .368 89 -0.6
Ricardo Olivar .269 .341 .417 106 1.6 .214 .287 .324 71 -0.3
Noah Cardenas .231 .340 .358 92 1.4 .174 .282 .260 54 -0.1
Christian Vázquez .258 .314 .364 85 1.3 .193 .253 .266 45 -0.1
Brooks Lee .274 .322 .424 104 1.9 .218 .267 .333 66 -0.6
Eduardo Tait .253 .292 .417 91 1.6 .199 .238 .315 52 -0.7
Walker Jenkins .266 .347 .411 109 1.4 .212 .292 .313 71 -0.4
Ryan Kreidler .225 .328 .357 88 1.4 .167 .271 .258 48 -0.5
Danny De Andrade .234 .300 .375 84 1.5 .186 .247 .294 50 -0.6
Andrew Cossetti .222 .323 .404 98 1.3 .166 .263 .300 56 -0.5
Austin Martin .280 .373 .378 107 1.1 .227 .321 .299 74 -0.4
Armando Alvarez .267 .329 .415 103 1.0 .206 .270 .317 63 -0.5
Yunior Severino .249 .323 .405 99 1.2 .197 .277 .307 63 -0.7
Kala’i Rosario .254 .330 .445 112 1.7 .200 .273 .338 70 -1.1
Jay Thomason .219 .312 .374 87 0.5 .156 .252 .262 44 -0.7
Rubel Cespedes .260 .309 .395 90 0.8 .207 .253 .308 53 -1.2
Jeferson Morales .257 .333 .398 98 0.5 .206 .279 .310 63 -0.9
Hendry Mendez .283 .361 .381 105 0.9 .225 .305 .303 70 -1.1
Will Holland .235 .320 .372 91 0.5 .179 .265 .280 52 -0.9
Tanner Schobel .244 .314 .362 86 0.7 .193 .264 .278 51 -1.2
Poncho Ruiz .241 .319 .331 81 0.5 .177 .257 .240 40 -1.2
Jose Miranda .259 .314 .389 94 0.8 .207 .265 .303 57 -1.2
Kyle DeBarge .230 .303 .342 78 0.8 .177 .250 .259 43 -1.5
Patrick Winkel .245 .298 .363 80 0.3 .182 .235 .275 41 -1.1
Jake Rucker .258 .318 .374 89 0.6 .205 .263 .288 53 -1.3
Carson McCusker .256 .310 .428 100 0.7 .192 .247 .325 57 -1.7
Allan Cerda .201 .298 .374 82 0.1 .144 .245 .266 44 -1.1
Caden Kendle .242 .302 .380 86 0.3 .189 .254 .292 51 -1.2
Tyler Dearden .275 .336 .368 93 0.0 .212 .275 .281 56 -1.1
Rayne Doncon .233 .295 .381 83 0.4 .172 .232 .274 41 -1.2
Mike Ford .236 .335 .409 104 0.3 .182 .278 .305 62 -1.3
Billy Amick .241 .325 .382 94 0.0 .188 .271 .292 58 -1.1
Brandon Winokur .234 .288 .395 83 0.6 .179 .235 .296 48 -1.8
Kyler Fedko .242 .323 .396 97 0.5 .193 .275 .313 63 -1.6
Nate Baez .259 .330 .409 101 0.1 .210 .279 .321 67 -1.4
Andy Lugo .254 .303 .380 87 0.1 .198 .249 .292 52 -1.5
Misael Urbina .233 .308 .347 81 -0.1 .177 .252 .265 45 -1.6
Ben Ross .224 .288 .365 79 0.2 .174 .237 .272 43 -1.9
Aaron Sabato .235 .304 .392 89 0.0 .185 .251 .303 53 -1.8
Kyle Hess .220 .306 .328 73 -0.3 .165 .250 .242 37 -1.5
Jefferson Valladares .227 .295 .362 79 -0.3 .167 .233 .262 36 -1.6
Jose Salas .238 .283 .354 75 -0.3 .182 .231 .271 40 -1.7
Jorel Ortega .229 .302 .365 83 0.1 .171 .248 .262 42 -2.0
Garrett Spain .203 .264 .340 69 0.3 .154 .214 .253 31 -2.0
Jaime Ferrer .226 .286 .344 73 -1.0 .172 .233 .255 35 -2.6

Batters – Platoon Splits
Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Byron Buxton .258 .326 .500 .247 .316 .487
Matt Wallner .225 .325 .420 .245 .347 .483
Kaelen Culpepper .247 .313 .377 .248 .314 .376
Luke Keaschall .263 .357 .384 .265 .353 .395
Ryan Jeffers .261 .360 .412 .238 .319 .395
Royce Lewis .254 .315 .432 .250 .303 .409
James Outman .209 .302 .345 .225 .317 .424
Emmanuel Rodriguez .220 .326 .366 .226 .356 .369
Edouard Julien .227 .331 .333 .244 .353 .383
Alan Roden .243 .328 .364 .266 .348 .385
DaShawn Keirsey Jr. .235 .292 .319 .248 .304 .374
Mickey Gasper .241 .323 .368 .241 .341 .369
Kody Clemens .222 .286 .389 .233 .294 .442
Gabriel Gonzalez .281 .337 .419 .265 .320 .396
Alex Jackson .216 .289 .409 .205 .265 .386
Maddux Houghton .233 .293 .367 .221 .283 .345
Jhonny Pereda .267 .357 .360 .252 .331 .342
Trevor Larnach .241 .308 .370 .252 .331 .415
Ryan Fitzgerald .224 .294 .346 .229 .306 .381
Josh Bell .248 .331 .406 .253 .340 .413
Ricardo Olivar .246 .323 .381 .237 .309 .359
Noah Cardenas .207 .330 .333 .201 .302 .293
Christian Vázquez .225 .282 .310 .226 .281 .316
Brooks Lee .243 .287 .371 .244 .296 .375
Eduardo Tait .204 .256 .315 .231 .268 .374
Walker Jenkins .234 .311 .330 .241 .325 .373
Ryan Kreidler .208 .314 .308 .192 .291 .301
Danny De Andrade .216 .281 .343 .206 .271 .328
Andrew Cossetti .196 .304 .371 .196 .292 .338
Austin Martin .257 .361 .336 .247 .336 .333
Armando Alvarez .248 .306 .396 .228 .292 .352
Yunior Severino .228 .298 .360 .221 .303 .350
Kala’i Rosario .231 .315 .400 .224 .297 .390
Jay Thomason .179 .266 .268 .193 .287 .333
Rubel Cespedes .220 .268 .331 .237 .285 .361
Jeferson Morales .235 .309 .378 .231 .307 .338
Hendry Mendez .243 .318 .322 .259 .340 .348
Will Holland .217 .305 .348 .202 .284 .306
Tanner Schobel .220 .301 .331 .218 .285 .317
Poncho Ruiz .213 .293 .281 .207 .286 .288
Jose Miranda .244 .297 .370 .227 .283 .331
Kyle DeBarge .204 .290 .307 .200 .271 .294
Patrick Winkel .206 .250 .294 .219 .272 .332
Jake Rucker .238 .297 .349 .225 .284 .318
Carson McCusker .236 .291 .390 .221 .275 .372
Allan Cerda .179 .284 .316 .169 .268 .324
Caden Kendle .220 .282 .360 .213 .272 .323
Tyler Dearden .234 .300 .328 .250 .312 .329
Rayne Doncon .213 .276 .360 .196 .254 .312
Mike Ford .213 .298 .333 .214 .309 .365
Billy Amick .217 .304 .319 .214 .297 .344
Brandon Winokur .211 .269 .346 .203 .259 .342
Kyler Fedko .217 .306 .362 .221 .297 .349
Nate Baez .234 .303 .355 .238 .306 .361
Andy Lugo .229 .279 .344 .225 .275 .330
Misael Urbina .200 .280 .305 .204 .279 .311
Ben Ross .205 .279 .318 .201 .260 .318
Aaron Sabato .215 .285 .354 .206 .272 .343
Kyle Hess .186 .273 .220 .194 .276 .303
Jefferson Valladares .209 .270 .299 .191 .262 .309
Jose Salas .210 .259 .320 .207 .257 .305
Jorel Ortega .209 .285 .327 .201 .271 .307
Garrett Spain .168 .231 .269 .178 .242 .306
Jaime Ferrer .202 .259 .313 .195 .255 .286

Pitchers – Standard
Player T Age W L ERA G GS IP H ER HR BB SO
Joe Ryan R 30 11 10 3.77 28 28 155.3 134 65 23 36 169
Pablo López R 30 10 7 3.69 25 25 141.3 131 58 16 37 141
Bailey Ober R 30 7 8 4.22 27 27 147.0 142 69 23 34 132
Taj Bradley R 25 7 8 4.27 28 28 147.7 138 70 19 51 136
Zebby Matthews R 26 7 6 3.93 23 22 112.3 111 49 16 27 118
Simeon Woods Richardson R 25 6 6 4.16 27 25 127.7 119 59 17 46 117
Andrew Morris R 24 6 6 4.14 22 20 100.0 102 46 12 28 80
Mick Abel R 24 7 8 4.46 25 24 117.0 113 58 14 53 107
Connor Prielipp L 25 5 5 4.00 25 24 83.0 81 38 9 30 77
Pierson Ohl R 26 6 5 4.10 30 11 96.7 102 44 14 17 78
David Festa R 26 5 6 4.22 21 19 91.7 86 43 12 32 93
Kendry Rojas L 23 4 4 4.36 22 21 84.7 84 41 10 34 76
Darren McCaughan R 30 5 6 4.71 25 16 105.0 112 55 15 31 80
John Klein R 24 6 8 4.67 26 15 94.3 95 49 13 34 79
Travis Adams R 26 6 6 4.55 32 12 97.0 101 49 12 33 75
Cole Sands R 28 5 4 3.91 57 4 69.0 62 30 7 21 68
Thomas Hatch R 31 5 7 4.70 25 16 103.3 114 54 13 36 72
Christian MacLeod L 26 4 4 4.73 24 17 80.0 82 42 11 39 67
Ricky Castro R 26 3 4 4.76 24 13 81.3 87 43 12 26 60
Trent Baker R 27 4 6 4.81 27 15 88.0 94 47 13 32 66
Marco Raya R 23 4 5 4.88 28 20 94.0 94 51 12 45 78
Kody Funderburk L 29 4 4 4.04 48 2 64.7 60 29 6 27 61
Chase Chaney R 26 5 7 4.99 24 19 106.3 122 59 15 31 60
C.J. Culpepper R 24 3 3 4.83 23 23 72.7 73 39 8 34 56
Ryan Gallagher R 23 5 8 5.11 21 21 104.0 111 59 18 33 83
Justin Topa R 35 3 2 4.04 47 1 49.0 50 22 4 15 39
Eric Orze R 28 3 3 4.04 50 0 62.3 56 28 7 28 63
Sam Armstrong R 25 5 7 5.23 24 21 103.3 115 60 15 35 66
Mike Paredes R 25 4 5 4.59 34 3 86.3 92 44 12 27 61
Cory Lewis R 25 4 6 5.06 22 13 74.7 75 42 11 44 66
Alejandro Hidalgo R 23 3 5 5.40 23 23 81.7 84 49 13 42 71
Adam Plutko R 34 4 7 5.35 16 15 75.7 88 45 13 23 44
Grant Hartwig R 28 3 4 4.32 34 0 41.7 39 20 4 18 39
Brady Feigl L 35 2 4 4.75 20 3 36.0 38 19 5 16 34
Noah Davis R 29 3 4 5.18 31 9 73.0 74 42 10 31 66
Jarret Whorff R 27 4 6 4.61 36 1 66.3 68 34 9 25 55
Angel Macuare R 26 2 2 5.06 22 5 48.0 53 27 7 17 33
Anthony Misiewicz L 31 2 2 4.46 37 0 38.3 39 19 5 15 33
Connor Gillispie R 28 3 5 5.47 20 13 79.0 83 48 13 33 55
Michael Tonkin R 36 3 2 4.47 37 0 52.3 51 26 7 18 47
Jaylen Nowlin L 25 3 5 5.29 30 8 68.0 69 40 10 38 58
Erasmo Ramirez R 36 2 3 4.86 34 1 50.0 56 27 8 15 36
Brooks Kriske R 32 2 2 4.74 36 0 43.7 40 23 6 23 49
Génesis Cabrera L 29 1 2 4.67 50 0 52.0 50 27 8 24 47
Jacob Bosiokovic R 32 2 3 4.81 28 0 33.7 32 18 4 17 31
Gabriel Yanez L 26 3 4 4.75 36 0 53.0 59 28 8 18 39
Logan Whitaker R 26 2 2 4.76 23 0 34.0 37 18 5 12 24
Kade Bragg L 24 4 5 4.84 40 0 57.7 54 31 8 28 56
Alex Speas R 28 2 3 4.96 30 0 32.7 30 18 4 22 31
Sam Ryan R 27 3 5 5.05 39 2 62.3 66 35 8 30 47
Darren Bowen R 25 3 6 5.68 22 14 69.7 78 44 11 30 41
Hunter Hoopes R 26 4 6 5.04 40 0 44.7 41 25 6 20 43
Joel Cesar R 30 2 4 5.28 22 0 29.0 31 17 4 13 23
Kyle Bischoff R 26 2 4 5.27 33 0 41.0 40 24 6 24 36
Jacob Wosinski R 27 3 6 5.51 36 1 50.7 56 31 8 22 35

Pitchers – Advanced
Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Joe Ryan 155.3 9.8 2.1 1.3 5.7% 26.9% .279 114 111 3.78 88 2.8
Pablo López 141.3 9.0 2.4 1.0 6.3% 24.1% .296 117 113 3.55 85 2.6
Bailey Ober 147.0 8.1 2.1 1.4 5.6% 21.7% .285 102 101 4.20 98 2.0
Taj Bradley 147.7 8.3 3.1 1.2 8.1% 21.7% .286 101 103 4.11 99 1.9
Zebby Matthews 112.3 9.5 2.2 1.3 5.7% 25.1% .309 110 109 3.69 91 1.8
Simeon Woods Richardson 127.7 8.2 3.2 1.2 8.5% 21.5% .284 104 105 4.21 96 1.8
Andrew Morris 100.0 7.2 2.5 1.1 6.6% 18.7% .297 104 108 4.05 96 1.5
Mick Abel 117.0 8.2 4.1 1.1 10.3% 20.8% .296 97 101 4.38 103 1.3
Connor Prielipp 83.0 8.3 3.3 1.0 8.4% 21.6% .303 105 108 4.02 96 1.2
Pierson Ohl 96.7 7.3 1.6 1.3 4.2% 19.3% .300 105 108 4.02 95 1.2
David Festa 91.7 9.1 3.1 1.2 8.2% 23.8% .296 102 103 4.01 98 1.2
Kendry Rojas 84.7 8.1 3.6 1.1 9.2% 20.5% .301 99 104 4.29 101 1.0
Darren McCaughan 105.0 6.9 2.7 1.3 6.9% 17.7% .299 91 91 4.58 110 0.9
John Klein 94.3 7.5 3.2 1.2 8.3% 19.3% .294 92 97 4.68 109 0.8
Travis Adams 97.0 7.0 3.1 1.1 7.8% 17.7% .299 95 97 4.34 105 0.8
Cole Sands 69.0 8.9 2.7 0.9 7.3% 23.5% .291 110 110 3.60 91 0.8
Thomas Hatch 103.3 6.3 3.1 1.1 7.9% 15.9% .305 92 90 4.62 109 0.8
Christian MacLeod 80.0 7.5 4.4 1.2 10.8% 18.5% .298 91 95 4.89 110 0.7
Ricky Castro 81.3 6.6 2.9 1.3 7.3% 16.8% .296 91 94 4.64 110 0.6
Trent Baker 88.0 6.8 3.3 1.3 8.2% 17.0% .298 90 92 4.81 111 0.6
Marco Raya 94.0 7.5 4.3 1.1 10.6% 18.4% .294 88 94 4.82 114 0.6
Kody Funderburk 64.7 8.5 3.8 0.8 9.6% 21.7% .295 107 106 4.01 93 0.6
Chase Chaney 106.3 5.1 2.6 1.3 6.6% 12.8% .300 86 90 4.91 116 0.6
C.J. Culpepper 72.7 6.9 4.2 1.0 10.6% 17.4% .293 89 95 4.70 112 0.6
Ryan Gallagher 104.0 7.2 2.9 1.6 7.2% 18.2% .296 84 90 4.86 119 0.5
Justin Topa 49.0 7.2 2.8 0.7 7.2% 18.7% .307 107 99 3.80 94 0.4
Eric Orze 62.3 9.1 4.0 1.0 10.4% 23.4% .290 107 109 4.09 94 0.4
Sam Armstrong 103.3 5.8 3.0 1.3 7.7% 14.5% .298 82 87 5.11 122 0.4
Mike Paredes 86.3 6.4 2.8 1.3 7.2% 16.2% .295 94 98 4.60 107 0.4
Cory Lewis 74.7 8.0 5.3 1.3 12.8% 19.2% .295 85 91 5.12 118 0.3
Alejandro Hidalgo 81.7 7.8 4.6 1.4 11.2% 19.0% .297 80 88 5.18 125 0.2
Adam Plutko 75.7 5.2 2.7 1.5 6.9% 13.2% .298 80 76 5.23 124 0.1
Grant Hartwig 41.7 8.4 3.9 0.9 9.9% 21.5% .297 100 100 4.12 100 0.1
Brady Feigl 36.0 8.5 4.0 1.3 9.9% 21.1% .317 91 83 4.58 110 0.1
Noah Davis 73.0 8.1 3.8 1.2 9.6% 20.4% .302 83 84 4.82 120 0.1
Jarret Whorff 66.3 7.5 3.4 1.2 8.6% 18.9% .298 93 96 4.58 108 0.1
Angel Macuare 48.0 6.2 3.2 1.3 8.0% 15.6% .301 85 89 4.93 118 0.1
Anthony Misiewicz 38.3 7.7 3.5 1.2 8.9% 19.5% .301 97 94 4.39 104 0.1
Connor Gillispie 79.0 6.3 3.8 1.5 9.5% 15.8% .285 79 80 5.39 127 0.0
Michael Tonkin 52.3 8.1 3.1 1.2 8.0% 21.0% .293 96 88 4.48 104 0.0
Jaylen Nowlin 68.0 7.7 5.0 1.3 11.9% 18.2% .295 81 86 5.35 123 0.0
Erasmo Ramirez 50.0 6.5 2.7 1.4 6.8% 16.4% .304 89 83 4.82 112 0.0
Brooks Kriske 43.7 10.1 4.7 1.2 11.7% 25.0% .301 91 89 4.42 110 0.0
Génesis Cabrera 52.0 8.1 4.2 1.4 10.5% 20.6% .286 92 92 4.91 109 0.0
Jacob Bosiokovic 33.7 8.3 4.5 1.1 11.2% 20.4% .292 90 87 4.65 112 -0.1
Gabriel Yanez 53.0 6.6 3.1 1.4 7.7% 16.7% .305 91 94 4.79 110 -0.1
Logan Whitaker 34.0 6.4 3.2 1.3 8.0% 16.0% .299 90 93 4.81 111 -0.1
Kade Bragg 57.7 8.7 4.4 1.2 11.0% 22.0% .289 89 95 4.74 112 -0.1
Alex Speas 32.7 8.5 6.1 1.1 14.3% 20.1% .286 87 89 5.15 115 -0.1
Sam Ryan 62.3 6.8 4.3 1.2 10.6% 16.5% .301 85 88 4.91 117 -0.1
Darren Bowen 69.7 5.3 3.9 1.4 9.5% 13.0% .293 76 80 5.59 132 -0.2
Hunter Hoopes 44.7 8.7 4.0 1.2 10.2% 21.9% .285 85 90 4.86 118 -0.2
Joel Cesar 29.0 7.1 4.0 1.2 9.8% 17.3% .303 82 81 4.92 122 -0.2
Kyle Bischoff 41.0 7.9 5.3 1.3 12.6% 18.8% .288 82 85 5.43 122 -0.3
Jacob Wosinski 50.7 6.2 3.9 1.4 9.5% 15.2% .298 78 81 5.37 128 -0.4

Pitchers – Top Near-Age Comps
Player Pit Comp 1 Pit Comp 2 Pit Comp 3
Joe Ryan Fergie Jenkins Dennis Leonard Mike Mussina
Pablo López Bob Welch Jack McDowell Mike Mussina
Bailey Ober LaMarr Hoyt Masahiro Tanaka Pete Harnisch
Taj Bradley Edwin Jackson Ervin Santana Taijuan Walker
Zebby Matthews Mike Gardiner José Urquidy Brad Ziegler
Simeon Woods Richardson Stan Bahnsen Tommy Greene Matt Keough
Andrew Morris Bill Paschall Alec Mills Charlie Ruud
Mick Abel Chance Adams Livan Hernandez Jorge De Paula
Connor Prielipp Dan Searle Don Hood Steve Trout
Pierson Ohl Jim Atchley Geoff Geary Josh Stevens
David Festa Mark Dempsey Pete Smith Kent Greenfield
Kendry Rojas Orlando Lara Bob House Bob O’Brien
Darren McCaughan Dick Drilling Leverette Spencer Terry Doyle
John Klein Scott Jeffery Rob Wassenaar Jack Fisher
Travis Adams Seth Lugo Erick Fedde Anthony Bass
Cole Sands Tony Pena Rich Bordi Scott Sullivan
Thomas Hatch Erv Palica Tyler Herron Jaime Navarro
Christian MacLeod Ben Kozlowski Gary Christenson Abraham Elvira
Ricky Castro Parker Bridwell Parker Curry Clint Johnson
Trent Baker Bill Wengert Mark Tranberg Jared Jensen
Marco Raya Ryan Tucker Eddie Watt Matt Magill
Kody Funderburk Phil Coke Frank Gonzales Gary Lavelle
Chase Chaney Andrew Moore Chad Jenkins Brian Powell
C.J. Culpepper William Leinheiser Santiago Guzman Dan Opperman
Ryan Gallagher José Taveras Nabil Crismatt Tyler Mahle
Justin Topa Brandon Kintzler Blaine Boyer Jim Johnson
Eric Orze Tony Menendez Pat Dobson Pete Mikkelsen
Sam Armstrong Chase De Jong Aaron Slegers Jon Harris
Mike Paredes Mike Shelton Casey Daigle Gary Sarno
Cory Lewis Patrick Weigel Yeiper Castillo Miguel Almonte
Alejandro Hidalgo Bruce Swango Manuel Soliman Jonah Bayliss
Adam Plutko Tomo Ohka Kyle Kendrick Rick Langford
Grant Hartwig Hipolito Pichardo Dave Johnson Rich Carlucci
Brady Feigl Dave Schuler Jack Spring Eric Gunderson
Noah Davis Shawn Hillegas Asher Wojciechowski Bob Hall
Jarret Whorff Jerome Rozmus Chance Chapman Kevin Hodge
Angel Macuare Gilberto Mendez Glenn Tucker Freddie Davis
Anthony Misiewicz Joe Grzenda Jason Pearson Ron Meridith
Connor Gillispie Fred Talbot Phil Ortega Sammy Ellis
Michael Tonkin Mike Ryba Dick Drago Dick Tidrow
Jaylen Nowlin John Rosengren Matt Ruebel Roger Samuels
Erasmo Ramirez Tom Gorman Bob Smith Murry Dickson
Brooks Kriske Juan Rincon Don Larsen Justin Grimm
Génesis Cabrera Josh Osich Ron Mahay Frank Brooks
Jacob Bosiokovic Lerrin LaGrow Matt Karchner Freddy Schmidt
Gabriel Yanez Steve Smetana Justin Sturge Larry Wimberly
Logan Whitaker Larry Groves Greg Knowles Scott Murray
Kade Bragg Joel McKeon Williams Jerez Alan Webb
Alex Speas Fred Lasher Jesus Colome Don Newhauser
Sam Ryan Chris Beck Brandon Mathes Doug Scherer
Darren Bowen Jon Moscot Santo Perez Brian Rauh
Hunter Hoopes Dave Beard Johnny Barbato Ken Sanders
Joel Cesar Jimmy Marrujo Daryl Patterson Mike Crudale
Kyle Bischoff Jonathan Garcia Jim Henderson Jack Lazorko
Jacob Wosinski James Pugliese Ed Reilly Steven Spurgeon

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
Joe Ryan .234 .289 .409 .224 .276 .388 3.6 1.5 3.25 4.63
Pablo López .258 .313 .409 .221 .273 .363 3.4 1.6 3.20 4.40
Bailey Ober .257 .303 .435 .245 .291 .430 2.7 1.1 3.74 4.80
Taj Bradley .257 .329 .436 .228 .285 .369 3.0 0.9 3.69 4.85
Zebby Matthews .253 .305 .444 .241 .277 .379 2.7 1.1 3.28 4.58
Simeon Woods Richardson .239 .307 .376 .245 .311 .426 2.6 0.8 3.65 4.92
Andrew Morris .265 .319 .439 .249 .298 .383 2.1 0.7 3.56 4.89
Mick Abel .243 .333 .392 .250 .325 .403 2.0 0.5 3.98 5.05
Connor Prielipp .265 .339 .373 .238 .308 .396 1.8 0.6 3.62 4.76
Pierson Ohl .266 .306 .444 .260 .287 .425 1.9 0.6 3.47 4.72
David Festa .241 .312 .388 .243 .307 .416 2.0 0.6 3.56 4.83
Kendry Rojas .237 .308 .366 .254 .331 .414 1.7 0.4 3.77 5.01
Darren McCaughan .256 .323 .427 .277 .329 .450 1.5 0.2 4.18 5.33
John Klein .259 .350 .431 .253 .315 .414 1.3 0.2 4.23 5.27
Travis Adams .261 .332 .392 .261 .313 .441 1.4 0.2 4.02 5.16
Cole Sands .242 .312 .403 .229 .288 .336 1.3 0.2 3.24 4.86
Thomas Hatch .284 .350 .463 .261 .324 .399 1.3 0.2 4.23 5.29
Christian MacLeod .250 .336 .385 .261 .346 .446 1.1 0.1 4.22 5.36
Ricky Castro .273 .331 .474 .260 .312 .416 1.0 0.0 4.28 5.41
Trent Baker .253 .318 .429 .278 .344 .455 1.1 0.0 4.29 5.41
Marco Raya .273 .364 .448 .236 .325 .382 1.2 -0.1 4.38 5.49
Kody Funderburk .232 .319 .317 .244 .330 .393 1.1 0.0 3.31 4.84
Chase Chaney .292 .351 .449 .272 .321 .460 1.1 0.0 4.53 5.54
C.J. Culpepper .261 .350 .387 .247 .335 .418 0.9 0.1 4.41 5.41
Ryan Gallagher .277 .338 .527 .255 .307 .403 1.1 -0.2 4.53 5.72
Justin Topa .267 .337 .411 .250 .307 .356 0.8 0.0 3.30 5.02
Eric Orze .209 .313 .327 .256 .326 .419 0.9 -0.1 3.38 4.92
Sam Armstrong .288 .354 .481 .260 .330 .413 0.9 -0.2 4.72 5.72
Mike Paredes .282 .343 .481 .254 .306 .402 1.1 -0.1 3.91 5.13
Cory Lewis .250 .347 .410 .258 .354 .457 0.9 -0.1 4.51 5.65
Alejandro Hidalgo .261 .363 .425 .253 .330 .454 0.7 -0.5 4.78 6.11
Adam Plutko .303 .354 .503 .268 .318 .463 0.6 -0.4 4.76 6.04
Grant Hartwig .250 .365 .375 .236 .303 .382 0.4 -0.2 3.71 5.24
Brady Feigl .245 .322 .358 .269 .349 .473 0.4 -0.2 4.00 5.78
Noah Davis .261 .363 .478 .250 .330 .378 0.6 -0.4 4.56 5.88
Jarret Whorff .254 .336 .424 .260 .323 .418 0.6 -0.4 4.01 5.33
Angel Macuare .279 .344 .477 .266 .331 .422 0.5 -0.2 4.41 5.67
Anthony Misiewicz .232 .295 .375 .274 .346 .453 0.4 -0.3 3.69 5.37
Connor Gillispie .283 .364 .476 .251 .328 .443 0.5 -0.5 4.96 6.10
Michael Tonkin .267 .340 .488 .243 .323 .365 0.5 -0.5 3.59 5.57
Jaylen Nowlin .270 .365 .382 .251 .360 .453 0.5 -0.5 4.66 5.99
Erasmo Ramirez .284 .343 .474 .271 .319 .458 0.3 -0.4 4.20 5.84
Brooks Kriske .247 .351 .407 .230 .320 .402 0.3 -0.6 3.93 6.04
Génesis Cabrera .250 .338 .391 .250 .335 .449 0.3 -0.5 4.04 5.49
Jacob Bosiokovic .274 .357 .435 .217 .329 .377 0.2 -0.4 4.03 5.70
Gabriel Yanez .261 .316 .391 .277 .337 .473 0.3 -0.4 4.14 5.47
Logan Whitaker .277 .347 .508 .257 .309 .392 0.1 -0.4 4.22 5.43
Kade Bragg .243 .341 .371 .242 .335 .425 0.4 -0.6 4.12 5.69
Alex Speas .255 .388 .455 .232 .349 .362 0.1 -0.5 4.34 6.02
Sam Ryan .270 .363 .444 .254 .326 .397 0.3 -0.6 4.48 5.71
Darren Bowen .286 .360 .474 .267 .351 .453 0.2 -0.5 5.19 6.23
Hunter Hoopes .228 .337 .380 .250 .352 .424 0.1 -0.5 4.38 5.79
Joel Cesar .259 .365 .407 .266 .324 .453 0.0 -0.5 4.53 6.27
Kyle Bischoff .268 .395 .437 .239 .340 .420 0.0 -0.6 4.74 6.13
Jacob Wosinski .290 .374 .505 .259 .333 .420 -0.1 -0.8 4.96 6.31

Players are listed with their most recent teams wherever possible. This includes players who are unsigned or have retired, players who will miss 2026 due to injury, and players who were released in 2025. So yes, if you see Joe Schmoe, who quit baseball back in August to form a Ambient Math-Rock Trip-Hop Yacht Metal band that only performs in abandoned malls, he’s still listed here intentionally. ZiPS is assuming a league with an ERA of 4.16.

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. This last is, however, not an actual requirement.


Arizona Diamondbacks Top 56 Prospects

Ryan Waldschmidt Photo: Jordan Prather-USA TODAY Sports

Below is an analysis of the prospects in the farm system of the Arizona Diamondbacks. Scouting reports were compiled with information provided by industry sources as well as my own observations. This is the sixth year we’re delineating between two anticipated relief roles, the abbreviations for which you’ll see in the “position” column below: MIRP for multi-inning relief pitchers, and SIRP for single-inning relief pitchers. The ETAs listed generally correspond to the year a player has to be added to the 40-man roster to avoid being made eligible for the Rule 5 draft. Manual adjustments are made where they seem appropriate, but we use that as a rule of thumb.

A quick overview of what FV (Future Value) means can be found here. A much deeper overview can be found here.

All of the ranked prospects below also appear on The Board, a resource the site offers featuring sortable scouting information for every organization. It has more details (and updated TrackMan data from various sources) than this article and integrates every team’s list so readers can compare prospects across farm systems. It can be found here. Read the rest of this entry »


Sunday Notes: Mike Elias on the Evolving Orioles, and Offerings From Orlando

The Baltimore Orioles will be different in 2026, and not just because of roster additions that already include Pete Alonso and Taylor Ward, with more almost certain to follow. They’ve hired a new manager (Craig Albernaz), replaced a few coaches, and done some reshuffling at the executive level. In a sport where remaining stagnant can be deleterious, the O’s are moving forward on the heels of a disappointing 2025 season.

A precipitous dip in the win column — 91 in 2024, just 75 last year — accentuated the need for changes, but that isn’t the only reason. According to Mike Elias, progress is an ongoing endeavor.

“We’re constantly evolving, having to respond to other teams’ getting better in areas,” Baltimore’s president of baseball operations told me during last month’s GM Meetings. “We make changes every year. We’re actually undergoing quite an overhaul at the major league level right now with our staff. We’ve done some reformatting in the front office, although certainly not to the degree we did when we came in.”

Things changed markedly after Elias arrived in November 2018 and began rebuilding the organization. Analytics — an area in which the Orioles had been well behind the times —- was of course a major focus. But while giant strides have been made, there is no finish line to reach. Moreover, an old Satchel Paige adage applies: “Don’t look back. Something might be gaining on you.” Read the rest of this entry »


FanGraphs Weekly Mailbag: December 13, 2025

Kiyoshi Mio-Imagn Images

Compared to last year, when we saw multiple players sign record-setting contracts, this week’s Winter Meetings were rather tame. That’s not to say it was dull or that nothing happened. Edwin Díaz rejected an offer to re-sign with the Mets for more money because he wanted to pitch for the Dodgers. Kyle Schwarber returned to the Phillies on a five-year, $150 million contract, a massive deal considering he’s a DH who turns 33 in March. Pete Alonso drove from his home in Tampa up to Orlando to meet with several suitors, then signed a five-year, $155 million deal with the Orioles; the Mets, the team for whom he spent his first seven seasons and set the franchise home run record, did not extend him a contract offer. Several smaller moves happened, too. Michael Soroka joined the Diamondbacks on a one-year deal, and Steven Matz signed with the Rays for two years. The Tigers brought back Kyle Finnegan on a two-year, $19 million contract, and the Pirates became the latest team to believe they can fix Gregory Soto, signing him for one year and $7.75 million. The Braves added outfielder Mike Yastrzemski on Wednesday night.

The fun didn’t stop when the Winter Meetings did, though. On Thursday, while most of us at FanGraphs were flying home, the Braves signed reliever Robert Suarez for three years and $45 million. And then on Friday, the Blue Jays and Tyler Rogers agreed to a three-year, $37 million deal, with a vesting option for a fourth year.

We won’t cover those moves, or any of the others that went down this week, in this column. You can find them in Jon Becker’s latest Matrix Reloaded. Instead, today we’ll be answering your questions about players with more All-Star appearances than career WAR, the ABS challenge system, Shohei Ohtani’s World Series Game 3 performance, and more. Before we do, though, I’d like to remind you that this mailbag is exclusive to FanGraphs Members. If you aren’t yet a Member and would like to keep reading, you can sign up for a Membership here. It’s the best way to both experience the site and support our staff, and it comes with a bunch of other great benefits. Also, if you’d like to ask a question for an upcoming mailbag, send me an email at mailbag@fangraphs.com. Read the rest of this entry »


2026 ZiPS Projections: Kansas City Royals

For the 22nd 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, as well as MLB’s glossary entry. The team order is selected by lot, and the next team up is the Kansas City Royals.

Batters

For the Royals, 2025 was about the season that was expected. Bobby Witt Jr. was amazing and the starting rotation was very good, but the team was held back as a result of getting pretty much no production out of the second base, outfield, and designated hitter positions. ZiPS projected the Royals for 83 wins, and they won 82. Normally, that would make a team a real contender in the AL Central, but the Tigers played like an elite team in the first half and the Guardians did the same in the second half, leaving the division always too far out of reach for the Royals.

While Kansas City had some serious problems, especially in those trouble spots mentioned above, it was generally encouraging how the team dealt with it. I stand by every word I said about the outfield back in February. The idea to just roll with Hunter Renfroe and MJ Melendez after their terrible 2024 seasons was a massive missed opportunity. But the good thing is that the Royals were quick to jettison both and get looks at other players who showed a lot of promise (Jac Caglianone) or at least had some upside (Drew Waters). Now, these moves didn’t actually pan out in the short term, but it’s always better to try something that might work over something that almost definitely won’t.

ZiPS doesn’t really like the outfield this time around either, but it does think that there are enough defense and platoon advantages in the various players slated to man the grass that the Royals could eke out respectable production from the group, certainly quite a lot more than they got last year. And this is important, because every win for a team with a projected total in the low-to-mid-80s, especially a team in a Central division, has tremendous value. Even better would be a much bigger acquisition to boost at least one of the positions, but failing that, ZiPS doesn’t see either left or right field as unmitigated disasters this time around (though Steamer is less optimistic).

Witt Jr. is the straw that stirs the drink, of course, but beyond that, this was the season I think Maikel Garcia clearly established himself as an All-Star level third baseman. He finally turned that good plate discipline and hard-hit numbers into real production, and he’s Gold Glove-worthy at the hot corner. Expect both players on the left side of the infield to keep things up in 2026. Another positive: The Royals could see some improvement at second base. ZiPS thinks that Michael Massey is better than his 2025 performance indicates. My inclination might be to use Massey as a super-sub type, and just stick Jonathan India at second and leave him there; there’s no reason to pretend India’s a corner outfielder, as the team did at times this past season.

I was a big advocate for the Royals’ being aggressive with Caglianone’s promotion, and I still think it was the right thing to do. It remains to be seen if he can contribute defensively anywhere, but he ought to hit better than he did in his debut campaign; it’s hard to imagine he could do worse than his horrifying 46 wRC+. The problem is the Royals can’t afford to just stick Cags at DH every day. They need to leave that open for Salvador Perez to get spot starts when he’s not wearing a glove in some sort of timeshare with Carter Jensen behind the plate and Vinnie Pasquantino at first. You shouldn’t be alarmed by the top comp for Caglianone. Costen Shockley didn’t hit for the Angels initially, and after a dispute about whether or not they told him they weren’t going to demote him, they sent him to the minors; in response, after having just moved his family out to California, he peaced out from baseball at age 23.

And you better not be upset about the Witt top comp. Dickie Thon was absolutely terrific until a Mike Torrez fastball shattered his face; he was never the same after that. Don’t worry, ZiPS isn’t forecasting Witt to suffer the same fate!

Pitchers

In the projection table, the rotation tops out at 2.2 WAR, from Cole Ragans. However, this understates the quality of this group of starters, as ZiPS is understandably squeamish about projecting big innings totals from Ragans and Kris Bubic. A full season for Ragans would put his WAR safely over three. The same is true for Bubic, though rotator cuff injuries always make me a bit worried.

The rest of the rotation, Seth Lugo, Noah Cameron, and Michael Wacha projects out as comfortably average-plus, and I don’t think it’s a stretch to put Kansas City’s starting staff at the back of the top 10 in baseball. Ryan Bergert and Stephen Kolek won’t scare anyone, but they’re perfectly reasonable emergency replacements, and both Bailey Falter and Daniel Lynch IV are at least plausible options if injuries plague the starting five.

The bullpen projects as a middle-of-the-pack unit at the moment. ZiPS remains a fan of Hunter Harvey, but injuries ruined his 2025 season, and he’s currently a free agent. Otherwise, ZiPS pegs the Royals as having a quintet of B+ relievers in Carlos Estévez, Lucas Erceg, John Schreiber, Angel Zerpa, and Alex Lange, but doesn’t think they have a true lights-out closer. Overall, this pen comes out aggressively mid, and a depth addition or two would be welcome.

Right now, ZiPS projects the Royals to finish with somewhere between 82-86 wins or so, depending on the assumptions. That makes them relevant in the AL Central and a second-tier wild card contender. There’s still time for them to do more to get over the hump.

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
Bobby Witt Jr. R 26 SS 658 598 98 169 34 9 27 93 46 117 32 9
Maikel Garcia R 26 3B 635 571 82 150 30 5 11 67 54 98 25 7
Carter Jensen L 22 C 585 521 68 126 22 5 17 69 57 159 7 1
Vinnie Pasquantino L 28 1B 613 549 63 139 29 1 26 90 51 90 1 0
Kameron Misner L 28 CF 451 396 54 83 19 3 11 46 49 144 16 3
Salvador Perez R 36 C 575 532 52 131 24 1 24 80 28 124 0 0
Jonathan India R 29 2B 555 478 67 114 25 2 11 50 57 106 4 3
Jac Caglianone L 23 1B 524 473 64 120 20 1 23 71 40 114 3 1
Carson Roccaforte L 24 CF 531 475 60 98 21 6 12 55 50 182 19 9
Drew Waters B 27 CF 448 406 55 91 19 8 9 45 35 136 12 4
Kyle Isbel L 29 CF 394 355 49 84 15 5 6 37 24 76 7 4
Bobby Dalbec R 31 3B 462 416 53 92 17 3 15 52 39 176 6 1
John Rave L 28 CF 487 431 61 99 19 5 11 51 45 130 15 4
Tyler Tolbert R 28 2B 443 394 59 88 14 5 5 41 26 120 35 5
Harold Castro L 32 3B 372 345 37 89 15 1 11 45 17 83 3 1
Michael Massey L 28 2B 427 395 42 96 19 1 11 46 21 83 3 2
Nick Loftin R 27 LF 428 374 50 89 18 1 8 44 43 67 8 3
Diego Castillo R 28 3B 412 368 45 86 17 1 6 38 39 83 3 3
Isan Díaz L 30 SS 241 212 28 45 6 1 9 29 24 64 2 1
Jordan Groshans R 26 3B 401 364 38 86 13 1 4 33 33 74 0 1
Sam Kulasingam B 24 2B 527 468 62 110 20 6 2 41 41 104 10 6
Connor Kaiser R 29 SS 334 292 32 54 12 2 5 27 33 116 4 1
Dairon Blanco R 33 DH 318 282 47 68 12 3 5 35 21 82 31 6
Luke Maile R 35 C 161 139 14 31 6 0 3 13 17 45 2 0
Rudy Martin L 30 CF 320 281 37 65 8 3 5 30 26 84 21 5
Tyler Gentry R 27 RF 441 394 46 85 18 2 10 49 36 133 5 2
Blake Mitchell L 21 C 371 318 36 58 10 2 7 34 47 144 8 4
Peyton Wilson B 26 2B 471 421 49 93 17 4 7 45 40 125 12 4
Randal Grichuk R 34 DH 347 320 42 76 17 2 11 36 22 75 1 1
Javi Vaz L 25 2B 492 427 56 98 15 3 4 42 43 59 12 2
Mark Canha R 37 LF 352 303 35 71 14 0 6 32 33 71 3 1
Canyon Brown R 22 C 268 237 29 48 9 0 2 21 17 77 4 2
Julio E. Rodriguez R 29 C 214 195 17 40 7 0 5 21 15 57 1 0
Luca Tresh R 26 C 348 316 31 70 13 2 9 37 24 91 2 0
Brian O’Keefe R 32 C 279 254 28 50 12 1 8 29 22 78 1 1
Justin Johnson R 26 2B 346 311 31 62 13 0 4 30 25 90 5 2
Adam Frazier L 34 2B 406 368 41 85 16 2 5 36 27 72 6 4
Dustin Dickerson R 25 SS 438 382 41 74 8 1 3 30 45 119 9 5
Kyle Hayes R 28 C 150 126 10 20 5 0 1 13 14 59 1 0
Austin Charles R 22 3B 365 330 36 67 11 2 5 32 22 117 10 5
Chris Brito R 26 1B 251 217 20 47 8 0 3 20 27 65 2 1
Gavin Cross L 25 RF 477 440 54 92 18 3 12 50 30 148 14 3
Hunter Renfroe R 34 RF 381 347 35 76 18 1 11 40 30 82 1 0
Jack Pineda L 26 SS 272 245 27 51 11 0 1 21 16 73 4 1
MJ Melendez L 27 LF 526 479 61 105 24 4 18 60 41 154 9 5
Sam Ruta L 24 3B 306 274 24 52 13 2 5 27 26 135 0 1
Colton Becker R 25 SS 369 314 36 68 11 1 1 24 32 78 25 6
Nick Pratto L 27 1B 455 403 47 83 17 3 10 45 42 158 6 1
Brett Squires L 26 1B 469 427 42 91 18 3 8 46 34 156 11 3
Diego Hernandez L 25 CF 330 306 32 69 8 4 4 30 12 97 7 5
Nick Gordon L 30 2B 287 266 31 62 13 3 5 29 13 74 4 4
Daniel Vazquez R 22 SS 496 449 50 97 18 3 2 36 37 128 12 6
Carter Frederick R 23 RF 402 367 45 73 21 3 2 31 30 159 8 2
Diego Guzman R 22 3B 200 179 16 31 7 1 1 13 9 83 4 2
Omar Hernandez R 24 C 318 292 27 57 10 1 1 22 13 76 7 3
Spencer Nivens L 24 LF 483 432 45 89 16 2 9 44 45 130 7 3
Bryan Gonzalez R 24 DH 371 345 38 74 13 4 7 35 20 139 8 5
Derlin Figueroa L 22 3B 508 462 49 92 14 2 8 40 35 135 10 3
Erick Torres R 21 LF 490 443 44 92 13 1 3 37 28 93 8 7
Trevor Werner R 25 RF 406 368 41 67 14 4 8 37 29 164 9 4

Batters – Advanced
Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Bobby Witt Jr. 658 .283 .337 .505 132 .222 .313 7 6.7 .356 130 112
Maikel Garcia 635 .263 .324 .391 100 .128 .301 9 3.7 .313 99 80
Carter Jensen 585 .242 .317 .401 100 .159 .316 1 3.0 .313 104 68
Vinnie Pasquantino 613 .253 .320 .452 113 .199 .261 -4 1.8 .330 112 80
Kameron Misner 451 .210 .300 .356 84 .146 .299 5 1.8 .291 84 47
Salvador Perez 575 .246 .296 .430 100 .184 .279 -8 1.7 .310 93 68
Jonathan India 555 .238 .336 .368 98 .130 .285 -7 1.6 .314 97 61
Jac Caglianone 524 .254 .321 .446 112 .192 .289 -3 1.6 .331 118 69
Carson Roccaforte 531 .206 .285 .352 78 .146 .306 7 1.5 .281 84 55
Drew Waters 448 .224 .291 .377 86 .153 .314 3 1.5 .292 88 49
Kyle Isbel 394 .237 .290 .358 81 .121 .286 8 1.5 .284 81 40
Bobby Dalbec 462 .221 .294 .385 89 .164 .342 1 1.4 .297 86 49
John Rave 487 .230 .304 .374 89 .144 .303 -2 1.3 .298 88 54
Tyler Tolbert 443 .223 .281 .322 69 .099 .309 6 1.3 .268 71 45
Harold Castro 372 .258 .295 .403 94 .145 .311 0 1.2 .302 88 42
Michael Massey 427 .243 .286 .380 85 .137 .282 2 1.2 .289 84 44
Nick Loftin 428 .238 .323 .356 91 .118 .271 4 1.1 .302 91 46
Diego Castillo 412 .234 .308 .334 81 .100 .287 0 0.7 .287 82 40
Isan Díaz 241 .212 .297 .377 88 .165 .259 -1 0.7 .297 85 25
Jordan Groshans 401 .236 .302 .310 73 .074 .287 3 0.6 .274 73 34
Sam Kulasingam 527 .235 .298 .316 73 .081 .298 2 0.6 .273 74 49
Connor Kaiser 334 .185 .274 .291 59 .106 .287 5 0.6 .256 56 24
Dairon Blanco 318 .241 .305 .358 86 .117 .323 0 0.5 .293 83 40
Luke Maile 161 .223 .319 .331 83 .108 .308 -1 0.5 .293 76 15
Rudy Martin 320 .231 .300 .335 78 .104 .313 -3 0.4 .283 76 35
Tyler Gentry 441 .216 .289 .348 78 .132 .299 5 0.4 .282 79 41
Blake Mitchell 371 .182 .295 .292 66 .110 .305 -2 0.3 .268 76 31
Peyton Wilson 471 .221 .296 .330 76 .109 .298 -5 0.3 .280 79 45
Randal Grichuk 347 .238 .291 .406 93 .168 .278 0 0.3 .301 88 38
Javi Vaz 492 .230 .308 .307 74 .077 .258 -5 0.2 .277 75 44
Mark Canha 352 .234 .330 .340 89 .106 .288 -3 0.2 .301 83 35
Canyon Brown 268 .203 .267 .266 51 .063 .291 3 0.1 .242 56 18
Julio E. Rodriguez 214 .205 .271 .318 65 .113 .263 -1 0.1 .263 63 17
Luca Tresh 348 .222 .278 .361 78 .139 .282 -8 0.1 .279 79 32
Brian O’Keefe 279 .197 .263 .346 69 .149 .250 -3 0.0 .268 65 24
Justin Johnson 346 .199 .267 .280 54 .081 .267 5 0.0 .247 57 25
Adam Frazier 406 .231 .292 .326 74 .095 .275 -4 -0.1 .274 70 38
Dustin Dickerson 438 .194 .286 .243 51 .049 .273 2 -0.1 .247 53 30
Kyle Hayes 150 .159 .277 .222 43 .063 .288 1 -0.1 .239 42 8
Austin Charles 365 .203 .260 .294 55 .091 .298 4 -0.2 .246 60 29
Chris Brito 251 .217 .306 .295 71 .078 .295 2 -0.2 .272 74 20
Gavin Cross 477 .209 .263 .345 69 .136 .286 3 -0.2 .265 73 44
Hunter Renfroe 381 .219 .283 .372 82 .153 .256 -3 -0.2 .287 78 37
Jack Pineda 272 .208 .270 .265 52 .057 .292 0 -0.2 .243 52 19
MJ Melendez 526 .219 .283 .399 89 .180 .283 -6 -0.2 .295 91 58
Sam Ruta 306 .190 .265 .307 60 .117 .351 2 -0.2 .255 62 23
Colton Becker 369 .217 .293 .268 60 .051 .285 -6 -0.3 .257 60 32
Nick Pratto 455 .206 .287 .337 75 .131 .311 1 -0.3 .278 76 41
Brett Squires 469 .213 .279 .326 69 .113 .316 3 -0.4 .269 72 42
Diego Hernandez 330 .225 .258 .317 60 .092 .317 -1 -0.5 .251 64 29
Nick Gordon 287 .233 .276 .361 77 .128 .305 -8 -0.6 .277 77 29
Daniel Vazquez 496 .216 .276 .283 58 .067 .298 -4 -0.7 .250 62 40
Carter Frederick 402 .199 .266 .289 56 .090 .345 3 -0.8 .249 61 31
Diego Guzman 200 .173 .216 .240 28 .067 .316 1 -0.9 .204 38 11
Omar Hernandez 318 .195 .235 .247 36 .052 .260 0 -0.9 .216 40 20
Spencer Nivens 483 .206 .280 .315 67 .109 .273 -1 -0.9 .264 73 41
Bryan Gonzalez 371 .214 .263 .336 67 .122 .337 0 -0.9 .262 69 34
Derlin Figueroa 508 .199 .258 .290 54 .091 .263 -3 -1.2 .244 60 38
Erick Torres 490 .208 .264 .262 49 .054 .256 7 -1.4 .238 55 35
Trevor Werner 406 .182 .245 .307 54 .125 .301 0 -1.4 .244 56 31

Batters – Top Near-Age Offensive Comps
Player Hit Comp 1 Hit Comp 2 Hit Comp 3
Bobby Witt Jr. Dickie Thon Hanley Ramirez Francisco Lindor
Maikel Garcia Steve Sax Paul Faries Bob Bailor
Carter Jensen Aldo Pecorilli Earl Averill Johnny Edwards
Vinnie Pasquantino Justin Morneau Tino Martinez Zeke Bonura
Kameron Misner Jim Weaver Cliff Mapes Blake Tekotte
Salvador Perez Bengie Molina Terry Steinbach Rod Barajas
Jonathan India D’Angelo Jimenez Dean Anna Dan Rohn
Jac Caglianone Costen Shockley Justin Morneau Kent Hrbek
Carson Roccaforte Jeremy Hazelbaker Mark Davis Tarrik Brock
Drew Waters Mark Little Randle Granger Demond Smith
Kyle Isbel Marvell Wynne Mike Rodriguez Paulo Orlando
Bobby Dalbec Mike Goliat Pat Keedy Billy Parker
John Rave Matt Long Darnell Sweeney Joe Patterson
Tyler Tolbert Brent Lillibridge Albert Cartwright Jorge Nunez
Harold Castro Sammy Hale Ozzie Virgil Dave Hilton
Michael Massey Devon Travis Luis Gonzalez Jason Alfaro
Nick Loftin Dan Monzon Joe Keough Billy Severns
Diego Castillo Dixon Machado Carlos Alonso T.J. Maier
Isan Díaz Luis Aguayo Willie Greene Dave Roberts
Jordan Groshans Wendell Henderson George White Jim VanWyck
Sam Kulasingam Mickey Lopez John Finn Jonathan Herrera
Connor Kaiser Lauro Felix Ray Oyler Juan Bell
Dairon Blanco Chase d’Arnaud Vince Coleman Bill Almon
Luke Maile Keith Osik Merritt Ranew Curt Casali
Rudy Martin Chris Duffy Glen Barker Nook Logan
Tyler Gentry Don Cunnigan Ryan Lane Bob Hazle
Blake Mitchell Kurt Kingsolver Fran Healy Mike Rose
Peyton Wilson Drew Jackson Scott Earl Brian Friday
Randal Grichuk Chris Sabo Dick Williams Jesse Gutierrez
Javi Vaz Brian David Matt Gallegos Justin Henry
Mark Canha Charlie Jamieson Roy Johnson Ira Flagstead
Canyon Brown Alex Castillo Patrick Arlis Terry Bell
Julio E. Rodriguez Jean Luc Blaquiere Luis Pujols J.R. Hopf
Luca Tresh Rick Bradley Harry Chiti Russ Gibson
Brian O’Keefe Steve Patchin Floyd Rayford Nelson Santovenia
Justin Johnson Jonathan Malo Michael Parker Adam Rittenhouse
Adam Frazier Bobby Young Mark Ellis Alfredo Amezaga
Dustin Dickerson Pfilip Hunt Frank Scott Jeff Parsons
Kyle Hayes Mike Falsetti Mike Mordarski Tyler LaTorre
Austin Charles Steve Garrabrants Matt Lawson Bryan Sabatella
Chris Brito Freddie Hailey Dominic D’Anna Juan Pautt
Gavin Cross Jacob Hannemann Al Martin Steve Blomberg
Hunter Renfroe Johnny Callison Art Schult Mickey Stanley
Jack Pineda Scott Burcham Adam Rittenhouse Geoff McCallum
MJ Melendez Blake Tekotte Brandon Moss Brian O’Grady
Sam Ruta Evan Sharpley Jim Townsend Erskine Jackson
Colton Becker Tommy Watkins Mike Dumas Mike Richard
Nick Pratto Jim Orsag Tim Knight James Ramsey
Brett Squires Colin Porter Jim Martin Michael O’Neill
Diego Hernandez Greg Strickland Vince Roman Rolando Gomez
Nick Gordon Manny Alexander Pete Orr Benji Gil
Daniel Vazquez Paul Failla Lee Olmstead Osvaldo Abreu
Carter Frederick Milton Blackwell Steve Bumbry Bobby Gould
Diego Guzman Leury Bonilla Daniel Bravo Dean White
Omar Hernandez Miguel Fermin Felix Minaya Robin Porter
Spencer Nivens Mike Fischlin Kevin Romine Jessie Reid
Bryan Gonzalez Chase Mulvehill Candido Martinez Carlos Duncan
Derlin Figueroa Sam Haro Steven Souza Jr. Andy Fox
Erick Torres Jesus Campos Richard Federici Lolo Sanchez
Trevor Werner Belgee Falkner Ultus Alvarez Steve Martin

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
Bobby Witt Jr. .307 .365 .573 157 8.8 .258 .312 .450 111 5.0
Maikel Garcia .288 .354 .436 119 5.3 .237 .299 .351 82 2.3
Carter Jensen .268 .344 .454 121 4.6 .214 .289 .346 79 1.6
Vinnie Pasquantino .277 .345 .507 133 3.3 .230 .297 .402 93 0.3
Kameron Misner .232 .325 .402 100 2.8 .183 .272 .312 65 0.7
Salvador Perez .269 .317 .480 117 3.0 .219 .271 .374 77 0.1
Jonathan India .263 .362 .418 116 3.0 .213 .310 .326 81 0.4
Jac Caglianone .280 .346 .505 134 3.0 .226 .292 .383 89 0.0
Carson Roccaforte .233 .312 .405 99 2.9 .178 .260 .306 59 0.3
Drew Waters .251 .318 .421 104 2.4 .194 .258 .322 64 0.2
Kyle Isbel .264 .316 .408 101 2.5 .210 .265 .310 62 0.5
Bobby Dalbec .249 .323 .445 111 2.7 .194 .270 .341 69 0.3
John Rave .254 .329 .420 107 2.4 .201 .272 .323 65 -0.1
Tyler Tolbert .258 .310 .374 92 2.7 .196 .253 .277 50 0.3
Harold Castro .289 .326 .456 114 2.2 .232 .269 .359 74 0.3
Michael Massey .270 .310 .429 106 2.3 .215 .258 .328 65 0.1
Nick Loftin .262 .347 .404 110 2.1 .213 .295 .316 73 0.1
Diego Castillo .255 .337 .374 98 1.6 .206 .283 .296 64 -0.2
Isan Díaz .238 .323 .434 108 1.3 .188 .269 .326 67 0.1
Jordan Groshans .263 .330 .351 90 1.5 .205 .273 .272 55 -0.4
Sam Kulasingam .261 .322 .355 90 1.7 .211 .273 .276 56 -0.6
Connor Kaiser .213 .303 .350 82 1.6 .154 .243 .246 40 -0.2
Dairon Blanco .273 .334 .405 106 1.4 .212 .276 .310 67 -0.4
Luke Maile .255 .349 .379 104 1.0 .192 .290 .290 65 0.2
Rudy Martin .263 .330 .380 98 1.3 .205 .272 .291 59 -0.4
Tyler Gentry .246 .318 .396 98 1.6 .190 .265 .305 61 -0.5
Blake Mitchell .218 .327 .353 90 1.5 .149 .263 .237 44 -0.8
Peyton Wilson .249 .325 .380 97 1.5 .194 .271 .293 60 -0.7
Randal Grichuk .267 .321 .464 117 1.3 .211 .265 .357 74 -0.6
Javi Vaz .255 .332 .344 91 1.2 .201 .280 .270 57 -1.0
Mark Canha .263 .354 .377 104 0.9 .207 .302 .301 71 -0.7
Canyon Brown .230 .300 .306 68 0.7 .172 .240 .227 33 -0.6
Julio E. Rodriguez .237 .303 .377 91 0.8 .178 .239 .279 46 -0.4
Luca Tresh .253 .309 .416 101 1.1 .193 .247 .313 58 -0.8
Brian O’Keefe .226 .292 .405 90 0.8 .174 .235 .289 48 -0.7
Justin Johnson .230 .299 .334 76 1.0 .174 .243 .242 36 -0.8
Adam Frazier .258 .321 .377 93 1.0 .202 .265 .279 54 -1.1
Dustin Dickerson .220 .313 .276 66 0.7 .167 .262 .210 36 -1.0
Kyle Hayes .189 .309 .273 66 0.4 .128 .243 .181 24 -0.5
Austin Charles .228 .289 .340 73 0.6 .173 .234 .256 35 -1.1
Chris Brito .247 .336 .336 88 0.4 .191 .276 .259 53 -0.8
Gavin Cross .237 .288 .401 90 1.1 .183 .237 .305 52 -1.3
Hunter Renfroe .244 .311 .422 102 0.8 .192 .259 .329 65 -1.0
Jack Pineda .236 .297 .304 70 0.4 .182 .243 .231 35 -0.8
MJ Melendez .248 .309 .457 109 1.2 .194 .252 .341 66 -1.7
Sam Ruta .222 .297 .364 83 0.7 .163 .240 .260 42 -0.9
Colton Becker .241 .320 .301 76 0.5 .190 .269 .239 45 -1.0
Nick Pratto .235 .314 .386 95 0.9 .182 .262 .296 58 -1.3
Brett Squires .243 .307 .383 91 1.0 .185 .254 .288 53 -1.4
Diego Hernandez .259 .290 .365 83 0.4 .200 .233 .274 43 -1.2
Nick Gordon .265 .309 .424 102 0.3 .204 .250 .316 59 -1.3
Daniel Vazquez .244 .306 .326 77 0.6 .189 .252 .246 40 -1.8
Carter Frederick .228 .296 .327 74 0.1 .175 .240 .247 38 -1.8
Diego Guzman .207 .250 .290 49 -0.4 .146 .189 .195 9 -1.5
Omar Hernandez .226 .269 .292 58 0.0 .166 .208 .210 19 -1.6
Spencer Nivens .232 .306 .360 85 0.2 .180 .255 .274 49 -2.1
Bryan Gonzalez .246 .292 .388 88 0.1 .189 .235 .287 47 -1.9
Derlin Figueroa .226 .289 .337 73 0.2 .174 .234 .253 38 -2.2
Erick Torres .231 .288 .293 62 -0.5 .183 .237 .232 33 -2.4
Trevor Werner .211 .273 .358 73 -0.3 .153 .219 .255 33 -2.4

Batters – Platoon Splits
Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Bobby Witt Jr. .287 .346 .515 .281 .334 .501
Maikel Garcia .276 .342 .425 .256 .316 .374
Carter Jensen .235 .307 .342 .245 .321 .425
Vinnie Pasquantino .243 .309 .414 .258 .325 .468
Kameron Misner .194 .276 .326 .217 .311 .371
Salvador Perez .247 .302 .432 .246 .293 .430
Jonathan India .242 .344 .379 .237 .333 .364
Jac Caglianone .246 .311 .418 .257 .324 .457
Carson Roccaforte .198 .271 .341 .209 .290 .355
Drew Waters .221 .278 .359 .226 .298 .387
Kyle Isbel .224 .280 .316 .241 .294 .374
Bobby Dalbec .228 .303 .402 .218 .291 .377
John Rave .223 .297 .346 .233 .307 .385
Tyler Tolbert .234 .299 .347 .219 .273 .311
Harold Castro .244 .280 .359 .262 .299 .416
Michael Massey .231 .278 .350 .248 .290 .392
Nick Loftin .243 .338 .360 .235 .315 .353
Diego Castillo .241 .318 .358 .229 .302 .320
Isan Díaz .212 .297 .333 .212 .297 .397
Jordan Groshans .242 .315 .305 .233 .295 .314
Sam Kulasingam .231 .294 .315 .237 .300 .317
Connor Kaiser .189 .287 .316 .183 .267 .279
Dairon Blanco .250 .315 .366 .235 .299 .353
Luke Maile .222 .327 .333 .223 .315 .330
Rudy Martin .227 .292 .309 .234 .304 .348
Tyler Gentry .216 .298 .366 .215 .285 .338
Blake Mitchell .175 .283 .238 .185 .299 .311
Peyton Wilson .223 .296 .331 .220 .296 .330
Randal Grichuk .250 .305 .435 .231 .284 .392
Javi Vaz .226 .297 .304 .231 .311 .308
Mark Canha .238 .333 .347 .233 .328 .337
Canyon Brown .203 .268 .284 .202 .267 .258
Julio E. Rodriguez .206 .280 .324 .205 .266 .315
Luca Tresh .232 .294 .394 .217 .271 .346
Brian O’Keefe .208 .276 .354 .190 .254 .342
Justin Johnson .204 .279 .280 .197 .263 .280
Adam Frazier .221 .277 .291 .234 .297 .337
Dustin Dickerson .197 .291 .248 .192 .283 .242
Kyle Hayes .171 .292 .220 .153 .270 .224
Austin Charles .191 .255 .281 .207 .261 .299
Chris Brito .215 .307 .308 .217 .306 .289
Gavin Cross .208 .254 .336 .210 .266 .349
Hunter Renfroe .226 .303 .396 .216 .275 .361
Jack Pineda .194 .260 .239 .213 .273 .275
MJ Melendez .221 .276 .364 .218 .286 .413
Sam Ruta .182 .247 .286 .193 .271 .315
Colton Becker .224 .306 .265 .213 .288 .269
Nick Pratto .202 .283 .326 .208 .289 .343
Brett Squires .200 .262 .304 .218 .286 .333
Diego Hernandez .223 .253 .298 .226 .260 .325
Nick Gordon .215 .257 .338 .239 .282 .368
Daniel Vazquez .213 .279 .291 .217 .274 .280
Carter Frederick .205 .276 .313 .196 .262 .278
Diego Guzman .186 .226 .220 .167 .211 .250
Omar Hernandez .196 .242 .228 .195 .232 .255
Spencer Nivens .198 .263 .281 .209 .286 .328
Bryan Gonzalez .220 .271 .340 .212 .260 .335
Derlin Figueroa .192 .246 .267 .202 .262 .298
Erick Torres .210 .269 .266 .207 .262 .260
Trevor Werner .179 .248 .292 .183 .244 .313

Pitchers – Standard
Player T Age W L ERA G GS IP H ER HR BB SO
Cole Ragans L 28 8 5 3.51 24 22 118.0 95 46 12 41 148
Kris Bubic L 28 8 5 3.57 23 19 106.0 98 42 10 35 105
Noah Cameron L 26 8 8 4.08 27 27 141.3 135 64 19 44 122
Michael Wacha R 34 9 10 4.10 27 27 147.0 143 67 18 43 112
Stephen Kolek R 29 7 7 4.23 29 24 129.7 130 61 12 42 89
Seth Lugo R 36 7 8 4.29 25 23 134.3 132 64 20 45 111
Hunter Harvey R 31 4 2 3.04 46 1 47.3 40 16 4 12 50
Michael Lorenzen R 34 7 8 4.57 25 24 130.0 126 66 20 47 103
Bailey Falter L 29 6 7 4.00 26 24 118.3 117 59 16 40 83
Ryan Bergert R 26 3 4 4.46 26 23 103.0 100 51 13 43 86
Luinder Avila R 24 4 5 4.46 25 15 80.7 77 40 9 35 69
Kyle Wright R 30 5 5 4.52 15 15 77.7 75 39 9 29 63
Daniel Lynch IV L 29 4 5 4.35 40 13 97.3 100 47 13 33 75
Angel Zerpa L 26 3 4 3.92 56 5 66.7 64 29 7 22 56
Jonathan Bowlan R 29 4 5 4.24 42 8 80.7 78 38 10 29 74
Lucas Erceg R 31 5 5 3.76 55 0 55.0 49 23 4 22 52
Ben Kudrna R 23 4 7 4.84 23 21 100.3 101 54 12 45 77
Carlos Estévez R 33 4 4 3.95 59 0 57.0 49 25 6 20 49
Hunter Owen L 24 4 6 4.86 21 19 90.7 91 49 12 36 71
John Schreiber R 32 3 3 3.97 63 0 56.7 51 25 6 20 53
Alex Lange R 30 3 3 3.83 43 1 40.0 32 17 3 23 44
Alec Marsh R 28 5 8 4.88 20 17 94.0 92 51 13 39 84
James McArthur R 29 3 3 4.27 30 4 46.3 45 22 5 17 42
Mason Black R 26 5 7 5.00 27 23 108.0 109 60 15 47 87
Steven Zobac R 25 4 5 4.89 18 17 73.7 78 40 11 21 55
Hunter Patteson L 26 4 5 5.04 22 18 94.7 102 53 14 31 64
Tyson Guerrero L 27 4 5 5.00 18 17 81.0 81 45 12 35 67
Steven Cruz R 27 2 3 4.13 52 1 52.3 46 24 5 23 48
Chandler Champlain R 26 5 8 5.00 25 22 113.3 122 63 15 40 76
Spencer Turnbull R 33 3 5 5.04 17 13 64.3 68 36 8 27 46
Jonathan Heasley R 29 3 4 4.95 24 12 76.3 80 42 11 27 52
Dallas Keuchel L 38 3 3 5.07 12 12 55.0 65 31 7 23 34
John Gant R 33 3 5 5.13 16 16 66.7 73 38 10 29 45
Henry Williams R 24 4 7 5.23 20 19 96.3 101 56 14 39 67
Ryan Ramsey L 25 5 8 5.15 22 16 92.7 95 53 13 42 71
Shane Panzini R 24 4 5 5.13 22 16 86.0 90 49 13 42 67
Taylor Clarke R 33 2 2 4.64 45 3 54.3 56 28 8 16 42
Stephen Nogosek R 31 2 3 4.75 34 4 47.3 46 25 6 23 40
Eric Cerantola R 26 2 3 4.64 34 3 54.3 49 28 7 28 55
Oscar Rayo L 24 2 4 4.89 29 4 73.7 78 40 10 25 47
Ryan Brady R 27 2 4 4.79 27 1 47.0 50 25 6 16 34
Cruz Noriega R 28 2 4 5.07 24 4 49.7 53 28 7 20 35
Anthony Simonelli R 27 2 3 4.79 29 2 47.0 47 25 7 22 41
A.J. Causey R 23 7 8 4.48 46 0 64.3 62 32 8 24 52
Justin Dunn R 30 3 7 5.51 16 12 50.7 51 31 8 27 39
Nate Ackenhausen L 24 1 2 4.99 29 2 39.7 38 22 5 21 34
Rich Hill L 46 4 8 5.40 18 17 80.0 84 48 14 36 66
Nick Robertson R 27 1 2 4.72 41 0 47.7 47 25 6 24 43
Sam Long L 30 3 4 4.82 47 1 52.3 52 28 7 26 43
Joey Krehbiel R 33 3 3 4.93 40 0 49.3 53 27 7 19 32
Chazz Martinez L 26 2 3 4.79 45 0 62.0 62 33 8 29 51
Frank Mozzicato L 23 3 7 5.57 24 20 85.7 89 53 12 55 61
Christian Chamberlain L 26 2 4 5.02 41 0 43.0 38 24 5 29 42
Caden Monke L 26 4 5 4.89 40 0 53.3 52 29 6 31 44
Ben Sears R 26 2 3 5.14 38 0 56.0 60 32 8 20 36
Brandon Johnson R 27 3 4 5.13 46 1 59.7 60 34 9 27 51
Nicholas Regalado R 24 2 4 5.56 30 2 45.3 47 28 6 26 33
Beck Way R 26 3 7 5.54 37 5 66.7 68 41 8 38 45
Ethan Bosacker R 25 4 7 5.72 23 14 89.7 101 57 15 32 46
Natanael Garabitos R 25 1 4 6.03 32 0 34.3 36 23 5 25 24
Marlin Willis L 28 1 3 6.46 23 0 30.7 30 22 5 26 27

Pitchers – Advanced
Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Cole Ragans 118.0 11.3 3.1 0.9 8.4% 30.2% .294 119 116 3.10 84 2.2
Kris Bubic 106.0 8.9 3.0 0.8 7.8% 23.5% .299 117 116 3.48 85 1.9
Noah Cameron 141.3 7.8 2.8 1.2 7.4% 20.4% .284 102 104 4.22 98 1.7
Michael Wacha 147.0 6.9 2.6 1.1 6.9% 18.1% .282 102 96 4.19 98 1.7
Stephen Kolek 129.7 6.2 2.9 0.8 7.6% 16.1% .289 98 98 4.20 102 1.3
Seth Lugo 134.3 7.4 3.0 1.3 7.9% 19.4% .284 97 90 4.56 103 1.3
Hunter Harvey 47.3 9.5 2.3 0.8 6.2% 25.9% .288 137 132 3.04 73 1.0
Michael Lorenzen 130.0 7.1 3.3 1.4 8.4% 18.4% .277 91 87 4.78 110 0.9
Bailey Falter 118.3 6.3 3.0 1.2 7.9% 16.4% .277 93 93 4.58 108 0.9
Ryan Bergert 103.0 7.5 3.8 1.1 9.6% 19.2% .288 93 96 4.47 108 0.8
Luinder Avila 80.7 7.7 3.9 1.0 9.9% 19.5% .289 93 98 4.43 108 0.6
Kyle Wright 77.7 7.3 3.4 1.0 8.7% 18.8% .287 92 92 4.40 109 0.6
Daniel Lynch IV 97.3 6.9 3.1 1.2 7.8% 17.8% .293 96 95 4.50 104 0.6
Angel Zerpa 66.7 7.6 3.0 0.9 7.8% 19.8% .291 106 109 3.97 94 0.6
Jonathan Bowlan 80.7 8.3 3.2 1.1 8.4% 21.3% .296 98 99 4.13 102 0.6
Lucas Erceg 55.0 8.5 3.6 0.7 9.3% 22.0% .292 111 109 3.69 90 0.5
Ben Kudrna 100.3 6.9 4.0 1.1 10.1% 17.2% .292 86 92 4.68 116 0.4
Carlos Estévez 57.0 7.7 3.2 0.9 8.3% 20.4% .267 106 101 3.97 95 0.4
Hunter Owen 90.7 7.0 3.6 1.2 9.1% 17.9% .289 86 90 4.74 116 0.3
John Schreiber 56.7 8.4 3.2 1.0 8.4% 22.2% .285 105 102 3.89 95 0.3
Alex Lange 40.0 9.9 5.2 0.7 13.0% 24.9% .284 109 105 3.89 92 0.3
Alec Marsh 94.0 8.0 3.7 1.2 9.5% 20.5% .293 85 86 4.64 117 0.3
James McArthur 46.3 8.2 3.3 1.0 8.5% 21.0% .299 97 97 4.05 103 0.3
Mason Black 108.0 7.3 3.9 1.3 9.9% 18.4% .291 83 87 4.89 120 0.2
Steven Zobac 73.7 6.7 2.6 1.3 6.6% 17.4% .295 85 90 4.63 117 0.2
Hunter Patteson 94.7 6.1 2.9 1.3 7.5% 15.5% .292 83 87 4.81 120 0.2
Tyson Guerrero 81.0 7.4 3.9 1.3 9.9% 18.9% .289 83 85 4.99 120 0.2
Steven Cruz 52.3 8.3 4.0 0.9 10.2% 21.2% .281 101 104 4.06 99 0.2
Chandler Champlain 113.3 6.0 3.2 1.2 8.0% 15.3% .296 83 87 4.76 120 0.2
Spencer Turnbull 64.3 6.4 3.8 1.1 9.4% 16.1% .297 83 80 4.89 121 0.1
Jonathan Heasley 76.3 6.1 3.2 1.3 8.1% 15.5% .288 84 85 4.85 119 0.1
Dallas Keuchel 55.0 5.6 3.8 1.1 9.1% 13.5% .314 82 75 4.89 122 0.1
John Gant 66.7 6.1 3.9 1.4 9.6% 14.9% .296 81 77 5.16 123 0.0
Henry Williams 96.3 6.3 3.6 1.3 9.1% 15.6% .289 80 85 5.09 125 0.0
Ryan Ramsey 92.7 6.9 4.1 1.3 10.1% 17.1% .291 81 85 5.11 123 0.0
Shane Panzini 86.0 7.0 4.4 1.4 10.8% 17.3% .294 81 86 5.18 123 0.0
Taylor Clarke 54.3 7.0 2.7 1.3 6.8% 17.9% .291 90 86 4.53 111 0.0
Stephen Nogosek 47.3 7.6 4.4 1.1 11.0% 19.1% .290 88 87 4.77 114 0.0
Eric Cerantola 54.3 9.1 4.6 1.2 11.5% 22.6% .288 90 95 4.64 111 0.0
Oscar Rayo 73.7 5.7 3.1 1.2 7.8% 14.7% .288 85 90 4.87 118 -0.1
Ryan Brady 47.0 6.5 3.1 1.1 7.7% 16.4% .299 87 91 4.59 115 -0.1
Cruz Noriega 49.7 6.3 3.6 1.3 9.0% 15.8% .295 82 84 4.92 122 -0.1
Anthony Simonelli 47.0 7.9 4.2 1.3 10.5% 19.5% .292 87 89 4.95 115 -0.1
A.J. Causey 64.3 7.3 3.4 1.1 8.6% 18.7% .284 93 99 4.47 107 -0.1
Justin Dunn 50.7 6.9 4.8 1.4 11.7% 17.0% .283 76 76 5.69 132 -0.2
Nate Ackenhausen 39.7 7.7 4.8 1.1 11.9% 19.2% .287 83 89 4.83 120 -0.2
Rich Hill 80.0 7.4 4.1 1.6 10.1% 18.6% .294 77 73 5.29 130 -0.2
Nick Robertson 47.7 8.1 4.5 1.1 11.2% 20.1% .297 88 92 4.63 114 -0.2
Sam Long 52.3 7.4 4.5 1.2 11.1% 18.3% .290 87 85 4.86 115 -0.3
Joey Krehbiel 49.3 5.8 3.5 1.3 8.7% 14.7% .291 85 82 4.93 118 -0.3
Chazz Martinez 62.0 7.4 4.2 1.2 10.4% 18.3% .293 87 91 4.89 115 -0.3
Frank Mozzicato 85.7 6.4 5.8 1.3 13.6% 15.1% .289 75 81 5.59 134 -0.4
Christian Chamberlain 43.0 8.8 6.1 1.0 14.6% 21.2% .282 83 86 5.16 121 -0.4
Caden Monke 53.3 7.4 5.2 1.0 12.7% 18.0% .291 85 88 4.94 117 -0.4
Ben Sears 56.0 5.8 3.2 1.3 8.2% 14.7% .289 81 85 5.02 123 -0.5
Brandon Johnson 59.7 7.7 4.1 1.4 10.2% 19.2% .291 81 84 4.92 123 -0.5
Nicholas Regalado 45.3 6.6 5.2 1.2 12.3% 15.6% .293 75 79 5.48 133 -0.6
Beck Way 66.7 6.1 5.1 1.1 12.3% 14.6% .286 75 78 5.53 133 -0.6
Ethan Bosacker 89.7 4.6 3.2 1.5 8.1% 11.6% .286 73 77 5.55 137 -0.6
Natanael Garabitos 34.3 6.3 6.6 1.3 14.9% 14.3% .290 69 74 6.19 145 -0.7
Marlin Willis 30.7 7.9 7.6 1.5 17.0% 17.6% .284 65 67 6.55 155 -0.8

Pitchers – Top Near-Age Comps
Player Pit Comp 1 Pit Comp 2 Pit Comp 3
Cole Ragans Mickey Lolich Juan Pizarro Al Downing
Kris Bubic Jordan Montgomery Tyler Skaggs Zane Smith
Noah Cameron Joe Shaute Frank Viola Bob Knepper
Michael Wacha Ervin Santana Tanner Roark Joaquin Andujar
Stephen Kolek Mike Pelfrey Marcus Stroman Roberto Hernandez
Seth Lugo Jim Palmer Tom Seaver John Lackey
Hunter Harvey Bobby Jenks Tommy Hunter Ryan Madson
Michael Lorenzen Jeremy Guthrie Jeff Samardzija Ervin Santana
Bailey Falter Omar Daal Paul Splittorff Dennis Rasmussen
Ryan Bergert Dan Larson Jim Hughes Don Aase
Luinder Avila Gene Nelson Gerald Alexander Mitch White
Kyle Wright Dorn Taylor Al Gettel Tim Van Egmond
Daniel Lynch IV Derek Lee Bud Daley Joe Shaute
Angel Zerpa Robert Dodd Ed Vande Berg Carmen Pignatiello
Jonathan Bowlan Don Johnson Brad Lincoln Anthony Polink
Lucas Erceg Brandon League Sam Dyson Jeremy Jeffress
Ben Kudrna Dave Adam Robert Person Ramon Rosso
Carlos Estévez Shane Greene Pedro Báez Ryan Brasier
Hunter Owen Kent Murphy Tim Kalita Derrick Van Dusen
John Schreiber Tom Gorman Clem Labine Adam Warren
Alex Lange Pedro Strop Mark Littell Jim Mecir
Alec Marsh Chris Codiroli Austin Hyatt A.J. Cole
James McArthur John Hogg Joe Broussard Chris Martin
Mason Black Jordan Romano Tim Wakefield David Hess
Steven Zobac Luis Santos Joey Wagman Fred Farnsworth
Hunter Patteson Eudis Idrogo Matt Zielinski Keith Ramsey
Tyson Guerrero Jim Campbell Arthur Hirst Rob Zastryzny
Steven Cruz Jake Barrett Scott Oberg Heath Hembree
Chandler Champlain JT Brubaker Tejay Antone Chris Volstad
Spencer Turnbull Sergio Lizarraga Evan Thomas Mark Thompson
Jonathan Heasley Albert Suarez Jordan Lyles Bart Johnson
Dallas Keuchel Oscar Rivera Bill Pulsipher Tomas Solis
John Gant Matt Wright Jorge Martinez Mark Zappelli
Henry Williams Jackson Tetreault Aaron Phillips Oliver Drake
Ryan Ramsey James Gillheeney Lance Schuermann Josh Taylor
Shane Panzini Andy Larkin Tony Costa Josh Teekel
Taylor Clarke Xavier Rescigno Jim Miller Ken Burkhart
Stephen Nogosek Luther Hackman Pedro Beato Craig McMurtry
Eric Cerantola Johnny Barbato J.P. Feyereisen Hal McKain
Oscar Rayo Matt Crouse Mike Chaney Bryan Gore
Ryan Brady Andrew Snowdon Edwin Almonte Gary Haught
Cruz Noriega Ben Gonzales James Raynor George Susce
Anthony Simonelli Elvys Quezada Kent Tekulve Matt Hauser
A.J. Causey Fernando Zarranz Rob Brown Bob Link
Justin Dunn Steve Busby Hal Kolstad Chip Duncan
Nate Ackenhausen Jamie Eppeneder David Albright Mike Maitland
Rich Hill Mickey Haefner Wilbur Wood Bob Knepper
Nick Robertson Troy Kent Preston Claiborne Garrett Parcell
Sam Long Glenn Dishman Frank Brooks Josh Osich
Joey Krehbiel Steve Schrenk Felipe Arredondo Lew Krausse
Chazz Martinez Jason Miller Richard Salazar C.J. Riefenhauser
Frank Mozzicato Anthony Ferrara Rafael Lluberes Jon Warden
Christian Chamberlain Zac Curtis Giovanni Soto Beau Jones
Caden Monke Daryl Harang Edgar Ibarra Chad Brown
Ben Sears Rayner Oliveros Pedro Echemendia Ryan Flanigan
Brandon Johnson Alberto Rolon Dennis Dove Derek Gordon
Nicholas Regalado Jon Keller Williams Louico Luis Liria
Beck Way Kirk Killingsworth Jason Garcia Donald Jamerson
Ethan Bosacker Tanner Andrews Graham Spraker Brandon Lawson
Natanael Garabitos Eric Dinyar Travis Welch John Harms
Marlin Willis Richard Dare Brett Bordes Wesley Rhea

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
Cole Ragans .241 .301 .384 .204 .276 .333 3.2 1.1 2.85 4.29
Kris Bubic .250 .309 .370 .234 .297 .365 2.7 1.1 2.98 4.19
Noah Cameron .218 .282 .387 .257 .316 .421 2.6 0.7 3.62 4.67
Michael Wacha .235 .295 .377 .265 .315 .434 2.5 0.8 3.66 4.68
Stephen Kolek .254 .325 .390 .255 .318 .387 2.1 0.6 3.76 4.74
Seth Lugo .255 .328 .448 .251 .304 .414 2.1 0.3 3.75 5.02
Hunter Harvey .226 .293 .369 .226 .270 .333 1.5 0.4 2.34 4.38
Michael Lorenzen .246 .324 .431 .257 .315 .439 1.6 -0.1 4.09 5.26
Bailey Falter .264 .309 .419 .250 .315 .419 1.6 0.1 4.04 5.11
Ryan Bergert .254 .333 .418 .245 .316 .396 1.5 0.1 3.92 4.99
Luinder Avila .246 .338 .381 .244 .325 .406 1.1 0.0 3.93 5.01
Kyle Wright .260 .339 .473 .236 .309 .331 1.2 0.1 3.95 5.16
Daniel Lynch IV .247 .315 .381 .263 .324 .436 1.2 -0.1 3.88 5.11
Angel Zerpa .239 .299 .352 .251 .317 .404 1.1 0.1 3.34 4.56
Jonathan Bowlan .248 .318 .418 .246 .311 .394 1.0 -0.1 3.75 5.11
Lucas Erceg .235 .333 .367 .232 .304 .330 1.1 -0.2 3.09 4.65
Ben Kudrna .250 .330 .383 .256 .337 .425 0.9 -0.2 4.45 5.40
Carlos Estévez .238 .316 .376 .227 .289 .373 1.0 -0.3 3.18 5.00
Hunter Owen .230 .304 .320 .264 .342 .457 0.9 -0.3 4.36 5.46
John Schreiber .258 .330 .423 .220 .290 .339 0.9 -0.4 3.17 5.17
Alex Lange .209 .329 .328 .222 .333 .333 0.7 -0.2 3.07 4.85
Alec Marsh .273 .351 .460 .225 .309 .374 0.9 -0.4 4.30 5.52
James McArthur .250 .330 .393 .242 .309 .384 0.6 -0.2 3.68 5.09
Mason Black .233 .333 .402 .273 .342 .441 1.0 -0.5 4.48 5.62
Steven Zobac .281 .342 .489 .250 .301 .406 0.8 -0.3 4.24 5.57
Hunter Patteson .235 .281 .361 .280 .342 .477 0.7 -0.4 4.56 5.63
Tyson Guerrero .253 .333 .391 .255 .341 .450 0.8 -0.5 4.38 5.63
Steven Cruz .216 .303 .330 .245 .333 .391 0.5 -0.3 3.64 4.88
Chandler Champlain .266 .336 .442 .270 .330 .430 1.1 -0.5 4.42 5.55
Spencer Turnbull .266 .349 .430 .262 .340 .408 0.5 -0.3 4.47 5.76
Jonathan Heasley .262 .331 .440 .267 .328 .447 0.5 -0.4 4.50 5.59
Dallas Keuchel .255 .309 .353 .291 .358 .469 0.4 -0.3 4.48 5.88
John Gant .270 .353 .467 .268 .333 .436 0.4 -0.5 4.63 5.84
Henry Williams .252 .339 .380 .270 .339 .477 0.5 -0.6 4.80 5.76
Ryan Ramsey .252 .347 .430 .262 .347 .431 0.5 -0.7 4.67 5.79
Shane Panzini .267 .366 .453 .259 .332 .435 0.5 -0.6 4.67 5.72
Taylor Clarke .263 .327 .434 .261 .306 .435 0.4 -0.5 3.94 5.52
Stephen Nogosek .250 .351 .429 .248 .330 .386 0.4 -0.5 4.13 5.75
Eric Cerantola .211 .314 .344 .252 .353 .429 0.5 -0.4 3.93 5.33
Oscar Rayo .261 .327 .409 .267 .333 .447 0.3 -0.7 4.38 5.58
Ryan Brady .259 .326 .400 .267 .328 .438 0.2 -0.6 4.25 5.65
Cruz Noriega .256 .340 .411 .275 .333 .459 0.2 -0.6 4.54 5.98
Anthony Simonelli .256 .356 .410 .252 .331 .449 0.2 -0.6 4.18 5.55
A.J. Causey .284 .354 .474 .215 .291 .341 0.4 -0.6 3.90 5.15
Justin Dunn .266 .391 .468 .250 .336 .423 0.2 -0.6 4.88 6.17
Nate Ackenhausen .213 .327 .298 .259 .347 .454 0.1 -0.5 4.38 5.70
Rich Hill .253 .352 .400 .266 .339 .480 0.4 -0.9 4.72 6.24
Nick Robertson .253 .340 .410 .245 .336 .406 0.2 -0.7 4.07 5.55
Sam Long .242 .329 .379 .259 .346 .439 0.1 -0.8 4.24 5.80
Joey Krehbiel .262 .330 .393 .274 .336 .478 0.0 -0.7 4.32 5.67
Chazz Martinez .257 .349 .351 .251 .342 .439 0.2 -0.8 4.13 5.51
Frank Mozzicato .274 .386 .411 .255 .356 .441 0.2 -1.0 5.06 6.20
Christian Chamberlain .218 .358 .309 .241 .371 .426 0.0 -0.7 4.26 5.76
Caden Monke .230 .351 .361 .255 .353 .409 0.0 -0.8 4.30 5.63
Ben Sears .250 .315 .400 .278 .348 .460 -0.2 -0.9 4.58 5.78
Brandon Johnson .255 .342 .422 .254 .331 .433 -0.1 -1.0 4.59 5.90
Nicholas Regalado .288 .400 .475 .238 .339 .386 -0.3 -0.9 5.02 6.13
Beck Way .287 .399 .443 .236 .349 .399 -0.2 -1.2 4.98 6.38
Ethan Bosacker .273 .344 .429 .282 .341 .505 -0.1 -1.2 5.23 6.29
Natanael Garabitos .276 .408 .448 .256 .379 .449 -0.4 -1.0 5.45 7.00
Marlin Willis .250 .400 .361 .250 .402 .476 -0.4 -1.1 5.56 7.69

Players are listed with their most recent teams wherever possible. This includes players who are unsigned or have retired, players who will miss 2026 due to injury, and players who were released in 2025. So yes, if you see Joe Schmoe, who quit baseball back in August to form a Ambient Math-Rock Trip-Hop Yacht Metal band that only performs in abandoned malls, he’s still listed here intentionally. ZiPS is assuming a league with an ERA of 4.16.

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. This last is, however, not an actual requirement.


Braves Bolster Bullpen by Adding Robert Suarez

Joe Nicholson-Imagn Images

Last month, the Braves retained Raisel Iglesias following a rollercoaster season in which he temporarily lost his closer job before reclaiming it and dominating down the stretch. Mind you, a stretch during which the team was playing out the string on its way to an 86-loss season and a fourth-place finish in the NL East. Now Atlanta has added another late-game reliever in Robert Suarez, who after opting out of his deal with the Padres has agreed to a three-year, $45 million contract with the Braves.

Suarez, who will turn 35 on March 1, spent the past four seasons with the Padres after pitching in Japan from 2016–21, a span interrupted by Tommy John surgery in ’17. After a strong stateside debut in 2022, he rejected a $5 million player option and quickly re-signed with San Diego on a five-year, $46 million contract. That deal paid him $10 million annually from 2023–25 and included performance bonuses as well as a pair of $8 million player options, which he declined after this year’s World Series, allowing him to hit the open market. Reportedly, his new deal pays him $13 million in 2026, with salaries of $16 million in both ’27 and ’28; none of the money is deferred. With that, the Braves currently have the relievers with the fifth- and sixth-highest average annual values in the majors, with only Edwin Díaz ($23 million AAV), Josh Hader ($19 million AAV), Tanner Scott ($18 million AAV), and Devin Williams ($17 million AAV) ahead of Iglesias ($16 million, on a one-year deal) and Suarez ($15 million AAV).

Suarez made the NL All-Star team in both 2024 and ’25 while closing for the Padres, putting up a pair of superficially similar seasons: a 2.77 ERA in 65 innings, with 36 saves (third in the league) in 42 opportunities in the former, and a 2.97 ERA in 69 2/3 innings, with an NL-high 40 saves in 45 opportunities in the latter. Below the surface, his FIP dropped from 3.49 to 2.88, driven by a spike in strikeout rate from 22.9% to 27.9%, and less dramatic drops in his already-low walk rate (from 6.2% to 5.9%) and home run rate (from 0.97 per nine to 0.78). As a result of that improved FIP, his WAR more than doubled, from 0.9 to 1.9. Read the rest of this entry »


We Tried Tracker: Winter Meetings Schwarblonso Edition

Mitch Stringer-Imagn Images, Jayne Kamin-Oncea-Imagn Images

ORLANDO — Congratulations, everybody. We made it. It’s now Thursday, and the Winter Meetings have officially concluded. It’s time to reflect on the state of effort in Major League Baseball, and I am pleased to report that it is strong. At this time last year, we had seen 22 We Trieds (though a few more would be added retroactively due to a rule clarification). As of now, we’re sitting at 24, so let’s take a moment to congratulate all the agents, the anonymous sources, and the reporters who took us this far. As always, I invite you to peruse this vast bounty on the official We Tried Tracker.

Before we break down the last couple days, I should start with an important update on the most recent entry of this series. When news broke that the Giants asked for Tatsuya Imai’s medicals even though they didn’t plan on pursuing him, I gave it an intentionally cumbersome moniker: We’re Not Even Going To Try, So Don’t Bother Getting Your Hopes Up. This was a classic defense mechanism. I went with the big, long name to deflect from the fact that I couldn’t come up with a clever, pithy one. But the right name came to me this week. In the future, such a move will be known as a Pre-Tried. I have spoken.

Since that last update, Bob Nightengale took a new angle on this exercise, packaging the news that the Reds “were hoping to sign” Devin Williams with the news that they had actually re-signed Emilio Pagán. It’s a brilliant maneuver. You sign a lesser player while also announcing that you were also thinking even bigger. We Trieds are all about partial credit, but here are the Reds, breaking out the razzle dazzle and running an end-around in a bid for double credit!

This strategy is also something of a double-edged sword, though. Some fans might give the Reds the double credit they want, but it’s also easy to take the information in the other direction. The Reds held onto a good reliever, Reds fans! Let’s celebrate! Oh, also, they only got him because they tried and failed to get an even better reliever? Do you still want to celebrate? Try pulling that move with a child. Take them to an ice cream shop and get them a kid’s cone. Once they’ve given it a big lick and smiled their adorable little smile, lean over and say, “You know, I was hoping to get you a giant ice cream sundae, but you’ll have to settle for this little one because the New York Mets ordered it first.” Read the rest of this entry »


2026 ZiPS Projections: New York Yankees

For the 22nd 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, as well as MLB’s glossary entry. The team order is selected by lot, and the next team up is the New York Yankees.

Batters

The Yankees aren’t the flashy spenders they used to be, but they still put very good teams on the field year after year, and the memory of their rather down 2023 is now another season further back in the rear view mirror. Most fanbases would be happy with a 94-68 season, but with New York no longer the big dogs when it comes to payroll, there’s an odd portion of the faithful who have come to believe that the team is fundamentally broken and needs to bunt a lot more and stop using analytics, which is a bit like wanting to fix your constantly running toilet by converting your toolshed into an outhouse. In reality, the Yankees are just a normal really good franchise these days.

The offense, of course, starts, ends, and runs through Aaron Judge. I don’t think I need to spend too much time cataloguing his merits, other than to note that he’s already passed the bus test for me — as in, if he got hit by a bus tomorrow, he’s already done enough in his career to be Cooperstown bound as far as I’m concerned. It is a little odd, though, that when we talk about players who have established their Hall of Fame credentials, we always seem to have them meet their demise via some mishap with mass transit. Read the rest of this entry »


Peter, Out: Orioles Swipe Alonso From Mets

Wendell Cruz-Imagn Images

After a somnambulant first day of the Winter Meetings, one of the buzzier rumors involved free agent first baseman Pete Alonso getting in his car, driving up I-4 from his home in Tampa to Orlando, and pitching himself in person to the Red Sox and Orioles.

Apparently, those meetings went well. The drive from New York to Baltimore mostly takes place on expensive toll roads, but Alonso now has an extra $155 million to put on his EZ Pass account. Big Pete, the Polar Bear, the face of the Mets’ franchise, is bound for Baltimore on a five-year contract. Read the rest of this entry »


Old Blood: Phillies Re-Sign Kyle Schwarber

Bill Streicher-Imagn Images

No player, not even Bryce Harper, has personified the Phillies’ recent run of four straight trips to the postseason more than Kyle Schwarber. Faced with the prospect of losing their signature slugger to the division rival Mets, Philadelphia instead retained Schwarber on a five-year, $150 million deal, news of which enlivened the Winter Meetings here in Orlando on Tuesday.

Schwarber, who turns 33 on March 5, hit .240/.365/.563 and led the National League with 56 home runs and 132 RBI while playing in all 162 games in 2025. He set career highs in home runs, RBI, games played, slugging percentage, wRC+ (152), and WAR (4.9). The last of those marks owed plenty to manager Rob Thomson’s limiting him to eight games in left field, where he’s a major liability, having totaled -37 FRV and -34 DRS in 2022–23. Only Shohei Ohtani took more plate appearances as a designated hitter in 2025 than Schwarber’s 687.

Schwarber’s season — which propelled him to a second-place finish in the NL MVP voting behind Ohtani (who won unanimously) — may have been a career year, but it was no fluke. Thanks to his ongoing work with hitting coach Kevin Long, who joined the Phillies just a few months before Schwarber signed his four-year, $79 million deal with them in March 2022, he has evolved from a pushover against lefties into a top threat in those matchups. From 2015–21 with the Cubs, Nationals, and Red Sox, Schwarber hit just .214/.324/.361 (86 wRC+) in 584 plate appearances against lefties, making 100 PA against them just twice and topping a 100 wRC+ against them only in the last of those seasons, during which he bounced from Washington to Boston. He has topped 200 plate appearances against lefties in all four of his seasons with the Phillies, and he was an above-average hitter against them in each of the last three. Over the past two years, his 524 plate appearances against lefties led the majors, while his 157 wRC+ (.275/.385/.547) and slugging percentage both ranked second behind Yordan Alvarez (albeit in just 247 PA). By comparison, he hit .244/.365/.525 (143 wRC+) against righties in that span. Read the rest of this entry »