2025 ZiPS Projections: Minnesota Twins

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

Batters

The Twins entered last September as a second-place team with a 92% chance to make the playoffs, according to ZiPS. But then, after going 9-18 that month, they finished fourth in the AL Central and fell short of the postseason. When you look at it that way, their 2024 campaign was certainly a disappointment. However, for as bad things ended, the Twins still posted a winning record (82-80) for the second consecutive year, and none of their problems down the stretch last year suggest there’s anything fundamentally broken with the organization. I mean, sure, Twins fans surely would want them to spend more aggressively, but that’s a gripe they share with the fans of the other AL Central teams.

As it turned out, Carlos Correa shockingly didn’t suddenly forget how to play baseball in 2023; he had terrific 2024 season that hopefully wiped some memories clean. One potential concern is his plantar fascitis – which he’s had in both heels at times over the last 18 months – but with a normal offseason of rest, he should begin this season on fairly strong footing, and ZiPS projects him to have a fairly typical Correa campaign.

Byron Buxton had a similarly solid comeback season. He posted a 142 wRC+, and after the Twins used him exclusively at DH in 2023 in an unsuccessful attempt to keep him healthy, he returned to center field and played above-average defense. I’d be shocked if Buxton made the 567 plate appearances that Depth Charts is projecting for him right now – he’s never done that in the majors – but when he’s playing, he remains a tantalizing talent. Given his history, I would assume the Twins are expecting to have him for about 90-100 games.

The rest of the offense is a great deal less exciting. Royce Lewis still has some upside, but he has a long injury history of his own, and his offense was fairly ordinary last year after his stunning 2023 output. Although he’s probably nearing his ceiling, right fielder Matt Wallner projects to be solidly above average over the next few years, and the catching tandem of Ryan Jeffers and Christian Vázquez is a good one. Elsewhere, though, this lineup feels more patchwork; it’s not really a giant mess, but you kind of wish it had a bit more thump.

There are some lesser projections of interest here. ZiPS isn’t high on Brooks Lee, but it does think that Edouard Julien deserves a chance to avenge his weak 2024, and there’s a real case for promoting Luke Keaschall quickly if he continues to hit in the high minors. It would be nice to see the team get one more bat in free agency, either as an upgrade over Trevor Larnach or to beef up its projected production at DH.

You Aren't a FanGraphs Member
It looks like you aren't yet a FanGraphs Member (or aren't logged in). We aren't mad, just disappointed.
We get it. You want to read this article. But before we let you get back to it, we'd like to point out a few of the good reasons why you should become a Member.
1. Ad Free viewing! We won't bug you with this ad, or any other.
2. Unlimited articles! Non-Members only get to read 10 free articles a month. Members never get cut off.
3. Dark mode and Classic mode!
4. Custom player page dashboards! Choose the player cards you want, in the order you want them.
5. One-click data exports! Export our projections and leaderboards for your personal projects.
6. Remove the photos on the home page! (Honestly, this doesn't sound so great to us, but some people wanted it, and we like to give our Members what they want.)
7. Even more Steamer projections! We have handedness, percentile, and context neutral projections available for Members only.
8. Get FanGraphs Walk-Off, a customized year end review! Find out exactly how you used FanGraphs this year, and how that compares to other Members. Don't be a victim of FOMO.
9. A weekly mailbag column, exclusively for Members.
10. Help support FanGraphs and our entire staff! Our Members provide us with critical resources to improve the site and deliver new features!
We hope you'll consider a Membership today, for yourself or as a gift! And we realize this has been an awfully long sales pitch, so we've also removed all the other ads in this article. We didn't want to overdo it.

ZiPS expects that it’ll take a few years for Walker Jenkins to really develop his power, but it likes the aforementioned Keaschall and center field prospect Emmanuel Rodriguez.

Pitchers

Pitching-wise, the Twins had an odd season. They had a massive difference between their ERA (4.26) and FIP (3.84), finishing 21st in the former but a much more respectable seventh in the latter stat. And they did that with a rather average defense, so you can’t blame the glove work for that. The good thing is that by and large, the current pitchers on the roster don’t have a lengthy history of falling short of their FIP, which suggests that some of the weaker-than-expected performances were more blips than true concerns.

One thing that hurt the rotation wasn’t so much the primary members but some really terrible performances from the Plan B gang. Chris Paddack and David Festa drastically underperformed their peripheral numbers, and fill-ins like Louie Varland and Zebby Matthews were downright dreadful. ZiPS expects a lot more from all four pitchers, especially Matthews, and overall, it projects the rotation to be somewhere between sixth and 10th in baseball in WAR. The 2.63 HR/9 that Matthews allowed last year may look especially bad, but as I warn people, don’t go nuts over crazy short-term home run stats. A shocking number of people yelled at me in 2019 about a positive Corbin Burnes projection because of the 17 homers he allowed over 49 innings in 2019. ZiPS has little to complain about at the top of the rotation, with Pablo López, Joe Ryan, and Bailey Ober, though López is the only one of the trio that ZiPS projects to have a high long-term ceiling. If ZiPS is right, the Twins are about set here, with a strong starting five and good depth behind them.

The Twins had the second-best bullpen in the American League last year by WAR (5.9), and the good news for Minnesota fans is that the bullpen should remain terrific in 2025. In fact, though it’s certainly not an official projection yet, ZiPS believes at this moment that the Twins have the best bullpen in baseball. Jhoan Duran ought to have a better season in 2025, and now that the Twins have announced that Griffin Jax won’t be moved back to the rotation in 2025, the two of them will form a deadly one-two late-inning punch. Brock Stewart is also projected to have a better season – though his sore shoulder will need to cooperate – and aside from Jorge Alcala and Michael Tonkin, ZiPS projects every significant Minnesota reliever to have an ERA under 4.00. The Twins don’t really need to make any additions here, either. If they are going to make more moves, they should target offensive upgrades.

This is a solidly built team that is deep enough to have a pretty high floor. That said, the Twins have enough weaknesses that ZiPS puts them in the 85-88 win range right now. The AL Central projects to be one of the closer divisions in baseball, and the Twins likely will still be playing meaningful games in September.

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
Carlos Correa R 30 SS 495 434 65 118 24 1 18 64 53 95 0 0
Byron Buxton R 31 CF 377 340 58 84 22 2 19 55 27 106 6 1
Matt Wallner L 27 RF 561 486 67 117 29 3 23 81 56 194 5 1
Edouard Julien L 26 2B 539 457 67 107 21 1 14 57 76 174 10 1
Ryan Jeffers R 28 C 410 361 48 85 18 1 17 55 34 96 2 0
DaShawn Keirsey Jr. L 28 CF 495 451 53 113 19 6 9 54 34 133 22 5
Royce Lewis R 26 3B 384 349 52 86 18 1 16 58 30 93 5 2
Emmanuel Rodriguez L 22 CF 338 280 54 59 14 4 10 40 54 122 7 3
Payton Eeles L 25 2B 475 408 73 102 20 6 4 56 42 86 23 7
Jose Miranda R 27 3B 483 446 50 119 26 2 12 59 27 77 2 1
Mickey Gasper B 29 1B 360 309 45 79 18 1 7 44 40 59 3 1
Luke Keaschall R 22 DH 451 390 65 99 21 1 11 60 44 99 12 4
Anthony Prato R 27 3B 450 383 54 87 22 5 4 45 53 114 8 3
Jair Camargo R 25 C 358 330 37 75 14 1 12 45 21 128 2 1
Willi Castro B 28 SS 546 487 76 119 24 4 12 56 39 128 16 6
Brooks Lee B 24 SS 428 395 44 97 23 1 9 50 29 72 4 1
Diego Castillo R 27 3B 482 426 56 103 24 1 7 49 49 87 7 4
Ricardo Olivar R 23 C 431 384 53 92 21 3 9 50 40 113 4 1
Yunior Severino B 25 1B 524 470 53 109 21 2 16 65 46 171 2 1
Trevor Larnach L 28 DH 424 371 55 89 19 1 14 55 45 115 3 1
Tanner Morris L 27 3B 355 310 36 73 13 1 3 31 40 80 2 1
Wynton Bernard R 34 RF 389 362 48 92 18 3 6 41 22 82 19 3
Christian Vázquez R 34 C 326 302 30 70 13 0 5 30 18 67 2 1
Michael Helman R 29 SS 391 356 50 81 18 2 10 46 29 98 11 2
Austin Martin R 26 CF 395 337 50 81 17 2 3 37 42 70 13 4
Manuel Margot R 30 LF 362 332 41 88 18 2 6 38 24 59 7 2
Alex Kirilloff L 27 LF 304 272 36 69 14 2 10 40 24 75 1 0
Carson McCusker R 27 RF 471 433 53 101 22 3 16 64 31 173 3 4
Danny De Andrade R 21 SS 353 318 39 66 15 1 7 40 22 89 8 2
Mike Ford L 32 DH 321 284 32 63 11 1 12 41 32 78 1 0
Walker Jenkins L 20 DH 357 320 41 78 16 4 6 37 33 60 8 2
Will Holland R 27 SS 323 285 40 60 13 3 6 34 28 102 14 4
Andrew Cossetti R 25 C 375 329 35 61 18 3 8 40 35 129 2 1
Noah Cardenas R 25 C 349 302 30 56 14 0 4 32 38 94 3 3
Jeferson Morales R 26 LF 395 355 41 82 20 2 8 47 28 88 4 2
Kaelen Culpepper R 22 SS 118 108 15 22 3 1 2 13 8 21 2 1
Rylan Bannon R 29 SS 469 401 51 76 16 1 12 49 60 135 6 3
Rubel Cespedes L 24 3B 455 424 42 96 20 2 9 47 27 122 2 1
Tanner Schobel R 24 3B 515 465 55 96 16 4 9 47 43 140 8 4
Allan Cerda R 25 CF 346 303 36 54 13 2 11 41 35 133 2 3
Kala’i Rosario R 22 RF 417 374 44 81 21 2 12 49 38 151 2 0
Dalton Shuffield R 26 CF 264 241 30 52 9 2 5 26 20 90 7 2
Nate Baez R 24 C 291 263 29 55 12 1 8 34 22 106 0 0
Rayne Doncon R 21 SS 449 413 47 84 21 2 10 45 30 124 3 2
Nick Lucky L 25 SS 226 199 23 34 5 2 5 25 19 101 7 1
Patrick Winkel L 25 C 313 289 23 62 14 0 5 30 22 102 0 0
Alerick Soularie R 25 LF 270 238 35 46 8 2 5 26 23 85 11 4
Gabriel Gonzalez R 21 RF 433 399 42 93 19 2 8 52 21 83 4 2
Tyler Dearden L 26 RF 293 265 28 61 13 1 5 29 22 90 0 0
Jake Rucker R 25 2B 505 463 47 105 21 3 7 51 30 116 4 5
Rixon Wingrove L 25 1B 358 326 30 67 14 1 11 43 25 119 1 1
Alex Isola R 26 LF 390 351 36 76 14 0 9 40 34 94 2 1
Willie Joe Garry Jr. L 25 CF 234 211 23 40 8 3 3 21 16 90 8 2
Kyle Hess L 26 CF 236 219 21 44 10 3 3 25 12 66 5 3
Ben Ross R 24 SS 466 426 46 84 19 1 11 47 33 160 10 4
Poncho Ruiz R 23 C 387 348 31 68 18 0 4 34 32 92 1 1
Jorel Ortega R 24 SS 472 426 50 86 20 3 9 48 38 144 8 5
Agustin Ruiz L 25 RF 373 335 39 65 15 2 9 43 26 116 1 2
Dillon Tatum R 25 C 184 162 15 24 6 0 3 16 17 87 0 1
Kyler Fedko R 25 RF 343 303 33 62 13 1 4 31 34 85 4 3
Aaron Sabato R 26 1B 395 349 36 61 15 0 10 41 39 150 3 1
Jose Salas B 22 CF 395 361 37 71 15 2 3 34 19 136 10 5
Misael Urbina R 23 LF 397 355 38 66 18 2 4 32 36 127 6 3

Batters – Advanced
Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Carlos Correa 495 .272 .354 .456 126 .184 .311 2 3.7 .349 119 70
Byron Buxton 377 .247 .316 .492 123 .244 .303 4 2.7 .344 119 54
Matt Wallner 561 .241 .339 .455 121 .214 .350 1 2.6 .344 120 76
Edouard Julien 539 .234 .347 .377 104 .142 .346 -3 2.2 .323 105 62
Ryan Jeffers 410 .235 .316 .432 108 .197 .274 -1 2.2 .325 105 50
DaShawn Keirsey Jr. 495 .251 .309 .379 93 .129 .337 6 2.0 .301 92 59
Royce Lewis 384 .247 .307 .441 108 .195 .292 3 1.8 .322 110 49
Emmanuel Rodriguez 338 .211 .343 .397 108 .186 .332 1 1.7 .327 116 41
Payton Eeles 475 .250 .345 .358 99 .108 .308 -3 1.6 .314 99 58
Jose Miranda 483 .267 .317 .415 104 .148 .300 -4 1.4 .317 102 60
Mickey Gasper 360 .256 .356 .389 110 .133 .297 3 1.3 .331 109 44
Luke Keaschall 451 .254 .348 .398 110 .144 .315 0 1.3 .330 112 58
Anthony Prato 450 .227 .333 .342 91 .115 .313 0 1.3 .304 90 46
Jair Camargo 358 .227 .282 .385 86 .157 .331 3 1.2 .289 88 37
Willi Castro 546 .244 .318 .384 97 .140 .308 -10 1.1 .309 95 65
Brooks Lee 428 .245 .297 .377 88 .132 .280 0 1.1 .292 92 45
Diego Castillo 482 .242 .322 .352 90 .110 .289 0 1.0 .300 91 51
Ricardo Olivar 431 .240 .320 .381 97 .141 .317 -8 1.0 .309 101 48
Yunior Severino 524 .232 .305 .388 94 .155 .329 6 0.9 .303 97 56
Trevor Larnach 424 .240 .325 .410 106 .170 .310 0 0.9 .321 105 50
Tanner Morris 355 .236 .327 .313 82 .077 .309 3 0.9 .291 85 33
Wynton Bernard 389 .254 .301 .370 88 .116 .314 5 0.8 .294 83 45
Christian Vázquez 326 .232 .275 .325 68 .093 .283 7 0.8 .264 66 28
Michael Helman 391 .228 .292 .374 86 .146 .286 -3 0.8 .291 86 42
Austin Martin 395 .240 .343 .329 91 .089 .295 -5 0.7 .305 93 42
Manuel Margot 362 .265 .318 .386 98 .121 .308 1 0.7 .308 93 43
Alex Kirilloff 304 .253 .322 .429 110 .176 .315 -2 0.6 .325 106 38
Carson McCusker 471 .233 .291 .409 94 .176 .349 1 0.5 .303 96 54
Danny De Andrade 353 .208 .278 .327 70 .120 .266 1 0.4 .269 77 31
Mike Ford 321 .222 .308 .394 96 .173 .263 0 0.3 .308 91 35
Walker Jenkins 357 .244 .317 .375 94 .131 .284 0 0.3 .304 96 41
Will Holland 323 .211 .298 .341 80 .130 .306 -5 0.3 .285 80 33
Andrew Cossetti 375 .186 .280 .332 72 .146 .276 -2 0.3 .273 79 31
Noah Cardenas 349 .186 .292 .272 61 .086 .255 2 0.2 .261 64 26
Jeferson Morales 395 .231 .304 .366 88 .135 .286 -1 0.0 .295 90 41
Kaelen Culpepper 118 .204 .271 .306 62 .102 .235 0 0.0 .258 76 10
Rylan Bannon 469 .189 .301 .324 76 .135 .252 -7 0.0 .282 77 42
Rubel Cespedes 455 .226 .275 .347 74 .120 .297 0 0.0 .272 78 41
Tanner Schobel 515 .207 .276 .316 67 .110 .275 3 0.0 .264 69 44
Allan Cerda 346 .178 .277 .343 74 .165 .270 -2 -0.1 .277 78 30
Kala’i Rosario 417 .216 .293 .379 88 .163 .327 -3 -0.1 .295 94 42
Dalton Shuffield 264 .215 .277 .331 71 .116 .321 -2 -0.1 .269 72 24
Nate Baez 291 .209 .282 .354 78 .145 .316 -8 -0.2 .281 83 26
Rayne Doncon 449 .204 .263 .337 68 .133 .266 -3 -0.3 .263 76 38
Nick Lucky 226 .171 .264 .292 57 .121 .312 -3 -0.4 .252 63 17
Patrick Winkel 313 .215 .272 .315 65 .101 .314 -5 -0.5 .261 70 25
Alerick Soularie 270 .194 .273 .307 64 .114 .278 1 -0.5 .260 67 24
Gabriel Gonzalez 433 .233 .286 .350 78 .118 .276 -1 -0.5 .280 85 42
Tyler Dearden 293 .231 .297 .344 80 .113 .330 -3 -0.6 .283 81 27
Jake Rucker 505 .227 .282 .331 72 .104 .289 -4 -0.6 .270 75 46
Rixon Wingrove 358 .206 .274 .356 76 .150 .286 0 -0.6 .277 77 32
Alex Isola 390 .217 .290 .334 75 .117 .271 -2 -0.7 .277 77 35
Willie Joe Garry Jr. 234 .190 .256 .299 56 .109 .314 -3 -0.7 .245 66 18
Kyle Hess 236 .201 .254 .315 59 .114 .273 -3 -0.7 .249 63 20
Ben Ross 466 .197 .258 .324 63 .127 .287 -6 -0.8 .257 67 39
Poncho Ruiz 387 .195 .269 .282 56 .086 .254 -5 -0.9 .249 61 27
Jorel Ortega 472 .202 .276 .327 69 .125 .282 -11 -0.9 .268 75 42
Agustin Ruiz 373 .194 .268 .331 68 .137 .267 -1 -1.0 .265 73 31
Dillon Tatum 184 .148 .245 .241 38 .093 .291 -5 -1.1 .225 42 10
Kyler Fedko 343 .204 .289 .294 65 .089 .271 -3 -1.1 .264 70 28
Aaron Sabato 395 .175 .266 .304 60 .129 .270 1 -1.2 .256 63 29
Jose Salas 395 .197 .246 .274 47 .078 .306 0 -1.3 .233 54 29
Misael Urbina 397 .186 .265 .282 55 .096 .277 1 -1.4 .247 59 29

Batters – Top Near-Age Offensive Comps
Player Hit Comp 1 Hit Comp 2 Hit Comp 3
Carlos Correa Troy Tulowitzki Xander Bogaerts Jose Vidro
Byron Buxton Alfonso Soriano Glenallen Hill Scott Hairston
Matt Wallner Mike Young John Jaha Ty Gainey
Edouard Julien Jack Hannahan Marlan Coughtry Colin Walsh
Ryan Jeffers Jake Early Chris Hoiles Rich Gedman
DaShawn Keirsey Jr. Jeff Stone Robert Stotsky Cecil Espy
Royce Lewis Gene Freese Scott Brosius Travis Jackson
Emmanuel Rodriguez Billy Grabarkewitz Derek Fisher Scott Reid
Payton Eeles Callix Crabbe Brian Roberts Ryan Freel
Jose Miranda Jack Kubiszyn Victor Rodríguez Rich Dauer
Mickey Gasper Dave Bergman Dion James Jon Zuber
Luke Keaschall Gerald Perry Brian Giles Tito Francona
Anthony Prato Lance Blankenship Don Eaddy Robert Hewes
Jair Camargo Dick Brown Mike Colbern Max Stassi
Willi Castro Cliff Pennington Freddie Patek Felipe Lopez
Brooks Lee Ed Crosby Domingo Leyba Thomas Stedman
Diego Castillo Christian Lopes Larry Fobbs Dan Monzon
Ricardo Olivar Aldo Pecorilli Duane Gustavson Joe Durso
Yunior Severino Ron Allen John Herrnstein Brock Peterson
Trevor Larnach Travis Snider Dan Duran Chris Parmelee
Tanner Morris Rich Paz Kevin Riggs Todd Crosby
Wynton Bernard Pete Fox Rajai Davis Calvin Murray
Christian Vázquez Birdie Tebbetts John Flaherty Dax Norris
Michael Helman Chris Basak Tom Brookens Benji Gil
Austin Martin Robert Perry J.T. Bruett Cal Stevenson
Manuel Margot Bobby Moore Timo Perez Miguel Cairo
Alex Kirilloff Len Gabrielson Al Yates Travis Buck
Carson McCusker Dick Greco Carlos Peguero Rolando Roomes
Danny De Andrade Fausto Solano Jonathan Mota Nick Ahmed
Mike Ford Carmelo Martinez Jim Fregosi Razor Shines
Walker Jenkins Jorge Cortes August Suhr Don Lyons
Will Holland Jimmy Sexton Ray-Patrick Didder Connor Kopach
Andrew Cossetti Michael Reynolds Herbert Orensky Raymond Patterson
Noah Cardenas Dave Huppert Jamie Pogue Charles Julian
Jeferson Morales Tyler Henley Joe Caruso Mitch Haniger
Kaelen Culpepper Rodrigo Ayarza Aaron Olivas Jonny Tucker
Rylan Bannon Eddie Joost Lyn Lary George Foussianes
Rubel Cespedes Scott Hodges Tye Waller Ron Slocum
Tanner Schobel David Nichols Pepper Thomas Derrik Gibson
Allan Cerda Don Young Brandon Boggs Dan Cataline
Kala’i Rosario Jay Porter Richard Guerra John Donati
Dalton Shuffield Anthony Vega Ruben Rodriguez Dorian Speed
Nate Baez Larry Howard David Lyon Tom Heierle
Rayne Doncon Jorge Velandia Raul Tablado Dennis Reeve
Nick Lucky Kevin Faircloth R.D. Long Jamie Doughty
Patrick Winkel Al Corbeil Dan Conway Cameron Rupp
Alerick Soularie Roy Marsh Dennis Malave Jayson Bass
Gabriel Gonzalez Ed Larregui Terry Hankins Clifton Wilder
Tyler Dearden Brad Downing Kyle Day Rudy Jaramillo
Jake Rucker Hagan Andersen Phil Gosselin Brian Friday
Rixon Wingrove Steven Caseres Brandon Decker John Toale
Alex Isola Jack McGowan Sheldon Brodsky Brian Hartsock
Willie Joe Garry Jr. Dorian Speed Anthony Vega Todd Hobson
Kyle Hess Jay Simpson Josh Womack Elanis Westbrooks
Ben Ross Donaldo Mendez Pat Valaika Jeter Downs
Poncho Ruiz John Posey Sal Butera Joe Goddard
Jorel Ortega Edwin Maysonet Ryan Klosterman Ryan Lane
Agustin Ruiz Ben Johnson Zach Cone Aaron Iatarola
Dillon Tatum Louis Coccia Johnny Grimes Matt Allen
Kyler Fedko Brian Saltzgaber Mel Barrow Nick Podkul
Aaron Sabato Stanley Patykula Douglas Slettvet Rock Shoulders
Jose Salas Marten Gasparini Lee May Shomari Beverly
Misael Urbina Doug Carpenter Odis McCowan James Broughton

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
Carlos Correa .297 .383 .516 147 4.9 .245 .327 .412 106 2.5
Byron Buxton .274 .338 .558 145 3.8 .219 .285 .420 96 1.5
Matt Wallner .268 .364 .513 144 4.2 .210 .314 .399 101 1.3
Edouard Julien .261 .374 .421 122 3.3 .208 .320 .334 85 0.9
Ryan Jeffers .264 .345 .490 129 3.2 .211 .293 .374 89 1.3
DaShawn Keirsey Jr. .278 .330 .422 110 3.1 .225 .279 .332 75 0.9
Royce Lewis .270 .333 .495 127 2.8 .226 .285 .393 90 1.0
Emmanuel Rodriguez .242 .376 .462 130 2.6 .179 .312 .334 86 0.8
Payton Eeles .276 .371 .410 118 2.7 .221 .320 .315 80 0.5
Jose Miranda .296 .348 .465 124 2.6 .240 .292 .374 85 0.3
Mickey Gasper .282 .379 .435 128 2.1 .229 .328 .345 92 0.5
Luke Keaschall .284 .375 .454 133 2.4 .230 .322 .355 92 0.4
Anthony Prato .251 .359 .390 110 2.3 .201 .306 .296 72 0.3
Jair Camargo .254 .310 .436 106 2.1 .196 .254 .334 66 0.3
Willi Castro .268 .340 .431 115 2.3 .216 .291 .338 79 -0.1
Brooks Lee .273 .326 .425 108 2.1 .219 .270 .332 69 0.1
Diego Castillo .267 .349 .392 108 2.0 .215 .294 .303 71 -0.1
Ricardo Olivar .268 .347 .433 118 2.1 .212 .292 .332 78 -0.1
Yunior Severino .258 .329 .436 113 2.2 .203 .280 .342 74 -0.4
Trevor Larnach .263 .347 .467 125 1.9 .213 .304 .363 89 -0.1
Tanner Morris .261 .355 .351 99 1.5 .205 .298 .270 63 0.0
Wynton Bernard .283 .332 .420 109 1.9 .222 .271 .326 67 -0.1
Christian Vázquez .260 .304 .366 89 1.6 .202 .251 .281 52 0.2
Michael Helman .251 .323 .433 109 1.9 .199 .267 .329 68 -0.1
Austin Martin .265 .370 .369 108 1.5 .213 .319 .290 73 -0.2
Manuel Margot .297 .347 .427 117 1.5 .240 .290 .343 79 -0.2
Alex Kirilloff .285 .352 .485 131 1.4 .228 .294 .384 91 -0.1
Carson McCusker .262 .319 .461 116 1.7 .201 .261 .351 70 -0.8
Danny De Andrade .237 .310 .388 92 1.4 .180 .255 .276 50 -0.4
Mike Ford .246 .334 .444 117 1.1 .192 .280 .338 74 -0.6
Walker Jenkins .273 .343 .427 116 1.2 .216 .288 .333 77 -0.5
Will Holland .238 .325 .394 101 1.1 .181 .271 .296 59 -0.5
Andrew Cossetti .211 .309 .392 95 1.3 .154 .251 .287 53 -0.6
Noah Cardenas .214 .325 .322 84 1.1 .154 .264 .230 43 -0.6
Jeferson Morales .258 .332 .416 108 1.0 .210 .278 .323 71 -0.8
Kaelen Culpepper .236 .303 .365 85 0.3 .176 .243 .254 40 -0.3
Rylan Bannon .216 .325 .376 95 1.1 .160 .273 .281 56 -1.2
Rubel Cespedes .256 .305 .390 93 1.0 .203 .247 .306 57 -1.0
Tanner Schobel .232 .302 .360 85 1.1 .181 .252 .276 50 -1.1
Allan Cerda .205 .303 .391 91 0.7 .151 .252 .283 52 -0.9
Kala’i Rosario .244 .320 .425 109 0.9 .189 .263 .327 66 -1.2
Dalton Shuffield .242 .306 .384 90 0.5 .185 .249 .291 52 -0.8
Nate Baez .239 .311 .405 98 0.5 .179 .250 .300 55 -1.1
Rayne Doncon .233 .294 .393 91 1.0 .177 .236 .288 50 -1.3
Nick Lucky .203 .299 .359 83 0.3 .143 .237 .234 36 -0.9
Patrick Winkel .244 .303 .359 85 0.3 .183 .242 .270 45 -1.3
Alerick Soularie .222 .303 .357 83 0.2 .168 .242 .271 47 -1.1
Gabriel Gonzalez .263 .315 .405 99 0.7 .208 .258 .301 56 -1.7
Tyler Dearden .255 .325 .386 96 0.0 .200 .268 .301 60 -1.3
Jake Rucker .255 .312 .369 89 0.6 .205 .260 .289 55 -1.6
Rixon Wingrove .231 .300 .396 95 0.3 .182 .249 .306 58 -1.4
Alex Isola .244 .317 .383 96 0.3 .192 .260 .287 57 -1.6
Willie Joe Garry Jr. .221 .287 .351 78 -0.1 .161 .225 .249 35 -1.3
Kyle Hess .228 .282 .364 79 -0.2 .175 .228 .270 40 -1.3
Ben Ross .222 .283 .371 82 0.3 .171 .233 .278 45 -1.9
Poncho Ruiz .226 .296 .326 72 -0.1 .171 .242 .245 39 -1.7
Jorel Ortega .225 .299 .373 88 0.2 .176 .249 .284 52 -1.9
Agustin Ruiz .219 .293 .376 86 -0.2 .168 .242 .285 49 -1.9
Dillon Tatum .180 .279 .295 61 -0.6 .118 .215 .190 17 -1.6
Kyler Fedko .228 .317 .332 83 -0.3 .179 .262 .255 48 -1.9
Aaron Sabato .207 .294 .355 81 -0.1 .150 .236 .258 41 -2.1
Jose Salas .225 .272 .314 65 -0.4 .170 .220 .237 30 -2.1
Misael Urbina .212 .292 .317 72 -0.5 .162 .238 .240 37 -2.2

Batters – Platoon Splits
Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Carlos Correa .276 .366 .455 .270 .348 .457
Byron Buxton .255 .325 .520 .244 .312 .479
Matt Wallner .228 .326 .420 .247 .345 .472
Edouard Julien .229 .335 .357 .237 .352 .385
Ryan Jeffers .248 .336 .453 .230 .307 .422
DaShawn Keirsey Jr. .240 .304 .349 .256 .311 .393
Royce Lewis .248 .317 .434 .246 .302 .445
Emmanuel Rodriguez .207 .330 .390 .212 .349 .399
Payton Eeles .236 .333 .333 .256 .350 .368
Jose Miranda .274 .324 .439 .263 .313 .401
Mickey Gasper .255 .345 .378 .256 .360 .393
Luke Keaschall .261 .355 .420 .251 .345 .387
Anthony Prato .239 .342 .370 .220 .329 .327
Jair Camargo .231 .282 .397 .225 .282 .378
Willi Castro .245 .309 .395 .244 .321 .379
Brooks Lee .250 .290 .388 .244 .299 .373
Diego Castillo .252 .335 .387 .236 .314 .331
Ricardo Olivar .250 .338 .400 .235 .312 .371
Yunior Severino .236 .303 .404 .230 .306 .379
Trevor Larnach .226 .298 .366 .245 .334 .424
Tanner Morris .225 .310 .294 .240 .335 .322
Wynton Bernard .264 .311 .400 .248 .294 .351
Christian Vázquez .230 .277 .345 .233 .274 .316
Michael Helman .226 .292 .387 .229 .291 .363
Austin Martin .244 .358 .339 .238 .335 .324
Manuel Margot .282 .339 .418 .257 .307 .369
Alex Kirilloff .247 .317 .411 .256 .324 .437
Carson McCusker .239 .299 .418 .231 .287 .405
Danny De Andrade .210 .276 .343 .207 .278 .319
Mike Ford .213 .300 .363 .225 .312 .407
Walker Jenkins .235 .305 .341 .247 .321 .387
Will Holland .219 .308 .343 .206 .291 .339
Andrew Cossetti .190 .287 .330 .183 .277 .332
Noah Cardenas .190 .308 .270 .183 .284 .272
Jeferson Morales .232 .307 .376 .230 .302 .361
Kaelen Culpepper .222 .282 .333 .194 .266 .292
Rylan Bannon .193 .311 .333 .187 .295 .319
Rubel Cespedes .218 .263 .306 .230 .280 .363
Tanner Schobel .215 .296 .333 .203 .267 .309
Allan Cerda .187 .291 .374 .172 .268 .322
Kala’i Rosario .221 .304 .393 .214 .287 .373
Dalton Shuffield .218 .282 .359 .215 .275 .319
Nate Baez .207 .281 .356 .210 .282 .352
Rayne Doncon .213 .275 .368 .199 .257 .321
Nick Lucky .155 .246 .259 .177 .270 .305
Patrick Winkel .198 .253 .272 .221 .279 .332
Alerick Soularie .203 .289 .342 .189 .266 .289
Gabriel Gonzalez .241 .291 .372 .229 .284 .340
Tyler Dearden .217 .283 .301 .236 .303 .363
Jake Rucker .231 .292 .333 .225 .277 .329
Rixon Wingrove .191 .258 .292 .211 .280 .380
Alex Isola .228 .309 .366 .211 .279 .316
Willie Joe Garry Jr. .182 .239 .288 .193 .263 .303
Kyle Hess .190 .250 .317 .205 .256 .314
Ben Ross .200 .268 .320 .196 .253 .326
Poncho Ruiz .200 .280 .286 .193 .264 .280
Jorel Ortega .206 .279 .341 .200 .274 .320
Agustin Ruiz .190 .265 .314 .196 .270 .339
Dillon Tatum .145 .254 .236 .150 .240 .243
Kyler Fedko .205 .297 .304 .204 .284 .288
Aaron Sabato .176 .278 .320 .174 .259 .295
Jose Salas .200 .250 .283 .195 .244 .270
Misael Urbina .189 .273 .307 .184 .261 .268

Pitchers – Standard
Player T Age W L ERA G GS IP H ER HR BB SO
Pablo López R 29 12 9 3.78 30 30 174.0 159 73 22 43 182
Bailey Ober R 29 9 9 3.91 28 28 156.3 139 68 24 37 160
Joe Ryan R 29 9 7 3.77 24 24 136.0 117 57 18 31 145
Jhoan Duran R 27 9 3 2.36 59 0 61.0 47 16 3 18 76
Zebby Matthews R 25 7 6 4.05 25 24 122.3 124 55 18 25 115
Griffin Jax R 30 7 4 3.21 60 3 73.0 59 26 8 20 87
David Festa R 25 6 6 4.08 25 24 108.0 99 49 13 41 114
Louie Varland R 27 8 8 4.32 29 22 127.0 126 61 17 38 119
Simeon Woods Richardson R 24 5 6 4.36 28 27 128.0 124 62 16 50 111
Andrew Morris R 23 7 7 4.34 24 22 116.0 121 56 15 32 84
Randy Dobnak R 30 7 8 4.50 28 21 116.0 122 58 14 46 91
Travis Adams R 25 6 7 4.54 24 21 107.0 112 54 14 35 81
Cole Sands R 27 5 4 3.62 47 4 69.7 61 28 8 22 77
Chris Paddack R 29 4 3 4.32 15 15 75.0 78 36 10 20 70
C.J. Culpepper R 23 4 5 4.46 23 22 78.7 78 39 9 28 64
Darren McCaughan R 29 4 6 4.69 25 21 119.0 127 62 17 33 90
Pierson Ohl R 25 5 7 4.64 21 16 97.0 109 50 15 19 62
Cole Irvin L 31 6 8 4.74 27 19 117.7 130 62 19 29 83
Marco Raya R 22 3 4 4.70 28 28 97.7 97 51 13 41 83
Brent Headrick L 27 4 4 4.38 21 12 72.0 70 35 11 26 72
Cory Lewis R 24 5 6 4.64 21 19 85.3 86 44 13 36 75
Huascar Ynoa R 27 4 5 4.50 18 14 64.0 61 32 8 26 61
Eiberson Castellano R 24 4 5 4.75 21 17 83.3 83 44 12 33 78
Christian MacLeod L 25 3 5 4.74 20 19 81.7 82 43 11 38 71
Brock Stewart R 33 1 0 3.00 27 0 27.0 21 9 2 11 35
Ronny Henriquez R 25 3 3 4.32 40 6 75.0 75 36 9 27 63
Kody Funderburk L 28 3 3 4.13 36 4 61.0 56 28 6 26 62
Scott Blewett R 29 4 5 4.54 36 8 77.3 81 39 10 29 60
Anthony DeSclafani R 35 4 5 4.77 15 14 77.3 84 41 13 23 60
Chase Chaney R 25 6 9 4.99 24 20 113.7 130 63 16 38 64
Josh Winder R 28 3 3 4.23 29 4 61.7 61 29 8 20 54
Justin Topa R 34 3 2 3.80 48 0 42.7 41 18 3 14 36
Aaron Rozek L 29 5 7 4.96 22 13 94.3 105 52 15 30 64
Mike Paredes R 24 3 3 4.50 29 5 62.0 68 31 9 18 44
Jorge Alcala R 29 3 4 4.05 56 0 60.0 51 27 8 23 62
Cody Laweryson R 27 2 3 4.41 27 4 49.0 50 24 6 19 41
Michael Tonkin R 35 4 3 4.25 46 0 65.7 60 31 8 24 65
Adam Plutko R 33 3 5 5.06 16 12 64.0 71 36 12 21 48
Kyle Jones R 25 3 5 5.05 16 15 66.0 72 37 11 24 46
Joe Gunkel R 33 2 3 4.82 9 7 28.0 35 15 4 7 15
Jaylen Nowlin L 24 4 7 5.21 22 15 86.3 89 50 13 41 71
Trent Baker R 26 4 7 5.23 21 16 82.7 91 48 14 33 58
John Stankiewicz R 26 3 4 4.63 35 2 56.3 61 29 8 18 41
Alex Speas R 27 3 3 4.42 38 0 38.7 32 19 3 27 42
Zack Weiss R 33 2 2 4.67 27 1 34.7 33 18 5 16 34
Trevor Richards R 32 2 2 4.66 50 2 58.0 51 30 9 29 64
Jarret Whorff R 26 3 5 4.99 29 5 61.3 63 34 9 28 50
Ryan Jensen R 27 4 4 4.94 36 6 54.7 52 30 7 36 54
Jay Jackson R 37 2 2 4.60 27 0 31.3 31 16 6 10 32
Rafael Marcano L 25 2 4 5.31 25 8 57.7 61 34 8 32 45
Caleb Baragar L 31 2 3 5.06 25 3 32.0 32 18 5 19 29
Hunter McMahon R 27 1 2 4.78 32 1 49.0 54 26 7 14 33
Daniel Duarte R 28 2 3 4.76 38 0 39.7 37 21 5 20 35
Ricardo Velez R 26 5 6 4.70 37 0 46.0 47 24 7 19 42
Nick Wittgren R 34 2 2 5.03 37 2 48.3 53 27 7 16 34
Miguel Rodriguez R 26 3 4 5.00 35 1 45.0 48 25 7 20 37
Kyle Bischoff R 25 3 3 4.78 40 0 52.7 51 28 8 23 50
Austin Brice R 33 1 2 5.40 27 1 30.0 29 18 4 18 27
A.J. Alexy R 27 3 4 5.77 20 10 53.0 52 34 7 44 45
Regi Grace R 25 2 4 5.18 33 1 48.7 50 28 7 23 39
Sheldon Reed R 27 1 3 5.40 25 0 31.7 33 19 5 18 27
Diego Castillo R 27 2 4 5.35 39 0 33.7 31 20 5 15 33
Michael Boyle L 31 2 3 5.50 30 1 36.0 39 22 6 20 26
Jared Solomon R 28 2 3 5.79 31 0 32.7 34 21 5 21 25

Pitchers – Advanced
Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Pablo López 174.0 9.4 2.2 1.1 6.0% 25.4% .295 110 107 3.61 91 2.8
Bailey Ober 156.3 9.2 2.1 1.4 5.8% 25.2% .278 106 104 3.93 94 2.4
Joe Ryan 136.0 9.6 2.1 1.2 5.6% 26.4% .280 110 107 3.60 91 2.2
Jhoan Duran 61.0 11.2 2.7 0.4 7.2% 30.5% .299 176 169 2.41 57 1.9
Zebby Matthews 122.3 8.5 1.8 1.3 4.9% 22.5% .304 103 106 3.92 97 1.8
Griffin Jax 73.0 10.7 2.5 1.0 6.7% 29.3% .285 130 123 3.16 77 1.5
David Festa 108.0 9.5 3.4 1.1 8.9% 24.6% .298 102 102 3.88 98 1.4
Louie Varland 127.0 8.4 2.7 1.2 7.0% 22.0% .301 96 97 4.06 104 1.4
Simeon Woods Richardson 128.0 7.8 3.5 1.1 9.0% 20.0% .290 95 98 4.31 105 1.4
Andrew Morris 116.0 6.5 2.5 1.2 6.5% 16.9% .294 96 98 4.32 105 1.2
Randy Dobnak 116.0 7.1 3.6 1.1 9.0% 17.8% .303 92 91 4.52 108 1.0
Travis Adams 107.0 6.8 2.9 1.2 7.5% 17.4% .297 91 95 4.43 109 1.0
Cole Sands 69.7 9.9 2.8 1.0 7.6% 26.5% .293 115 115 3.62 87 0.9
Chris Paddack 75.0 8.4 2.4 1.2 6.2% 21.8% .312 96 96 3.88 104 0.8
C.J. Culpepper 78.7 7.3 3.2 1.0 8.3% 18.9% .294 93 98 4.37 107 0.8
Darren McCaughan 119.0 6.8 2.5 1.3 6.5% 17.6% .299 89 89 4.56 113 0.8
Pierson Ohl 97.0 5.8 1.8 1.4 4.6% 15.0% .298 90 94 4.59 112 0.7
Cole Irvin 117.7 6.3 2.2 1.5 5.7% 16.4% .298 88 87 4.78 114 0.7
Marco Raya 97.7 7.6 3.8 1.2 9.5% 19.3% .293 88 93 4.65 113 0.7
Brent Headrick 72.0 9.0 3.3 1.4 8.4% 23.3% .298 95 97 4.37 105 0.6
Cory Lewis 85.3 7.9 3.8 1.4 9.5% 19.8% .294 90 95 4.70 112 0.6
Huascar Ynoa 64.0 8.6 3.7 1.1 9.4% 21.9% .294 92 96 4.26 108 0.6
Eiberson Castellano 83.3 8.4 3.6 1.3 9.0% 21.3% .300 87 92 4.76 114 0.5
Christian MacLeod 81.7 7.8 4.2 1.2 10.4% 19.5% .297 88 92 4.73 114 0.5
Brock Stewart 27.0 11.7 3.7 0.7 9.8% 31.3% .302 138 130 2.88 72 0.5
Ronny Henriquez 75.0 7.6 3.2 1.1 8.4% 19.5% .297 96 100 4.30 104 0.5
Kody Funderburk 61.0 9.1 3.8 0.9 9.8% 23.5% .299 101 101 3.95 99 0.5
Scott Blewett 77.3 7.0 3.4 1.2 8.5% 17.5% .300 92 92 4.55 109 0.4
Anthony DeSclafani 77.3 7.0 2.7 1.5 6.8% 17.9% .300 87 80 4.78 115 0.4
Chase Chaney 113.7 5.1 3.0 1.3 7.5% 12.7% .298 83 87 5.07 120 0.4
Josh Winder 61.7 7.9 2.9 1.2 7.6% 20.5% .294 98 98 4.23 102 0.4
Justin Topa 42.7 7.6 3.0 0.6 7.7% 19.9% .299 109 103 3.67 91 0.3
Aaron Rozek 94.3 6.1 2.9 1.4 7.2% 15.5% .298 84 84 5.00 119 0.3
Mike Paredes 62.0 6.4 2.6 1.3 6.7% 16.3% .301 92 97 4.52 108 0.3
Jorge Alcala 60.0 9.3 3.5 1.2 9.1% 24.6% .274 103 103 4.09 98 0.3
Cody Laweryson 49.0 7.5 3.5 1.1 8.9% 19.2% .301 94 96 4.38 106 0.3
Michael Tonkin 65.7 8.9 3.3 1.1 8.6% 23.3% .289 98 90 4.15 102 0.2
Adam Plutko 64.0 6.8 3.0 1.7 7.5% 17.1% .298 82 78 5.19 122 0.2
Kyle Jones 66.0 6.3 3.3 1.5 8.2% 15.7% .293 82 86 5.04 121 0.2
Joe Gunkel 28.0 4.8 2.3 1.3 5.6% 12.1% .316 86 81 4.71 116 0.1
Jaylen Nowlin 86.3 7.4 4.3 1.4 10.4% 18.0% .295 80 85 5.23 125 0.1
Trent Baker 82.7 6.3 3.6 1.5 8.9% 15.6% .295 79 82 5.32 126 0.0
John Stankiewicz 56.3 6.6 2.9 1.3 7.3% 16.6% .299 90 93 4.58 112 0.0
Alex Speas 38.7 9.8 6.3 0.7 15.1% 23.5% .290 94 96 4.42 106 0.0
Zack Weiss 34.7 8.8 4.2 1.3 10.5% 22.2% .292 89 84 4.74 113 0.0
Trevor Richards 58.0 9.9 4.5 1.4 11.3% 24.9% .284 89 86 4.54 112 0.0
Jarret Whorff 61.3 7.3 4.1 1.3 10.2% 18.2% .295 83 87 5.07 120 0.0
Ryan Jensen 54.7 8.9 5.9 1.2 14.2% 21.3% .298 84 85 5.06 119 0.0
Jay Jackson 31.3 9.2 2.9 1.7 7.5% 24.1% .294 90 80 4.68 111 -0.1
Rafael Marcano 57.7 7.0 5.0 1.2 12.0% 16.9% .299 78 84 5.24 128 -0.1
Caleb Baragar 32.0 8.2 5.3 1.4 13.0% 19.9% .293 82 80 5.27 122 -0.1
Hunter McMahon 49.0 6.1 2.6 1.3 6.6% 15.5% .299 87 89 4.73 115 -0.1
Daniel Duarte 39.7 7.9 4.5 1.1 11.4% 19.9% .283 87 89 4.87 115 -0.2
Ricardo Velez 46.0 8.2 3.7 1.4 9.3% 20.6% .301 88 91 4.77 113 -0.2
Nick Wittgren 48.3 6.3 3.0 1.3 7.5% 16.0% .301 83 79 4.90 121 -0.2
Miguel Rodriguez 45.0 7.4 4.0 1.4 9.9% 18.2% .301 83 88 5.02 120 -0.2
Kyle Bischoff 52.7 8.5 3.9 1.4 9.7% 21.2% .293 87 90 4.91 115 -0.3
Austin Brice 30.0 8.1 5.4 1.2 13.1% 19.7% .291 77 73 5.51 130 -0.3
A.J. Alexy 53.0 7.6 7.5 1.2 17.2% 17.6% .290 72 75 5.91 139 -0.3
Regi Grace 48.7 7.2 4.3 1.3 10.6% 17.9% .295 80 85 5.23 125 -0.3
Sheldon Reed 31.7 7.7 5.1 1.4 12.2% 18.2% .298 77 80 5.42 130 -0.3
Diego Castillo 33.7 8.8 4.0 1.3 10.3% 22.6% .283 78 82 4.84 129 -0.4
Michael Boyle 36.0 6.5 5.0 1.5 12.0% 15.6% .295 76 74 5.65 132 -0.4
Jared Solomon 32.7 6.9 5.8 1.4 13.5% 16.1% .290 72 72 6.03 139 -0.5

Pitchers – Top Near-Age Comps
Player Pit Comp 1 Pit Comp 2 Pit Comp 3
Pablo López Jack McDowell Don Drysdale Corey Kluber
Bailey Ober Masahiro Tanaka Matt Cain Mike Mussina
Joe Ryan Bret Saberhagen Ray Culp Mike Mussina
Jhoan Duran Lee Smith Rob Dibble Rollie Fingers
Zebby Matthews Jose Urquidy Rick Ramos Brad Ziegler
Griffin Jax Bob Locker Guillermo Mota Rollie Fingers
David Festa Kevin Millwood Dock Ellis Mark Kiefer
Louie Varland Luis Castillo Russ Butler Zach Eflin
Simeon Woods Richardson Chris Zachary Aaron Blair Jim Hughes
Andrew Morris Henderson Alvarez Pablo Lopez German Marquez
Randy Dobnak Tyler Herron Mike Lemish Charlie Morton
Travis Adams Luis Cessa Henderson Alvarez Matt Wisler
Cole Sands Scott Sullivan Junichi Tazawa Rich Bordi
Chris Paddack Chuck Porter Chris Sheehan Frank Castillo
C.J. Culpepper Ken Carlyle Keefe Cato Gene Lary
Darren McCaughan John Butcher Kyle Kendrick Cole De Vries
Pierson Ohl Casey Lawrence Matt Neil Aaron Civale
Cole Irvin Adam Pettyjohn Scott McGregor Scott Diamond
Marco Raya Mark Fidrych George Bechtold Michael Herson
Brent Headrick Everett Teaford Mike Yearout Tony Watson
Cory Lewis Cholly Naranjo Daniel Welch Jose Rosario
Huascar Ynoa Frank Brosseau Todd Ozias Dave Hasbach
Eiberson Castellano Jharel Cotton Robert Urban Sean Snedeker
Christian MacLeod Sean Nolin Gary Christenson Chet Nichols
Brock Stewart Jumbo Brown Jesse Crain J.J. Putz
Ronny Henriquez Brandon League Chad Bettis Scott Anderson
Kody Funderburk Robbie Ross Frank Gonzales Ron Meridith
Scott Blewett Bo Schultz Anthony Telford Ty Marotz
Anthony DeSclafani Matt Kinney Brandon McCarthy Larry Jansen
Chase Chaney Chad Jenkins Jen-Ho Tseng Shao-Ching Chiang
Josh Winder Frank Herrmann Blake Hawksworth Juan Carlos Oviedo
Justin Topa LaTroy Hawkins Matt Lindstrom Brandon Kintzler
Aaron Rozek Logan Darnell Rick Honeycutt Allan Anderson
Mike Paredes Robbie Guzik Jerry Spradlin Gordon Chretien
Jorge Alcala Pedro Baez Ryan Tepera Chris Perez
Cody Laweryson Chris Mobley Jonathan Aro Carl Willis
Michael Tonkin Al Worthington Dick Tidrow Salomon Torres
Adam Plutko Jim Bagby Joe Genewich Dick Bosman
Kyle Jones Ed Caballero Luis Valdez Doug Peters
Joe Gunkel Pat Tilmon Pete Donohue Rolando Valdez
Jaylen Nowlin Don Arlich Camilo Vazquez Marlon Arias
Trent Baker Parker Bridwell Paul Clemens Mark Smith
John Stankiewicz Brandon Bowe Jason Kummerfeldt Gerald Ako
Alex Speas Bruce Taylor Brad Lesley Horacio Pina
Zack Weiss Johnny Murphy Gregg Olson Dick Drago
Trevor Richards Scott Proctor Bob Long Ray Narleski
Jarret Whorff Blake Wood Victor Alcantara Doug Sessions
Ryan Jensen Gene Pentz John Hudek Chris Carpenter
Jay Jackson Orlando Pena Roy Face Rick Aguilera
Rafael Marcano Philip Barzilla Brandon Matheny Rich Kelley
Caleb Baragar Matt Perisho Fred Scherman Tommy Hottovy
Hunter McMahon William Clauss Pat Lehman Elio Serrano
Daniel Duarte Jesus Colome Ronald Belisario Ken Ryan
Ricardo Velez Mark Ettles Matt Stites Mike Natale
Nick Wittgren Bryan Corey Brandon Puffer Travis Minix
Miguel Rodriguez Elvys Quezada Rich Bombard David Peterson
Kyle Bischoff Logan Cozart Troy Neiman Cam Hill
Austin Brice Gary Waslewski Freddy Schmidt Hal White
A.J. Alexy Wes Scott Cecil Butler Rafael Dolis
Regi Grace Mike Dupree Andrew Wilson Willie Shanks
Sheldon Reed Les Munns David Wong Jeremy Schmidt
Diego Castillo George Murray Dave Beard Jeff Austin
Michael Boyle Rudy Arias Phil Dumatrait Matt Perisho
Jared Solomon Mike Phelps Mark Silva Tad Slowik

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
Pablo López .253 .306 .406 .222 .272 .377 3.8 1.5 3.25 4.55
Bailey Ober .237 .291 .403 .229 .273 .414 3.4 1.3 3.42 4.67
Joe Ryan .226 .284 .379 .228 .272 .388 3.1 1.2 3.24 4.54
Jhoan Duran .204 .283 .315 .212 .271 .280 2.5 1.0 1.68 3.32
Zebby Matthews .258 .307 .439 .256 .287 .420 2.7 0.8 3.41 4.85
Griffin Jax .218 .288 .336 .213 .263 .361 2.2 0.6 2.52 4.26
David Festa .242 .320 .389 .234 .302 .390 2.3 0.5 3.49 4.80
Louie Varland .258 .316 .408 .248 .305 .426 2.3 0.5 3.76 4.95
Simeon Woods Richardson .240 .313 .376 .256 .323 .433 2.2 0.3 3.82 5.07
Andrew Morris .275 .321 .451 .251 .304 .396 1.8 0.4 3.87 4.96
Randy Dobnak .269 .349 .447 .260 .325 .401 1.6 0.2 4.05 5.05
Travis Adams .262 .326 .400 .265 .319 .448 1.6 0.3 4.05 5.06
Cole Sands .240 .314 .400 .220 .284 .348 1.5 0.1 2.87 4.64
Chris Paddack .257 .306 .426 .267 .311 .433 1.4 0.2 3.63 5.01
C.J. Culpepper .248 .328 .382 .258 .327 .430 1.3 0.1 3.92 5.27
Darren McCaughan .258 .320 .424 .276 .326 .459 1.5 0.1 4.13 5.21
Pierson Ohl .273 .317 .466 .282 .311 .454 1.3 0.0 4.09 5.31
Cole Irvin .262 .311 .385 .278 .327 .491 1.3 0.0 4.20 5.33
Marco Raya .276 .359 .459 .233 .308 .381 1.3 0.0 4.18 5.21
Brent Headrick .247 .309 .400 .250 .321 .434 1.2 -0.1 3.68 5.32
Cory Lewis .259 .332 .459 .253 .323 .416 1.2 0.1 4.11 5.19
Huascar Ynoa .241 .326 .397 .248 .318 .398 1.0 0.1 3.96 5.12
Eiberson Castellano .292 .372 .500 .224 .316 .372 1.2 -0.1 4.10 5.50
Christian MacLeod .237 .321 .376 .263 .347 .443 1.1 -0.1 4.21 5.38
Brock Stewart .217 .308 .326 .204 .279 .296 0.9 0.2 2.12 4.42
Ronny Henriquez .250 .327 .404 .259 .322 .418 1.0 0.0 3.80 4.99
Kody Funderburk .238 .326 .325 .239 .324 .394 1.1 0.0 3.41 4.87
Scott Blewett .273 .341 .447 .255 .322 .414 0.9 -0.1 4.05 5.21
Anthony DeSclafani .288 .349 .519 .253 .297 .409 0.9 -0.2 4.16 5.58
Chase Chaney .299 .367 .437 .268 .324 .472 1.0 -0.2 4.56 5.47
Josh Winder .222 .298 .398 .276 .329 .418 0.8 -0.1 3.62 4.95
Justin Topa .250 .326 .400 .244 .313 .326 0.7 -0.1 3.12 4.83
Aaron Rozek .248 .306 .372 .287 .346 .500 0.8 -0.4 4.45 5.64
Mike Paredes .286 .341 .500 .263 .301 .401 0.8 -0.2 3.85 5.26
Jorge Alcala .235 .325 .402 .216 .277 .368 0.9 -0.4 3.28 5.00
Cody Laweryson .253 .324 .429 .265 .333 .402 0.7 -0.1 3.76 5.12
Michael Tonkin .252 .325 .467 .226 .309 .329 0.8 -0.5 3.31 5.76
Adam Plutko .300 .356 .508 .254 .311 .457 0.6 -0.3 4.42 5.78
Kyle Jones .273 .329 .489 .270 .331 .444 0.6 -0.2 4.55 5.59
Joe Gunkel .298 .344 .491 .300 .328 .467 0.3 -0.1 4.39 5.49
Jaylen Nowlin .266 .357 .404 .258 .349 .455 0.7 -0.5 4.70 5.85
Trent Baker .253 .321 .411 .289 .360 .513 0.5 -0.5 4.74 5.88
John Stankiewicz .273 .336 .436 .267 .312 .440 0.5 -0.4 3.98 5.24
Alex Speas .215 .370 .338 .225 .344 .350 0.4 -0.4 3.70 5.46
Zack Weiss .254 .347 .429 .236 .325 .417 0.3 -0.4 3.84 5.79
Trevor Richards .220 .319 .400 .240 .321 .413 0.5 -0.7 3.86 5.97
Jarret Whorff .259 .359 .438 .262 .336 .431 0.4 -0.5 4.47 5.64
Ryan Jensen .247 .373 .443 .243 .353 .374 0.4 -0.6 4.34 5.78
Jay Jackson .250 .311 .500 .254 .311 .433 0.3 -0.4 3.45 6.02
Rafael Marcano .242 .333 .339 .274 .369 .470 0.3 -0.6 4.70 6.11
Caleb Baragar .256 .347 .419 .253 .357 .458 0.2 -0.5 4.28 6.27
Hunter McMahon .281 .330 .483 .269 .328 .417 0.2 -0.5 4.21 5.43
Daniel Duarte .240 .345 .400 .244 .341 .410 0.1 -0.5 4.16 5.61
Ricardo Velez .273 .360 .489 .245 .314 .394 0.2 -0.5 3.98 5.38
Nick Wittgren .284 .354 .466 .264 .325 .434 0.1 -0.5 4.41 5.85
Miguel Rodriguez .277 .362 .506 .258 .330 .402 0.1 -0.6 4.41 5.75
Kyle Bischoff .272 .376 .457 .230 .307 .398 0.2 -0.7 4.13 5.47
Austin Brice .255 .387 .431 .242 .363 .409 0.0 -0.5 4.59 6.39
A.J. Alexy .253 .415 .407 .250 .367 .422 0.1 -0.9 5.08 6.79
Regi Grace .247 .337 .388 .271 .368 .467 0.0 -0.6 4.63 5.79
Sheldon Reed .279 .380 .443 .246 .342 .462 -0.1 -0.7 4.77 6.33
Diego Castillo .234 .338 .406 .242 .329 .424 0.0 -0.8 4.58 6.48
Michael Boyle .250 .345 .354 .281 .369 .521 -0.1 -0.8 4.72 6.65
Jared Solomon .258 .387 .452 .265 .378 .441 -0.3 -0.8 5.16 6.69

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

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





Dan Szymborski is a senior writer for FanGraphs and the developer of the ZiPS projection system. He was a writer for ESPN.com from 2010-2018, a regular guest on a number of radio shows and podcasts, and a voting BBWAA member. He also maintains a terrible Twitter account at @DSzymborski.

62 Comments
Oldest
Newest Most Voted
boomstickMember since 2024
1 year ago

You can DH by platoon.
You can DH by committee
You can DH by platoon by committee = Bunch of Dudes (BoD)

Modern problems require modern solutions.

Ivan_GrushenkoMember since 2016
1 year ago
Reply to  boomstick

Bunch of Dudes with 1.3 WAR is like 70% of teams

cowdiscipleMember since 2016
1 year ago
Reply to  boomstick

They’d probably be a better team with Emmanuel Rodriguez in center, Buxton in right, and Wallner leading the Bunch of Dudes (he is a big dude). We may see that by midseason.

carterMember since 2020
1 year ago
Reply to  cowdisciple

Why? For injury risk? Buxton is still a solid defensive CF

cowdiscipleMember since 2016
1 year ago
Reply to  carter

Yeah, anything to keep him healthy, playing the outfield, and not running into that wall. Besides, two center fielders are better than one!

Now that I think about it a little more, it would make more sense to displace Larnach. Wallner is a better defender.

Last edited 1 year ago by cowdisciple
Smiling PolitelyMember since 2018
1 year ago
Reply to  boomstick

You can hit if you want to
You can leave those Twins behind
Because the Twins don’t hit and if they don’t hit, well,
They’re no Twins of mine

cashgod27Member since 2024
1 year ago

Dan none of this matters until you tell us what OOPSY is

bernardgilkeyhasaposseMember since 2019
1 year ago
Reply to  cashgod27

My best guess is “Out Of the Park Sim Year” (based on the video game)

Another Old GuyMember since 2020
1 year ago

I have the same question as cashgod27, although your answer may well have a lot to do with it. I hope Dan has an answer for those of us having no knowledge of this projection system, like myself.

bernardgilkeyhasaposseMember since 2019
1 year ago

I don’t play OOtP, but I think it’s similar to Football Manager (my personal crack habit). I am a Diamond Mind Baseball guy for my sim needs in hardball world.

tunglashrMember since 2016
1 year ago

DMB is far superior to OOTP so you are on the right path. OOTP is a good baseball management simulator but not a good baseball simulator.

TheBabboMember since 2019
1 year ago
Reply to  cashgod27

New projection system by Jordan Rosenblum of Scout the Statline. Emphasizes Statcast-type metrics (like BatX) including bat speed. Not sure of the full acronym but the PS apparently stands for Process Stats.

TheBabboMember since 2019
1 year ago
Reply to  TheBabbo

Pitching projections include Eno Sarris’ Stuff+ model, he and Jordan have been working together for a while.

docgooden85Member since 2018
1 year ago
Reply to  TheBabbo

I refuse to learn this from you so I didn’t read it. FG needs to define it.

TheBabboMember since 2019
1 year ago
Reply to  docgooden85

Jordan said on Twitter that his explainer piece is written, just a question of when they run it.

JimMember since 2016
1 year ago

“fairly strong footing”
Couldn’t resist, could ya Dan?

treebeardedMember since 2019
1 year ago
Reply to  Jim

You beat me to it!

I Like Big BuxtonMember since 2024
1 year ago

Louie Varland having Luis Castillo as his first comp is something.

I Like Big BuxtonMember since 2024
1 year ago

Oh, and what a nice projection for DaShawn Keirsey Jr.!

Milton Babip
1 year ago

Yeah, both these things caught my eye as I scanned the tables. Pretty striking to see Keirsey, who seemingly no one considers a major part of the team’s plans coming into this season, projected for higher WAR than some presumed starters.

The other thing that caught my eye: The projection system returned Crabbe as the top comparable for Eeles?! Really.

Brian ReinhartMember since 2016
1 year ago

Now here is a team that should really be calling Mark Canha to shore up outfield corners and DH with some boring righty competence.

gallade3Member since 2020
1 year ago

That is a crazy good projection for Payton Eeles, who’s such a fascinating player that the Twins should probably give him a shot just to see what the hell happens. You don’t see many 5’5″ undrafted dudes destroy the minors quite like he did last year.

MoMember since 2024
1 year ago
Reply to  gallade3

Thanks for pointing this out! I had never heard Eeles before but what a year he had last year.

sadtromboneMember since 2020
1 year ago
Reply to  gallade3

Fascinating. He looks like a left-handed Caleb Durbin or Jared Serna. Or, if you want to run it back, he’s a lot like Fringe Five favorite Max Schrock.

It is too bad we don’t have the Fringe Five anymore, that’s where I learned about a lot of the Eeles-type guys.

Fun-Hating DorkMember since 2019
1 year ago
Reply to  sadtrombone

Brian Cashman just asked if he can trade Eeles, too.

grandbranyanMember since 2017
1 year ago
Reply to  gallade3

I discovered Eeles playing around with the minor league leaderboards earlier this summer.

What’s extra crazy is that the Twins list was published on June 25th last year. As of a week before publication Payton was at 333/456/533 (175 wRC+) over his first 158 pro PAs and he didn’t get a quick shout in the honorable mentions.

Still hasn’t made his way onto the board.

Jason BMember since 2017
1 year ago
Reply to  gallade3

My hovercraft is full of Eeles.

bubblesMember since 2024
1 year ago

I think I will take the over on Brooks Lee. He struggled in his first big league taste, but that is common for the average prospect (ie not Gunnar). He should play a good 2B defense and be serviceable with the bat with a little pop which will help him accumulate WAR.

Ivan_GrushenkoMember since 2016
1 year ago
Reply to  bubbles

Hopefully he’s more like Luis Arraez than Ed Crosby

Dodgers BlueMember since 2021
1 year ago
Reply to  bubbles

Boy I hope you are right!

sadtromboneMember since 2020
1 year ago

This team is slowly getting squeezed by ownership’s worries about money. It could be worse, I guess, but they’re stuck in the middle.

Let’s hope whoever the new owners are that they’re willing to pour some more money into the product.

cowdiscipleMember since 2016
1 year ago
Reply to  sadtrombone

This will be the second year where they’ve made no meaningful additions at all. The team is decent, but it’s frustrating.

sadtromboneMember since 2020
1 year ago
Reply to  cowdisciple

They’re not mandating spending cuts that would destroy the team, so that’s nice. Think they’re actually spending more in 2025 than they did in 2024. But they’re absolutely stuck in neutral. And with the team going up for sale it seems like it will stay that way.

They’re in a situation where if Royce Lewis somehow manages to stay healthy for a whole year they could flip him before he gets expensive in arbitration. Or that they’ll deal Willi Castro despite him not making a ton of money and him being a useful player for the last couple of years.

cowdiscipleMember since 2016
1 year ago
Reply to  sadtrombone

Willi Castro also getting a rough time from ZIPS here. -10 defensive runs? He’s been positive each of the last 4 years and he’s only 28.

sadtromboneMember since 2020
1 year ago
Reply to  cowdisciple

That is definitely due to his early work at shortstop (where he is almost certainly projected by ZiPS).

cowdiscipleMember since 2016
1 year ago
Reply to  sadtrombone

I guess I don’t understand the methodology or the defensive runs accounting.

It’s the worst defensive projection on the team, and also worse than anyone on the White Sox, Tigers, or Blue Jays. Is he being credited back somewhere else for being a “shortstop”? It doesn’t seem like it based on the projected WAR.

Last edited 1 year ago by cowdisciple
CosmoMember since 2020
1 year ago
Reply to  sadtrombone

Since Reinsdorf is intent on wasting the 3rd biggest market in the majors, what if the Twins and Bad Sox switched cities?

Cool Lester SmoothMember since 2020
1 year ago
Reply to  Cosmo

In fairness, the Sox are like 1/3 of the Chicago market on their best day.

docgooden85Member since 2018
1 year ago
Reply to  sadtrombone

I am enjoying imagining Carl Pohlad’s trust fund progeny freezing to death on a Minnesota street corner.

John WickMember since 2018
1 year ago

Based on team comments after the season, I think the best guess is that Royce Lewis will be playing at second, not third. Lotta puzzle pieces in the infield, between guys who can play multiple spots and guys who have higher injury risk.

Ivan_GrushenkoMember since 2016
1 year ago
Reply to  John Wick

His projection is much worse than I expected. But then Julien has to play 3B

I Like Big BuxtonMember since 2024
1 year ago
Reply to  Ivan_Grushenko

There is no way Julien plays 3B. It would be a combination of Lee, Castro, and Miranda.

Ivan_GrushenkoMember since 2016
1 year ago

That’s a pretty bad combination. Also someone has to play 1B unless they’re thinking outside the box

I Like Big BuxtonMember since 2024
1 year ago
Reply to  Ivan_Grushenko

I think Lee is better there than Lewis, whose arm is not great at 3B. Castro is fine, too. Miranda should be at 1B or DH much more than 3B. I expect Julien will get time at 1B, too, along with Gasper and maybe Mike Ford, depending on how things go.

cowdiscipleMember since 2016
1 year ago
Reply to  Ivan_Grushenko

Zips is really low on Lewis. It’s hard for me to see why. He’s never been able to play a healthy season, he’s going into his age 26 year. Shouldn’t we be expecting some improvement?

A lower wOBA projection than Mickey Gaspar, Luke Keaschall, and the medically retired Alex Kirilloff (as well as Julien and Jeffers) is pretty harsh.

Last edited 1 year ago by cowdisciple
EonADSMember since 2024
1 year ago
Reply to  cowdisciple

It’s because he can’t stay healthy. He’s projected for only 348 PA by Depth Charts, and I imagine ZiPS is much the same. That would still represent a career high, if only slightly.

I Like Big BuxtonMember since 2024
1 year ago
Reply to  EonADS

wOBP is a rate stat, though, and shouldn’t change with the playing time projection (ZiPS is at 384 PAs).

Ivan_GrushenkoMember since 2016
1 year ago

I can see projecting worse rate stats for a perpetually injured player but Lewis seems to be able to come off a 2 year IL stint and rake

cowdiscipleMember since 2016
1 year ago
Reply to  Ivan_Grushenko

Perpetually injured certainly describes Kirilloff, so I don’t think that’s what’s going on.

EonADSMember since 2024
1 year ago
Reply to  cowdisciple

It’s also probably a factor of the sub-.300 OBP he ran last season. His good numbers in ’23 were more due to BABIP luck than anything else. And while he underperformed in BABIP last year, that’s the largest MLB sample we have of him to date. ZiPS weighs recent production and MLB experience over minors numbers, and on-base production has never been Lewis’ strong point.

cowdiscipleMember since 2016
1 year ago
Reply to  EonADS

Sure, all those things are true. However, Lewis’s xWOBA last year was .320 (his worst year). His career xWOBA is .332, and he’s projected for .322 in his age 26 season? It just seems odd. It’s a quibble. Nothing between hurt all year and a 6 win season would really surprise me. The .337 projection out of Steamer and the .343 projection out of whatever OOPSY is more what I would’ve expected.

Last edited 1 year ago by cowdisciple
Ivan_GrushenkoMember since 2016
1 year ago

These pitching comps are great. Even Zack Weiss has Grandma Murphy.

RoyalsFan#14321Member since 2020
1 year ago

Bookending on my thoughts about the White Sox bullpen… the Twins’ could play them up and I could easily see them win >90 games as constructed.

They really should be in the mix for a trade for one year of Vlad Guerrero Jr.

Ivan_GrushenkoMember since 2016
1 year ago

Trade whom? Lee? It would likely be midseason

cm26Member since 2025
1 year ago

Is there a way to see projections (particularly 80/20 splits) for FAs whose new team’s article comes up out before they sign and whose old team’s article comes out after they sign?

Thinking of Kepler here. AFAIK, his projections aren’t listed neither here nor in the Phillies article.

Am I missing something?

Joey CaltrainMember since 2019
1 year ago

So unless I’m missing something, every (short) reliever in the Minnesota bullpen has an equal or better projected ERA+ than anyone in the White Sox bullpen… ouch

Last edited 1 year ago by Joey Caltrain
bigpizzamanMember since 2019
1 year ago

Discussed previously, but that Willi Castro defensive projection really stands out to me as a head scratcher

Dodgers BlueMember since 2021
1 year ago

I was a bit surprised to see Wallner rated as a plus defender – and even more so that Royce was graded as one of the team’s top defenders given all the conversations about his struggles at third and potential move to second. What have I missed?

docgooden85Member since 2018
1 year ago

What is OOPSY and why has it been posted with no explanation? Do you realize most of your fans like structure?

docgooden85Member since 2018
1 year ago

Pablo Lopez says 2.8 in the chart but 3.4 in the graphic. So which is it?

bigpizzamanMember since 2019
1 year ago
Reply to  docgooden85

The table shows ZIPS rates applied to ZIPS playing time projections whereas the graphic shows ZIPS rates applied to Fgraphs Depth Chart playing time projections