Archive for Teams

Chicago Cubs Top 38 Prospects

Cody Scanlan/The Register/USA TODAY NETWORK

Below is an analysis of the prospects in the farm system of the Chicago Cubs. Scouting reports were compiled with information provided by industry sources as well as our own observations. This is the fifth 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 »


Revisiting the Kirby Index

Tim Heitman-Imagn Images

Right after FanGraphs published my piece on the Kirby Index, the metric’s namesake lost his touch. George Kirby’s trademark command — so reliable that I felt comfortable naming a statistic after him — fell off a cliff. While the walk rate remained under control, the home run rate spiked; he allowed seven home runs in May, all on pitches where he missed his target by a significant margin.

Watching the namesake of my new metric turn mediocre immediately following publication was among the many humbling experiences of publishing this story. Nevertheless, I wanted to revisit the piece. For one, it’s December. And writing the story led me down a fascinating rabbit hole: While I learned that the Kirby Index has its flaws, I also learned a ton about contemporary efforts to quantify pitcher command.

But first, what is the Kirby Index? I found that release angles, in concert with release height and width, almost perfectly predicted the location of a pitch. If these two variables told you almost everything about the location of a pitch, then a measurement of their variation for individual pitchers could theoretically provide novel information about pitcher command.

This got a few people mad on Twitter, including baseball’s eminent physicist Alan Nathan and Greg Rybarczyk, the creator of the “Hit Tracker” and a former member of the Red Sox front office. These two — particularly Rybarczyk — took issue with my use of machine learning to make these predictions, arguing that my use of machine learning suggested I didn’t understand the actual mechanics of why a pitch goes where it goes.

“You’re spot on, Alan,” wrote Rybarczyk. “The amazement that trajectory and launch parameters are strongly associated with where the ball ends up can only come from people who see tracking data as columns of digits rather than measurements of reality that reflect the underlying physics.”

While the tone was a bit much, Rybarczyk had a point. My “amazement” would have been tempered with a more thorough understanding of how Statcast calculates the location where a pitch crosses home plate. After publication, I learned that the nine-parameter fit explains why pitch location could be so powerfully predicted by release angles.

The location of a pitch is derived from the initial velocity, initial release point, and initial acceleration of the pitch in three dimensions. (These are the nine parameters.) Release angles are calculated using initial velocity and initial release point. Because the location of the pitch and the release angle are both derived from the 9P fit, it makes sense that they’d be almost perfectly correlated.

This led to a reasonable critique: If release angles are location information in a different form, why not just apply the same technique of measuring variation on the pitch locations themselves? This is a fair question. But using locations would have undermined the conclusion of that Kirby Index piece — that biomechanical data like release angles could improve the precision of command measurements.

Teams, with their access to KinaTrax data, could create their own version of the Kirby Index, not with implied release angles derived from the nine-parameter fit, but with the position of wrists and arms captured at the moment of release. The Kirby Index piece wasn’t just about creating a new way to measure command; I wanted it to point toward one specific way that the new data revolution in baseball would unfold.

But enough about that. It’s time for the leaderboards. I removed all pitchers with fewer than 500 fastballs. Here are the top 20 in the Kirby Index for the 2024 season:

2024 Kirby Index Leaders
SOURCE: Baseball Savant
Minimum 500 fastballs thrown.

And here are the bottom 20:

2024 Kirby Index Laggards
SOURCE: Baseball Savant
Minimum 500 fastballs thrown.

A few takeaways for me: First, I am so grateful Kirby got it together and finished in the top three. Death, taxes, and George Kirby throwing fastballs where he wants. Second, the top and bottom of the leaderboards are satisfying. Cody Bradford throws 89 and lives off his elite command, and Joe Boyle — well, there’s a reason the A’s threw him in as a piece in the Jeffrey Springs trade despite his otherworldly stuff. Third, there are guys on the laggard list — Seth Lugo and Miles Mikolas, in particular — who look out of place.

Mikolas lingered around the bottom of the leaderboards all year, which I found curious. Mikolas, after all, averages just 93 mph on his four-seam fastball; one would imagine such a guy would need to have elite command to remain a viable major league starter, and that league-worst command effectively would be a death sentence. Confusing this further, Mikolas avoided walks better than almost anyone.

Why Mikolas ranked so poorly in the Kirby Index while walking so few hitters could probably be the subject of its own article, but for the purposes of this story, it’s probably enough to say that the Kirby Index misses some things.

An example: Mikolas ranked second among all pitchers in arm angle variation on four-seam fastballs, suggesting that Mikolas is intentionally altering his arm angle from pitch to pitch, likely depending on whether the hitter is left-handed or right-handed. This is just one reason why someone might rank low in the Kirby Index. Another, as I mentioned in the original article, is that a pitcher like Lugo might be aiming at so many different targets that it fools a metric like the Kirby Index.

So: The Kirby Index was a fun exercise, but there are some flaws. What are the alternatives to measuring pitcher command?

Location+

Location+ is the industry standard. The FanGraphs Sabermetric library (an incredible resource, it must be said) does a great job of describing that metric, so I’d encourage you to click this hyperlink for the full description. The short version: Run values are assigned to each location and each pitch type based on the count. Each pitch is graded on the stuff-neutral locations.

Implied location value

Nobody seems particularly satisfied with Location+, including the creators of Location+ themselves. Because each count state and each pitch type uses its own run value map to distribute run value grades, it takes a super long time for the statistic to stabilize, upward of hundreds of pitches. It also isn’t particularly sticky from year to year.

The newest version of Location+, which will debut sometime in the near future, will use a similar logic to PitchProfiler’s command model. Essentially, PitchProfiler calculates a Stuff+ and a Pitching+ for each pitcher, which are set on a run value scale. By subtracting the Stuff+ run value from the Pitching+ run value, the model backs into the value a pitcher gets from their command alone.

Blobs

Whether it’s measuring the standard deviation of release angle proxies or the actual locations of the pitches themselves, this method can be defined as the “blob” method, assessing the cluster tightness of the chosen variable.

Max Bay, now a senior quantitative analyst with the Dodgers, advanced the Kirby Index method by measuring release angle “confidence ellipses,” allowing for a more elegant unification of the vertical and horizontal release angle components.

Miss distance

The central concern with the Kirby Index and all the blob methods, as I stated at the time, is the single target assumption. Ideally, instead of looking at how closely all pitchers are clustered around a single point, each pitch would be evaluated based on how close it finished to the actual target.

But targets are hard to come by. SportsVision started tracking these targets in the mid-2010s, as Eno Sarris outlined in his piece on the state of command research in 2018. These days, Driveline Baseball measures this working alongside Inside Edge. Inside Edge deploys human beings to manually tag the target location for every single pitch. With these data in hand, Driveline can do a couple of things. First, they created a Command+ model, modifying the mean miss distances by accounting for the difficulty of the target and the shape of a pitch.

Using intended zone data, Driveline also shows pitchers where exactly they should aim to account for their miss tendencies. I’m told they will be producing this methodology in a public post soon.

Catcher Targets (Computer Vision)

In a perfect world, computers would replace human beings — wait, let me try that sentence again. It is expensive and time-intensive to manually track targets through video, and so for good reason, miss target data belong to those who are willing to pay the price. Computer vision techniques present the potential to produce the data cheaply and (therefore) democratically.

Carlos Marcano and Dylan Drummey introduced their BaseballCV project in September. (Drummey was hired by the Cubs shortly thereafter.) Joseph Dattoli, the director of player development at the University of Missouri, offered a contribution to the project by demonstrating how computer vision could be used to tag catcher targets. The only limitation, Joseph pointed out, is the computing power required to comb through video of every single pitch.

There are some potential problems with any command measurement dependent on target tracking. Targets aren’t always real targets, more like cues for the pitcher to throw toward that general direction. But Joseph gets around this concern by tracking the catcher’s glove as well as his center of mass, which is less susceptible to these sorts of dekes. Still, there’s a way to go before this method scales into a form where daily leaderboards are accessible.

The Powers method

Absent a raft of public information about actual pitcher targets, there instead can be an effort to simulate them. In their 2023 presentation, “Pitch trajectory density estimation for predicting future outcomes,” Rice professor Scott Powers and his co-author Vicente Iglesias proposed a method to account for the random variation in pitch trajectories, in the process offering a framework for simulating something like a target. (I will likely butcher his methods if I try to summarize them, so I’d encourage you to watch the full presentation if you’re interested.)

The Powers method was modified by Stephen Sutton-Brown at Baseball Prospectus, who used Blake Snell as an example of the way these targeting models can be applied at scale to assess individual pitchers. First, Sutton-Brown fit a model that created a global target for each pitch type, adjusting for the count and handedness of each batter. Then, for each pitcher, this global target was tweaked to account for that pitcher’s tendencies. Using these simulated targets, he calculated their average miss distance, allowing for a separation of the run value of a pitcher’s targets from the run value of their command ability.

“Nothing”

On Twitter, I asked Lance Brozdowski what he saw as the gold standard command metric. He answered “Nothing,” which sums up the problem well. This is a challenging question, and all the existing methods have their flaws.

There are ways that the Kirby Index could be improved, but as far as I can tell, the best way forward for public command metrics is some sort of combination of the final two methods, with active monitoring of the computer vision advancements to see if consistent targets can be established.

But one would imagine the story is completely different on the team side. By marrying the KinaTrax data with miss distance information, these methods could potentially be combined to make some sort of super metric, one that I imagine gets pretty close to measuring the true command ability of major league pitchers. (In a video from Wednesday, Brozdowski reported on some of the potential of these data for measuring and improving command, as well as their limitations.) The public might not be quite there, but as far as I can tell, we’re not that far off.

Editor’s Note: This story has been updated to include Vicente Iglesias as a co-author on the 2023 presentation, “Pitch trajectory density estimation for predicting future outcomes.”


Brooks Lee Embraces the Art of Hitting

Matt Krohn-USA TODAY Sports

Brooks Lee embraces the art of hitting. The son of longtime Cal Poly head baseball coach Larry Lee, the 23-year-old Minnesota Twins infielder approaches his craft diligently. Drafted eighth overall by the Twins in 2022 after putting up a healthy 1.073 OPS across three years in college — he played for his father — Lee logged a 148 wRC+ over 114 plate appearances with Triple-A St. Paul last season prior to receiving his July call-up. The start to the switch-hitter’s minor league season had been delayed by nearly two months due to a herniated disc, which was diagnosed in early April.

Assigned a 50 FV and a no. 3 ranking when our 2024 Minnesota Twins Top Prospect list came out last June, Lee slashed .221/.265/.320 with three home runs and a 62 wRC+ over 185 plate appearances in his initial opportunities against big league pitching. He sat down to talk hitting when the Twins visited Fenway Park in the penultimate weekend of the season.

———

David Laurila: How would you describe yourself as hitter? Moreover, how do you view yourself going forward?

Brooks Lee: “Ultimately, I want to evolve into a pure hitter and be able to hit all pitches in all zones. I want to hit for average. I think I can drive the ball, but most importantly, I want to get hits.”

Laurila: A lot of people will argue that batting average isn’t all that important. Why is it important to you?

Lee: “I’ve just always loved people that hit .300. As a switch-hitter, I want to be able to get on base at all times, from both sides of the plate. I really enjoy getting hits. That’s probably my favorite part of the game. For me, hitting over .300 is a benchmark. If you do that, everything kind of takes care of itself.”

Laurila: Being able to hit all pitches in all zones is an admirable trait, but at the same time, it can mean putting balls in play that you aren’t able to drive. You might be better off taking those pitches.

Lee: “Yes. That is something I’m learning, too. Sometimes you have strikes that aren’t necessarily good pitches to hit, even though they’re in the zone. For me, the pitch has to be elevated in order to drive it, because of the way my swing works, and the way I see the ball. So, when it’s up, then I go. Most likely, it’s a good pitch for me to hit.”

Laurila: How does your swing work, and does it differ from one side to the other? Read the rest of this entry »


2025 ZiPS Projections: Chicago Cubs

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 Chicago Cubs.

Batters

To get this out of the way, ZiPS absolutely adores Chicago’s lineup, from top to bottom and every which way around. ZiPS and the Cubs have been on the same page before — the projections for Shota Imanaga last winter had me proclaiming that his deal was the offseason’s best signing — but the projections haven’t been this high on the lineup since the team’s World Series contention days. Now, a lot of that is defense, with Nico Hoerner, Dansby Swanson, and Pete Crow-Armstrong each having elite defensive projections. But there’s a lot of bat in there as well, with six starters projected for a 100 OPS+ or better, and two of the three who aren’t — Swanson and PCA — bolstered by their aforementioned defense. Read the rest of this entry »


The Seiya Suzuki BABIP Polka

Kamil Krzaczynski-Imagn Images

Seiya Suzuki has been in the news as a trade candidate all offseason — partially because the Cubs can’t stop shipping outfielders in and out — and at the Winter Meetings, his agent, Joel Wolfe, sprinkled some enlightening details into a massive throng of onlooking reporters. Cubs president of baseball operations Jed Hoyer and Wolfe have had conversations about the 30-year-old outfielder’s future. The Cubs aren’t desperate to trade a player who hit .283/.366/.482 in 2024, but Suzuki apparently isn’t particularly keen on being a full-time DH, which is the most natural landing spot for him after the Cubs traded for Kyle Tucker.

If the Cubs were to trade Suzuki, they’d have to have a pretty good idea of how valuable he is. In fact, they would have to have a firm belief in Suzuki’s value, and a good idea of the rosiest possible picture they could sell to a potential trade partner, as well as the difference between those two numbers. Read the rest of this entry »


Job Posting: Los Angeles Angels – Full Time Analyst, Research and Development

Full Time Analyst, Research and Development

Overview:
The Los Angeles Angels are seeking an Analyst to join the Baseball Operations’ Research & Development team. This position will focus on analyzing baseball-related data and researching baseball topics to help inform decisions. The ideal candidate has a strong background of technical skills with an understanding of baseball research concepts and modern gameplay and development strategies.

This position is also benefit-eligible including: medical, dental and vision insurance, 401K eligibility; employee contributions after 3 months, employer matching and safe harbor after 1 year and 1000 hours of employment and additional perks not listed above. The expected salary for this position can range from $80,000-$90,000. Final offers for this role will be made within the parameters of the salary range provided. Years of experience, skills, and other factors are considered when determining the salary offered.

Responsibilities:

  • Assist in creating and improving models to help forecast various areas of baseball
  • Write code and implement systems that increase the efficiency of the Baseball Operations department
  • Perform ad-hoc research projects as requested and present results in a concise manner

Required Qualifications:

  • Intellectual curiosity and a desire to learn and grow as an analyst and member of a baseball operations team
  • Strong foundation in the application of statistical concepts to baseball data and the translation of data into actionable baseball recommendations
  • Ability to communicate concepts to individuals with diverse baseball backgrounds, including coaches, scouts and executives
  • Strong capabilities in R and/or Python
  • Familiarity with popular data science and visualization libraries such as tidyverse, pandas, scikit-learn, xgboost, and others
  • Proficiency in or clear ability to learn SQL
  • Ability to work flexible hours including evenings, weekends and holidays as dictated by the baseball calendar

Preferred Qualifications:

  • Demonstrable independent baseball research
  • Bachelor’s degree in Mathematics, Statistics, Computer Science, Economics or equivalent experience
  • Ability to relocate to Anaheim, CA strongly preferred

Physical Demands:

  • Ability to frequently sit for extended periods of time 
  • Ability to occasionally work in inclement weather (when in stadium)
  • Ability to traverse from office to stadium frequently
  • Ability to occasionally lift up to 20 lbs.

The above statements are intended to describe the general nature and level of work being performed by individuals assigned to this position. They are not intended to be an exhaustive list of all duties, responsibilities, and skills required of personnel so classified.

The Angels believe that diversity contributes to a more enriched collective perspective and a better decision-making process. All qualified applicants will receive consideration for employment without regard to race, color, religion, gender, gender identity or expression, sexual orientation, national origin, genetics, disability, age, or veteran status, or any other characteristic protected by law.

To Apply:
To apply, please follow this link.

The content in this posting was created and provided solely by the Los Angeles Angels.


JAWS and the 2025 Hall of Fame Ballot: Russell Martin

Peter G. Aiken-USA TODAY Sports

The following article is part of Jay Jaffe’s ongoing look at the candidates on the BBWAA 2025 Hall of Fame ballot. For a detailed introduction to this year’s ballot, and other candidates in the series, use the tool above; an introduction to JAWS can be found here. For a tentative schedule, and a chance to fill out a Hall of Fame ballot for our crowdsourcing project, see here. All WAR figures refer to the Baseball Reference version unless otherwise indicated.

Russell Martin was sneaky good. At the plate he combined a compact swing and mid-range power with strong on-base skills and (early in his career, at least) the ability to steal the occasional base. Behind the plate, he was exceptional. Shifted from third base after his first professional season, he took to the new position with the zeal of a convert. Martin combined outstanding athleticism — a strong arm, extraordinary lateral mobility, and elite pitch framing — with an intense competitive drive, an off-the-charts baseball IQ, and a natural leadership ability that was already apparent during his 2006 rookie season with the Dodgers.

The 23-year-old Martin’s arrival went a long way toward turning that squad around. In his first four seasons, he helped the Dodgers to three playoff appearances, including their first two trips to the National League Championship Series since their 1988 championship run. When the tight-fisted team nonsensically non-tendered him after an injury-wracked 2010 season, Los Angeles missed the playoffs in each of the next two years. Meanwhile, the nomadic Martin helped spur his subsequent teams — the Yankees (2011–12), Pirates (2013–14), and Blue Jays (2015–18) — to a total of six straight postseasons.

That wasn’t a coincidence. The general managers of those three teams (New York’s Brian Cashman, Pittsburgh’s Neal Huntington, and Toronto’s Alex Anthopoulos) all recognized that in addition to the softer factors that made Martin such a great catcher and leader, he was consistently among the game’s best at the newly quantifiable and highly valuable art of turning borderline pitches into strikes — an area that landed in the public spotlight with Mike Fast’s 2011 Baseball Prospectus article, “Removing the Mask.” Building on previous research by Dan Turkenkopf and others using PITCHf/x data, Fast showed that the difference between a good framer and a bad one could amount to something on the order of four wins per year, and identified Martin as having accrued more value via framing over the 2007–11 span (71 runs) than any backstop besides Jose Molina. Read the rest of this entry »


Tigers and Twins Winter Meetings Notes

Junfu Han, Kim Klement Neitzel, Junfu Han, and Matt Krohn via Imagn

The Detroit Tigers and the Minnesota Twins were two of the teams I focused on during last week’s Winter Meetings in Dallas. As such, I attended media sessions for the managers and top executives of both clubs, asking questions alongside reporters who cover the AL Central rivals on a regular basis. Here are some highlights from those exchanges.

———

Derek Falvey on Griffin Jax:

“That’s a good question,” Minnesota’s president of baseball operations said when asked about the possibility of Jax, who logged a 1.94 FIP over 71 innings out of the Twins’ bullpen, becoming a starter. “It’s a conversation we had during the season [and] it carried through to the offseason. It’s a two-way dialogue. Griff has expressed some interest in exploring the idea, but at the same time, he wants to think about what the right next steps are for him and his career. We remain in contact with his agent, and with Griffin, about that… It remains to be determined.” Read the rest of this entry »


Orioles Sign NPB Legend Tomoyuki Sugano To One-Year Pact

Robert Hanashiro-USA TODAY Sports

Hi, I’m Ben Clemens. You might know me from such articles as “C’mon, Orioles, Do Something”, “Why Are the Orioles’ Playoff Odds So Low?”, and “Wait, FanGraphs Is Too Low on the Orioles Again?!”. In my spare time, I also write about the rest of the league, but today I’m focusing on Baltimore yet again given their latest signing: The O’s and right-hander Tomoyuki Sugano have agreed to a one-year, $13 million contract.

Sugano has been one of the best pitchers in NPB for more than a decade. The 35-year-old won the Central League MVP in 2014, and he’s added two more MVP awards since then. He also won two Sawamura Awards – think the Cy Young, only for the entire league and with minimum criteria – neither in any of his three MVP seasons. In other words, he’s been racking up hardware like no one else for his entire career.

Reading a scouting report on Sugano is like chicken soup for my command-obsessed soul. If pitching was entirely about hitting a tiny target, Sugano might be the best pitcher in the world. Saying that he has the ball on a string would be offensive to Sugano; I can’t control a yo-yo as well as he can spot his five-pitch arsenal. He walked 16 of the 608 batters he faced last year, a 2.6% rate that would make George Kirby jealous.

It’s not just walk avoidance that sets Sugano apart from the crowd, though. He works the corners and tunnels his pitches off of each other to great effect. He can add or subtract from everything he throws, so his five-pitch mix can feel even deeper when a hitter is trying to figure out what’s coming next. He might not inspire the physical discomfort batters experience when facing triple-digit heat that could come right at their ribcage if the pitcher misses his location, but facing Sugano is like solving a Saturday crossword puzzle, if crossword puzzles threw splitters. Read the rest of this entry »


2025 ZiPS Projections: Boston Red Sox

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 Boston Red Sox.

Batters

I have mixed feelings about the Red Sox. As a baseball fan, it galls me to see Mookie Betts in another uniform, and their complacency these past few trade deadlines has been frustrating. Yes, it’s good that they extended Rafael Devers to a long-term deal, but more often than not their forays into free agency end up in the We Tried bin.

But at the same time, even though Boston isn’t throwing its weight around like most large-market teams, this is a highly competent organization that makes smart moves. The Red Sox have developed a significant number of players internally – and more are on the way – and they’ve put those players positions to succeed. I have to admit that Jarren Duran and Wilyer Abreu have become far better than I expected, and though the experiment of moving Ceddanne Rafaela back to shortstop in the majors didn’t really work out, his upside was worth the gamble.

If anything, the Red Sox now look a lot like a 2010s St. Louis Cardinals roster. Not a single player in the lineup is projected to be an MVP candidate – no, ZiPS is not that high on Duran – but by the same token, almost every player is projected to be average or better, with decent depth at most positions. Even at catcher, which is projected to be their worst position (now that they’ve traded Kyle Teel), the Red Sox should get an acceptable level of mediocrity.

ZiPS holds out hope for Rafaela being just good enough offensively for his glove to play, and his WAR projection is a full win higher in center field than it would be at shortstop. A Trevor Story revival would be nice, but ZiPS isn’t particularly taken with him these days, and David Hamilton actually has a similar projection. It’s not something they’d announce, but I suspect the Red Sox would be happy to see Marcelo Mayer seize the shortstop job soon. At second base, ZiPS thinks Kristian Campbell would be one of the most accomplished offensive players to debut in the majors in 2025. Campbell and Roman Anthony project to be Boston’s third- and fourth-best offensive players, respectively.

Pitchers

Naturally, ZiPS doesn’t expect Garrett Crochet to carry an ace’s workload, but if he throws only his projected 135 innings, he should still be the best member of Boston’s rotation, which also features Tanner Houck, Kutter Crawford, and Brayan Bello. That group looks like one of the better starting staffs in baseball, though it’s a tier below the elite rotations of the Phillies and Dodgers.

I’m higher than ZiPS on Crawford, but I think it’s right about Houck as a borderline ace and Bello as a solid no. 2 or 3 starter. ZiPS is a bit of concerned with how Lucas Giolito will perform coming back from internal brace surgery, but he and Richard Fitts both project as reasonable fifth starters. Quinn Priester and Garrett Whitlock also project to be decent fifth starters, but Whitlock is also returning from an internal brace procedure, and I expect the Red Sox will use him conservatively once he’s healthy. It seems likely that he’ll see more innings out of the bullpen than in the rotation next season.

The bullpen projects to be solid, though ZiPS doesn’t rank them quite as highly as Steamer does. There’s some natural skepticism about Michael Fulmer coming off injury, and ZiPS is down on Justin Wilson and Luis Guerrero. But after these players, the projections see pretty much everyone else as either good or very good — but not elite — even edge options like Zach Penrod or Priester.

Like those Cardinals teams, these Red Sox can’t do much upgrading unless they get a superstar to raise their ceiling. The big problem here is the Red Sox play in the AL East, not the NL Central. ZiPS projects them to finish with a win total in the mid-80s. That’d be good enough to contend for a playoff spot, but it probably won’t cut it if they want to win the division. Still, considering the Yankees are trying to figure out how to fill the Juan Soto-sized hole in their lineup and the Orioles could be without Corbin Burnes, the Red Sox have improved enough to make those two teams sweat at least a little bit.

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
Rafael Devers L 28 3B 625 551 88 148 34 3 30 95 64 136 3 1
Jarren Duran L 28 CF 637 580 89 152 38 10 18 78 48 144 26 5
Kristian Campbell R 23 2B 509 450 71 120 25 4 14 74 47 117 13 6
Roman Anthony L 21 CF 554 488 73 120 28 5 13 67 60 147 11 5
Wilyer Abreu L 26 RF 484 427 65 104 25 1 17 63 51 131 9 3
Ceddanne Rafaela R 24 CF 563 530 74 136 27 6 16 75 19 138 18 8
Masataka Yoshida L 31 DH 483 437 55 124 25 1 13 63 35 60 3 0
Vaughn Grissom R 24 2B 486 433 59 113 21 2 7 52 40 88 11 2
Triston Casas L 25 1B 416 357 51 88 18 1 19 58 55 111 0 0
David Hamilton L 27 SS 437 396 56 90 16 4 9 45 37 109 35 7
Trevor Story R 32 SS 318 286 37 65 17 1 9 38 26 92 12 3
Mickey Gasper B 29 1B 360 311 45 80 18 1 7 45 38 58 3 1
Romy Gonzalez R 28 2B 288 266 35 69 13 3 9 40 17 80 12 3
Jamie Westbrook R 30 3B 456 406 50 99 20 1 11 58 38 87 1 2
Rob Refsnyder R 34 LF 309 269 36 71 16 1 8 39 32 78 3 1
Marcelo Mayer L 22 SS 358 330 45 80 22 1 7 40 23 84 7 2
Nick Sogard B 27 SS 488 433 61 106 20 2 7 48 48 106 9 4
Nate Eaton R 28 3B 448 411 52 94 20 3 10 52 25 118 19 4
Connor Wong R 29 C 431 397 51 101 23 1 12 50 25 112 6 4
Carlos Narvaez R 26 C 392 342 40 74 16 0 8 40 41 116 4 1
Enmanuel Valdez L 26 2B 469 421 52 97 22 1 15 59 41 113 4 2
Dalton Guthrie R 29 CF 323 295 34 75 15 1 4 33 20 75 9 4
Jhostynxon Garcia R 22 CF 450 415 57 95 19 5 13 60 25 120 6 4
Mikey Romero L 21 SS 380 360 47 84 21 4 12 53 14 100 0 0
Elih Marrero B 28 C 224 202 24 44 10 0 3 22 18 61 7 3
Bobby Dalbec R 30 1B 466 419 54 90 16 2 16 58 39 183 8 1
Mark Contreras L 30 CF 396 356 46 76 18 3 6 43 31 123 15 4
Drew Ehrhard R 26 1B 92 83 12 20 5 1 4 15 6 24 0 1
Reese McGuire L 30 C 236 215 19 48 10 1 3 21 15 58 2 0
Seby Zavala R 31 C 260 231 26 46 12 0 6 29 21 96 0 1
Allan Castro B 22 CF 543 485 58 107 23 4 9 54 50 138 8 4
Caden Rose R 23 LF 150 137 21 28 6 2 3 18 8 53 1 1
Mark Kolozsvary R 29 C 138 121 15 21 5 0 3 16 10 50 1 0
Justin Riemer R 23 SS 173 147 20 30 4 1 0 15 19 36 4 0
Max Ferguson L 25 3B 382 338 44 63 11 3 4 30 39 121 14 2
Alex Binelas L 25 1B 400 362 44 76 16 3 11 44 33 128 7 1
Blaze Jordan R 22 3B 452 427 39 105 24 1 8 50 18 66 1 1
Nathan Hickey L 25 DH 447 388 50 79 22 1 11 48 52 144 2 1
Corey Rosier L 25 LF 395 357 46 80 14 4 4 36 30 96 19 4
Juan Montero R 23 C 161 141 13 26 8 1 1 16 12 54 1 1
Phillip Sikes R 26 RF 440 398 51 82 21 2 8 47 31 149 15 5
Zach Ehrhard R 22 RF 96 86 8 12 2 0 0 5 8 30 2 1
Nelly Taylor L 22 CF 500 455 57 90 23 4 8 47 41 157 15 6
Fraymi De Leon B 20 2B 269 242 30 45 6 1 1 21 20 88 11 4
Ronald Rosario R 22 C 418 387 39 85 19 2 5 39 25 105 1 1
Miguel Bleis R 21 CF 416 384 44 76 12 2 8 41 24 110 18 7
Ahbram Liendo B 21 3B 420 379 37 69 9 3 3 28 35 174 17 5
Karson Simas R 24 3B 253 232 27 45 7 1 1 20 14 87 6 2
Tyler McDonough B 26 2B 451 416 46 90 18 4 5 39 30 146 11 5
Nick Decker L 25 RF 248 225 27 39 11 1 5 23 19 112 4 1
Luis Ravelo B 21 SS 433 396 34 79 14 2 4 34 30 124 1 2
Enderso Lira R 21 C 186 178 13 31 4 0 1 10 6 56 1 0
Andy Lugo R 21 LF 441 412 39 91 22 2 3 43 20 116 13 3
Tyler Miller L 25 1B 406 378 40 82 16 2 6 39 20 106 5 2
Juan Chacon R 22 LF 328 305 28 57 13 4 1 23 19 116 6 3

Batters – Advanced
Player PA BA OBP SLG OPS+ ISO BABIP Def WAR wOBA 3YOPS+ RC
Rafael Devers 625 .269 .349 .505 132 .236 .307 -6 3.8 .359 127 98
Jarren Duran 637 .262 .324 .455 112 .193 .321 2 3.7 .335 111 93
Kristian Campbell 509 .267 .350 .433 115 .167 .332 -4 2.5 .342 115 73
Roman Anthony 554 .246 .330 .404 101 .158 .326 1 2.3 .321 107 69
Wilyer Abreu 484 .244 .326 .427 106 .183 .312 8 2.2 .328 107 63
Ceddanne Rafaela 563 .256 .290 .420 93 .164 .319 6 2.1 .305 97 72
Masataka Yoshida 483 .284 .346 .435 114 .151 .305 0 1.6 .339 110 66
Vaughn Grissom 486 .261 .336 .367 94 .106 .313 -1 1.6 .312 95 57
Triston Casas 416 .246 .349 .462 121 .215 .304 -2 1.5 .349 123 58
David Hamilton 437 .227 .296 .356 79 .129 .292 2 1.5 .288 81 52
Trevor Story 318 .227 .299 .388 88 .161 .303 3 1.3 .298 87 37
Mickey Gasper 360 .258 .353 .390 105 .132 .297 3 1.2 .330 104 44
Romy Gonzalez 288 .259 .306 .432 101 .173 .339 1 1.2 .318 97 39
Jamie Westbrook 456 .244 .318 .379 92 .136 .286 0 1.1 .307 90 50
Rob Refsnyder 309 .264 .353 .421 113 .156 .345 -1 1.1 .339 104 41
Marcelo Mayer 358 .242 .293 .379 84 .136 .305 2 1.0 .292 88 39
Nick Sogard 488 .245 .322 .349 86 .104 .310 -4 0.9 .298 86 52
Nate Eaton 448 .229 .278 .365 76 .136 .297 5 0.9 .280 76 47
Connor Wong 431 .254 .307 .408 95 .154 .326 -9 0.9 .311 93 53
Carlos Narvaez 392 .216 .309 .333 77 .117 .302 0 0.9 .287 80 37
Enmanuel Valdez 469 .230 .299 .394 89 .164 .280 -3 0.9 .302 93 51
Dalton Guthrie 323 .254 .314 .352 84 .098 .328 1 0.8 .296 80 36
Jhostynxon Garcia 450 .229 .284 .393 84 .164 .291 1 0.7 .293 93 49
Mikey Romero 380 .233 .266 .414 84 .181 .290 -1 0.7 .289 90 40
Elih Marrero 224 .218 .287 .312 65 .094 .297 4 0.6 .268 67 21
Bobby Dalbec 466 .215 .288 .377 82 .162 .336 6 0.5 .292 81 47
Mark Contreras 396 .213 .288 .331 71 .118 .308 2 0.4 .276 71 39
Drew Ehrhard 92 .241 .315 .470 113 .229 .291 1 0.4 .338 109 13
Reese McGuire 236 .224 .278 .322 65 .098 .293 2 0.4 .265 64 20
Seby Zavala 260 .199 .275 .329 66 .130 .310 1 0.3 .269 64 21
Allan Castro 543 .221 .298 .340 76 .120 .290 -2 0.2 .283 80 53
Caden Rose 150 .204 .273 .343 69 .139 .309 2 -0.1 .273 71 14
Mark Kolozsvary 138 .173 .269 .288 54 .115 .263 0 -0.1 .255 56 10
Justin Riemer 173 .204 .318 .245 59 .041 .270 -2 -0.1 .267 65 12
Max Ferguson 382 .186 .273 .272 52 .086 .277 5 -0.1 .249 57 29
Alex Binelas 400 .210 .278 .362 75 .152 .291 4 -0.1 .280 78 38
Blaze Jordan 452 .246 .281 .363 76 .117 .275 -4 -0.2 .280 80 44
Nathan Hickey 447 .204 .302 .350 80 .147 .292 0 -0.3 .291 83 42
Corey Rosier 395 .224 .290 .319 68 .095 .296 2 -0.3 .271 70 39
Juan Montero 161 .184 .273 .276 52 .092 .289 -2 -0.3 .251 55 11
Phillip Sikes 440 .206 .275 .329 66 .123 .307 4 -0.4 .268 71 41
Zach Ehrhard 96 .140 .219 .163 8 .023 .214 2 -0.7 .183 16 4
Nelly Taylor 500 .198 .266 .319 61 .121 .283 -3 -0.8 .259 68 44
Fraymi De Leon 269 .186 .264 .231 39 .045 .287 0 -0.9 .230 44 19
Ronald Rosario 418 .220 .270 .318 62 .098 .289 -8 -0.9 .260 67 34
Miguel Bleis 416 .198 .252 .302 52 .104 .255 -1 -0.9 .246 63 36
Ahbram Liendo 420 .182 .258 .245 40 .063 .327 4 -1.0 .231 45 29
Karson Simas 253 .194 .254 .245 39 .052 .305 -1 -1.0 .228 45 16
Tyler McDonough 451 .216 .271 .315 61 .098 .320 -5 -1.0 .259 64 40
Nick Decker 248 .173 .246 .297 49 .124 .314 0 -1.0 .243 53 18
Luis Ravelo 433 .199 .261 .275 48 .076 .280 -4 -1.3 .241 52 29
Enderso Lira 186 .174 .199 .213 14 .039 .247 -2 -1.4 .183 21 8
Andy Lugo 441 .221 .272 .306 59 .085 .300 -2 -1.4 .258 64 38
Tyler Miller 406 .217 .261 .317 59 .100 .285 0 -1.4 .255 64 33
Juan Chacon 328 .187 .241 .266 40 .079 .298 2 -1.6 .227 44 22

Batters – Top Near-Age Offensive Comps
Player Hit Comp 1 Hit Comp 2 Hit Comp 3
Rafael Devers Josh Donaldson Robin Ventura Dave Hollins
Jarren Duran Paul Blair Kevin Kiermaier Bill White
Kristian Campbell Gavin Lux Bump Wills Dilson Herrera
Roman Anthony Derek Lee Rich Becker Bernie Williams
Wilyer Abreu George Grantham Ian Happ Travis Snider
Ceddanne Rafaela Corey Patterson Peter Bourjos Glenn Burke
Masataka Yoshida Casey Kotchman Sean Casey Don Mattingly
Vaughn Grissom Mark Wasinger Jeff Frye Harry Shaughnessy
Triston Casas Randy Bass Matt Olson Boog Powell
David Hamilton Mike Brumley Jimmy Sexton Andy Fox
Trevor Story Pat Kelly Bill Almon Niko Goodrum
Mickey Gasper Dave Bergman Dion James Jon Zuber
Romy Gonzalez Rex Hudler Arismendy Alcántara Mariano Duncan
Jamie Westbrook Jose Castro Brad Seitzer Dave Cripe
Rob Refsnyder Billy McMillon Brian Myrow James Keating
Marcelo Mayer Felix Mantilla Art Cleary Matt Williams
Nick Sogard Eddy Alvarez Bud Harrelson Ben Zobrist
Nate Eaton Randy Kutcher Chris Owings Chris Basak
Connor Wong Roland LeBlanc Craig Stimac Rollie Hemsley
Carlos Narvaez B.J. Waszgis Danny Ardoin Dick Rand
Enmanuel Valdez Rico Petrocelli Jay Canizaro Jim Gantner
Dalton Guthrie Keith Miller Rick Colzie Don Landrum
Jhostynxon Garcia Nigel Wilson Raul Mondesi Jeff Fiorentino
Mikey Romero Dave Baker Luis Gonzalez Davey Johnson
Elih Marrero Chris O’Dowd Brian Peacock Scott Hemond
Bobby Dalbec Johnny Scruggs Pat Keedy Jacques Landry
Mark Contreras Colin Porter Randle Granger Nic Jackson
Drew Ehrhard Zach Walters Tom Grieve Tony Perez
Reese McGuire Bryan Holaday Mike Knapp Mike Mahoney
Seby Zavala Jayhawk Owens Mike Rose Marc Sullivan
Allan Castro Karl Rhodes Rabbit Henry Jimmy Harris
Caden Rose Angel Fermin Herman Gordon Nelson De Los Santos
Mark Kolozsvary Jeff Hearron Gary Tremblay Jared Price
Justin Riemer Jake Thrower Elbert Devarie Conner Crumbliss
Max Ferguson John Taylor Thomas Coyle Carlos Rosario
Alex Binelas Jack Daniels Edward Gilliam Reggie Whittemore
Blaze Jordan Gio Urshela Keith Moreland Blas Santana
Nathan Hickey Matt Skole Vernon Ramie Mike Papi
Corey Rosier Steve Murphy Ryan Rogowski Carl Loadenthal
Juan Montero Sammy Rodriguez Juan Espino Michael Criscione
Phillip Sikes Mycal Jones Mark Davis Corey Ray
Zach Ehrhard Jordan Barnes Trent Baker Ronald Perodin
Nelly Taylor Chris Grayson Bob Daggy James Ramsay
Fraymi De Leon Julio Cruz Michael Ross Gregory Munoz
Ronald Rosario Ernest Cooper Dalton Renfroe Mike Michaels
Miguel Bleis Delta Cleary Phil Wilson Tim Morrow
Ahbram Liendo Yuri Sanchez Chris Amador Erick Mejias
Karson Simas Tom Arvelo Taylor Smart Mike Farrell
Tyler McDonough Todd Hankins Christian Lara Jose Castro
Nick Decker Jacob Julius Raymond Goirigolzarri Ron Sorey
Luis Ravelo Josh Shaffer Jack Heidemann Anselmo Martinez
Enderso Lira Raymond Lombardo Drew McMillan Samuel Miranda
Andy Lugo Jhonny Santos Cory Pearson Aaron Altherr
Tyler Miller David Wood Allen Herring A.J. Van Slyke
Juan Chacon Todd Hankins Malique Ziegler Max Mejia

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
Rafael Devers .294 .375 .568 155 5.5 .246 .326 .453 115 2.4
Jarren Duran .289 .349 .507 131 5.3 .237 .299 .401 91 2.1
Kristian Campbell .293 .379 .494 135 3.9 .239 .322 .386 96 1.3
Roman Anthony .275 .359 .456 121 3.6 .222 .303 .350 83 1.0
Wilyer Abreu .268 .352 .489 127 3.4 .217 .305 .382 90 1.3
Ceddanne Rafaela .281 .317 .475 112 3.5 .231 .266 .373 74 0.7
Masataka Yoshida .310 .375 .483 133 2.9 .252 .318 .381 93 0.4
Vaughn Grissom .290 .361 .415 112 2.8 .232 .308 .319 76 0.6
Triston Casas .275 .378 .517 145 2.7 .223 .323 .402 103 0.6
David Hamilton .257 .324 .410 101 2.7 .202 .268 .311 63 0.4
Trevor Story .257 .324 .442 109 2.1 .198 .271 .333 67 0.5
Mickey Gasper .284 .376 .436 124 2.0 .230 .325 .347 87 0.4
Romy Gonzalez .289 .334 .483 120 1.9 .235 .281 .377 81 0.5
Jamie Westbrook .271 .344 .420 109 2.1 .216 .289 .336 73 0.1
Rob Refsnyder .294 .385 .479 135 1.9 .234 .326 .378 93 0.3
Marcelo Mayer .269 .322 .431 105 1.9 .217 .267 .335 67 0.2
Nick Sogard .269 .345 .391 101 1.9 .215 .291 .305 66 -0.2
Nate Eaton .258 .310 .423 99 2.2 .202 .251 .321 58 -0.1
Connor Wong .281 .337 .455 115 1.9 .223 .277 .354 75 -0.2
Carlos Narvaez .245 .338 .383 96 1.8 .186 .280 .286 57 -0.2
Enmanuel Valdez .256 .323 .440 106 1.8 .206 .276 .346 70 -0.3
Dalton Guthrie .280 .345 .398 102 1.5 .225 .287 .306 63 -0.1
Jhostynxon Garcia .257 .312 .440 102 1.8 .204 .260 .342 67 -0.2
Mikey Romero .264 .296 .469 105 1.7 .208 .240 .358 63 -0.3
Elih Marrero .248 .321 .355 85 1.1 .187 .258 .269 45 -0.1
Bobby Dalbec .241 .316 .439 104 1.8 .183 .257 .317 60 -0.8
Mark Contreras .242 .319 .384 93 1.4 .186 .255 .289 51 -0.7
Drew Ehrhard .270 .342 .538 137 0.6 .211 .291 .406 89 0.1
Reese McGuire .260 .312 .367 87 1.1 .195 .251 .282 47 -0.2
Seby Zavala .230 .310 .391 88 1.0 .167 .244 .274 43 -0.5
Allan Castro .247 .324 .393 95 1.5 .195 .271 .293 56 -1.1
Caden Rose .239 .305 .403 94 0.4 .175 .243 .286 47 -0.4
Mark Kolozsvary .205 .300 .350 75 0.3 .149 .236 .242 35 -0.4
Justin Riemer .235 .346 .290 79 0.3 .175 .293 .212 44 -0.4
Max Ferguson .214 .301 .317 71 0.8 .161 .248 .233 36 -0.8
Alex Binelas .239 .308 .412 95 0.9 .183 .248 .307 54 -1.2
Blaze Jordan .276 .310 .413 98 1.0 .219 .256 .321 60 -1.1
Nathan Hickey .231 .330 .395 97 0.8 .180 .276 .303 62 -1.2
Corey Rosier .253 .321 .370 87 0.7 .200 .263 .284 50 -1.2
Juan Montero .219 .309 .325 74 0.1 .154 .244 .230 32 -0.7
Phillip Sikes .234 .302 .377 86 0.7 .179 .249 .285 49 -1.3
Zach Ehrhard .168 .246 .198 23 -0.5 .114 .190 .134 -7 -0.9
Nelly Taylor .224 .295 .370 79 0.4 .173 .242 .281 44 -1.9
Fraymi De Leon .211 .292 .268 56 -0.3 .155 .235 .195 20 -1.5
Ronald Rosario .256 .304 .378 86 0.4 .186 .237 .274 41 -2.0
Miguel Bleis .228 .280 .348 70 0.0 .172 .226 .259 34 -1.9
Ahbram Liendo .210 .288 .290 57 0.0 .154 .229 .207 22 -2.0
Karson Simas .225 .285 .285 57 -0.4 .168 .228 .209 22 -1.5
Tyler McDonough .246 .296 .357 80 0.0 .191 .245 .272 43 -2.0
Nick Decker .207 .279 .345 71 -0.3 .146 .217 .242 28 -1.6
Luis Ravelo .226 .289 .317 67 -0.3 .173 .234 .233 30 -2.3
Enderso Lira .211 .235 .258 36 -0.8 .142 .169 .180 -4 -1.8
Andy Lugo .252 .301 .343 78 -0.4 .192 .245 .268 41 -2.5
Tyler Miller .246 .288 .359 75 -0.5 .193 .237 .275 42 -2.2
Juan Chacon .218 .269 .311 60 -0.8 .162 .214 .228 24 -2.3

Batters – Platoon Splits
Player BA vs. L OBP vs. L SLG vs. L BA vs. R OBP vs. R SLG vs. R
Rafael Devers .257 .330 .450 .274 .357 .529
Jarren Duran .251 .315 .425 .267 .328 .469
Kristian Campbell .274 .359 .437 .263 .346 .432
Roman Anthony .240 .319 .384 .248 .334 .410
Wilyer Abreu .233 .309 .376 .248 .334 .449
Ceddanne Rafaela .257 .292 .446 .256 .290 .408
Masataka Yoshida .267 .331 .392 .290 .351 .451
Vaughn Grissom .264 .339 .380 .259 .334 .359
Triston Casas .234 .333 .414 .252 .355 .484
David Hamilton .220 .284 .317 .231 .301 .374
Trevor Story .244 .315 .415 .221 .292 .377
Mickey Gasper .255 .345 .378 .258 .356 .394
Romy Gonzalez .268 .325 .446 .253 .291 .422
Jamie Westbrook .252 .324 .384 .239 .315 .376
Rob Refsnyder .282 .380 .453 .250 .331 .395
Marcelo Mayer .232 .282 .358 .247 .298 .387
Nick Sogard .252 .327 .374 .241 .320 .336
Nate Eaton .234 .287 .379 .226 .273 .357
Connor Wong .255 .312 .426 .254 .305 .398
Carlos Narvaez .219 .318 .342 .215 .304 .329
Enmanuel Valdez .220 .284 .348 .236 .307 .418
Dalton Guthrie .258 .321 .383 .251 .311 .331
Jhostynxon Garcia .233 .295 .417 .227 .280 .383
Mikey Romero .213 .242 .383 .241 .274 .425
Elih Marrero .221 .293 .309 .216 .284 .313
Bobby Dalbec .226 .302 .391 .210 .281 .371
Mark Contreras .203 .275 .313 .219 .295 .342
Drew Ehrhard .250 .323 .429 .236 .311 .491
Reese McGuire .208 .259 .302 .228 .284 .327
Seby Zavala .200 .286 .338 .199 .269 .325
Allan Castro .226 .293 .331 .219 .301 .344
Caden Rose .200 .265 .356 .207 .277 .337
Mark Kolozsvary .174 .269 .283 .173 .271 .293
Justin Riemer .204 .316 .224 .204 .319 .255
Max Ferguson .187 .267 .262 .186 .276 .277
Alex Binelas .202 .266 .323 .213 .283 .376
Blaze Jordan .262 .297 .392 .239 .274 .350
Nathan Hickey .190 .277 .295 .208 .311 .371
Corey Rosier .210 .276 .286 .230 .295 .333
Juan Montero .200 .294 .267 .177 .264 .281
Phillip Sikes .223 .296 .380 .199 .266 .307
Zach Ehrhard .143 .226 .179 .138 .215 .155
Nelly Taylor .188 .250 .299 .201 .272 .325
Fraymi De Leon .192 .272 .219 .183 .261 .237
Ronald Rosario .234 .289 .360 .214 .263 .301
Miguel Bleis .205 .260 .333 .195 .249 .288
Ahbram Liendo .191 .264 .264 .178 .255 .238
Karson Simas .200 .259 .227 .191 .251 .255
Tyler McDonough .216 .274 .328 .216 .270 .309
Nick Decker .167 .236 .258 .176 .250 .314
Luis Ravelo .193 .250 .272 .202 .265 .277
Enderso Lira .175 .200 .193 .174 .198 .223
Andy Lugo .227 .277 .320 .218 .270 .299
Tyler Miller .200 .248 .267 .223 .267 .337
Juan Chacon .189 .252 .253 .186 .236 .271

Pitchers – Standard
Player T Age W L ERA G GS IP H ER HR BB SO
Garrett Crochet L 26 12 6 2.93 29 29 135.0 113 44 11 43 169
Tanner Houck R 29 10 7 3.82 29 27 155.7 144 66 14 47 141
Brayan Bello R 26 11 11 4.10 29 28 153.7 150 70 15 56 142
Nick Pivetta R 32 9 8 4.20 27 23 133.0 120 62 22 42 144
Kutter Crawford R 29 10 10 4.39 29 26 147.7 139 72 23 41 139
Garrett Whitlock R 29 4 4 3.62 25 11 74.7 70 30 9 17 74
Lucas Giolito R 30 7 8 4.41 22 22 122.3 119 60 18 43 124
Josh Winckowski R 27 6 5 4.04 42 12 104.7 107 47 11 33 86
Quinn Priester R 24 7 8 4.39 26 23 119.0 121 58 13 40 95
Richard Fitts R 25 7 7 4.49 25 25 126.3 133 63 17 35 92
Cooper Criswell R 28 6 6 4.53 27 19 107.3 113 54 12 29 79
Aroldis Chapman L 37 5 3 3.33 56 0 51.3 37 19 5 30 79
Hunter Dobbins R 25 5 7 4.68 22 22 105.7 112 55 14 36 77
Connelly Early L 23 5 7 4.75 24 24 102.3 100 54 13 40 90
Blake Wehunt R 24 5 5 4.74 23 23 93.0 96 49 12 34 73
Brian Van Belle R 28 5 6 4.71 25 14 99.3 110 52 14 27 69
Chris Martin R 39 3 1 3.24 44 0 41.7 42 15 4 7 39
Justin Slaten R 27 4 4 3.95 38 3 54.7 52 24 7 20 58
Kenley Jansen R 37 3 3 3.72 49 0 48.3 42 20 6 18 53
Chris Murphy L 27 4 5 4.73 22 12 83.7 85 44 10 37 69
Isaac Coffey R 25 6 8 4.95 22 19 103.7 102 57 16 38 91
David Sandlin R 24 3 3 4.75 21 21 72.0 76 38 13 22 65
James Paxton L 36 5 8 4.98 20 20 94.0 101 52 14 44 79
Shane Drohan L 26 5 7 4.88 22 19 90.3 93 49 12 46 74
Zach Penrod L 28 5 5 4.52 28 11 61.7 58 31 8 31 63
Brennan Bernardino L 33 3 2 4.10 52 3 48.3 45 22 5 19 48
Greg Weissert R 30 3 3 3.88 57 0 60.3 57 26 6 23 59
Grant Gambrell R 27 5 6 5.00 18 17 86.3 95 48 13 31 58
Luis García R 38 3 2 3.86 52 0 49.0 51 21 4 16 43
Brad Keller R 29 5 8 4.99 27 15 95.7 104 53 13 44 73
Rich Hill L 45 6 10 5.24 26 23 120.3 130 70 21 42 97
Luis Perales R 22 4 5 5.09 19 19 76.0 76 43 12 36 69
Liam Hendriks R 36 3 3 4.06 41 0 37.7 35 17 6 13 44
Chase Shugart R 28 4 4 4.61 37 6 70.3 74 36 9 26 54
Bryan Mata R 26 2 4 4.89 18 14 53.3 53 29 6 29 45
Chih-Jung Liu R 26 4 6 5.11 18 16 75.7 78 43 12 36 67
Andrew Politi R 29 4 4 4.56 35 4 49.3 50 25 6 21 42
Zack Kelly R 30 4 4 4.45 51 2 56.7 50 28 7 29 60
Vladimir Gutierrez R 29 3 5 5.14 14 11 61.3 63 35 9 30 46
Juan Daniel Encarnacion R 24 4 7 5.27 21 18 82.0 89 48 13 31 58
Isaiah Campbell R 27 3 2 4.32 30 1 33.3 34 16 5 11 30
Michael Fulmer R 32 2 2 4.46 43 0 38.3 36 19 4 18 38
Joely Rodríguez L 33 2 1 4.30 30 0 29.3 31 14 3 11 26
Luis Guerrero R 24 4 4 4.40 49 0 59.3 53 29 7 30 61
Justin Wilson L 37 2 2 4.46 45 0 34.3 37 17 5 12 35
Cam Booser L 33 3 4 4.44 43 0 46.7 47 23 7 20 46
Lucas Sims R 31 3 4 4.56 56 0 49.3 41 25 6 28 51
Jack Anderson R 25 2 3 4.89 34 1 57.0 65 31 9 15 38
Reidis Sena R 24 4 5 4.89 31 1 49.7 50 27 7 27 45
Caleb Bolden R 26 2 3 5.29 31 8 63.0 65 37 9 32 51
Zach Bryant R 27 2 3 5.23 24 2 32.7 34 19 5 17 26
Hobie Harris R 32 3 5 4.88 39 0 48.0 51 26 6 23 37
Christopher Troye R 26 2 2 4.93 30 0 42.0 39 23 5 27 43
Theo Denlinger R 28 2 4 4.95 26 0 40.0 42 22 5 18 31
Sal Romano R 31 1 1 5.28 20 0 29.0 34 17 4 12 18
Naoyuki Uwasawa R 31 3 5 5.46 20 5 56.0 62 34 9 24 39
Jacob R. Webb R 26 4 7 5.30 38 5 69.7 75 41 10 34 50
Melvin Adón R 31 2 4 5.45 26 0 34.7 36 21 5 21 30
Alex Hoppe R 26 3 5 5.04 35 0 60.7 66 34 8 28 45
Brendan Cellucci L 27 3 5 5.30 35 1 54.3 53 32 7 36 51
Helcris Olivarez L 24 2 3 6.04 17 11 50.7 50 34 7 40 46
Jonathan Brand R 25 2 3 5.22 32 0 50.0 54 29 8 20 37
Wyatt Olds R 25 3 5 5.60 34 6 72.3 69 45 9 45 65
Cody Scroggins R 28 1 2 5.87 23 0 30.7 34 20 5 17 21
Felix Cepeda R 24 1 3 5.53 28 0 42.3 44 26 6 26 32

Pitchers – Advanced
Player IP K/9 BB/9 HR/9 BB% K% BABIP ERA+ 3ERA+ FIP ERA- WAR
Garrett Crochet 135.0 11.3 2.9 0.7 7.7% 30.2% .309 143 138 2.76 70 3.5
Tanner Houck 155.7 8.2 2.7 0.8 7.2% 21.7% .292 110 107 3.69 91 2.7
Brayan Bello 153.7 8.3 3.3 0.9 8.5% 21.5% .305 102 103 3.81 98 2.2
Nick Pivetta 133.0 9.7 2.8 1.5 7.5% 25.8% .285 100 96 4.18 100 1.7
Kutter Crawford 147.7 8.5 2.5 1.4 6.6% 22.5% .283 96 95 4.28 105 1.6
Garrett Whitlock 74.7 8.9 2.0 1.1 5.5% 24.0% .296 116 116 3.53 86 1.4
Lucas Giolito 122.3 9.1 3.2 1.3 8.2% 23.6% .301 95 94 4.22 105 1.4
Josh Winckowski 104.7 7.4 2.8 0.9 7.4% 19.2% .304 104 104 3.96 96 1.3
Quinn Priester 119.0 7.2 3.0 1.0 7.7% 18.4% .299 96 99 4.16 105 1.3
Richard Fitts 126.3 6.6 2.5 1.2 6.5% 17.0% .295 93 97 4.40 107 1.3
Cooper Criswell 107.3 6.6 2.4 1.0 6.3% 17.2% .301 93 94 4.28 108 1.0
Aroldis Chapman 51.3 13.9 5.3 0.9 13.4% 35.3% .308 126 110 3.24 79 0.9
Hunter Dobbins 105.7 6.6 3.1 1.2 7.8% 16.6% .297 90 92 4.64 112 0.9
Connelly Early 102.3 7.9 3.5 1.1 9.0% 20.2% .293 88 92 4.65 113 0.8
Blake Wehunt 93.0 7.1 3.3 1.2 8.3% 17.9% .297 88 94 4.51 113 0.8
Brian Van Belle 99.3 6.3 2.4 1.3 6.3% 16.0% .303 89 90 4.53 112 0.7
Chris Martin 41.7 8.4 1.5 0.9 4.0% 22.5% .314 129 120 3.20 77 0.7
Justin Slaten 54.7 9.5 3.3 1.2 8.5% 24.6% .306 106 108 3.87 94 0.6
Kenley Jansen 48.3 9.9 3.4 1.1 8.8% 26.0% .288 113 99 3.78 89 0.6
Chris Murphy 83.7 7.4 4.0 1.1 10.0% 18.7% .299 89 91 4.59 113 0.6
Isaac Coffey 103.7 7.9 3.3 1.4 8.5% 20.4% .288 85 88 5.02 118 0.5
David Sandlin 72.0 8.1 2.8 1.6 7.1% 21.0% .301 88 94 4.68 113 0.5
James Paxton 94.0 7.6 4.2 1.3 10.4% 18.6% .307 84 77 4.87 119 0.5
Shane Drohan 90.3 7.4 4.6 1.2 11.3% 18.1% .299 86 89 4.93 116 0.5
Zach Penrod 61.7 9.2 4.5 1.2 11.4% 23.1% .298 93 94 4.52 108 0.5
Brennan Bernardino 48.3 8.9 3.5 0.9 9.0% 22.9% .299 102 98 4.09 98 0.5
Greg Weissert 60.3 8.8 3.4 0.9 8.9% 22.8% .302 108 105 3.81 92 0.4
Grant Gambrell 86.3 6.0 3.2 1.4 8.1% 15.2% .297 84 86 5.04 119 0.4
Luis García 49.0 7.9 2.9 0.7 7.4% 20.0% .320 109 98 3.65 92 0.4
Brad Keller 95.7 6.9 4.1 1.2 10.1% 16.7% .305 84 84 4.89 119 0.3
Rich Hill 120.3 7.3 3.1 1.6 8.0% 18.5% .299 80 77 5.08 125 0.3
Luis Perales 76.0 8.2 4.3 1.4 10.7% 20.5% .294 82 90 4.95 121 0.3
Liam Hendriks 37.7 10.5 3.1 1.4 8.0% 27.0% .302 103 93 4.03 97 0.3
Chase Shugart 70.3 6.9 3.3 1.2 8.4% 17.4% .300 91 92 4.59 110 0.3
Bryan Mata 53.3 7.6 4.9 1.0 12.1% 18.8% .297 86 89 4.92 117 0.3
Chih-Jung Liu 75.7 8.0 4.3 1.4 10.5% 19.6% .299 82 86 5.05 122 0.3
Andrew Politi 49.3 7.7 3.8 1.1 9.6% 19.3% .301 92 91 4.58 109 0.2
Zack Kelly 56.7 9.5 4.6 1.1 11.6% 24.1% .289 94 93 4.41 106 0.2
Vladimir Gutierrez 61.3 6.8 4.4 1.3 10.9% 16.8% .289 82 82 5.25 122 0.2
Juan Daniel Encarnacion 82.0 6.4 3.4 1.4 8.5% 16.0% .295 80 85 5.21 126 0.1
Isaiah Campbell 33.3 8.1 3.0 1.4 7.5% 20.5% .299 97 98 4.41 103 0.1
Michael Fulmer 38.3 8.9 4.2 0.9 10.7% 22.5% .302 94 90 4.12 106 0.1
Joely Rodríguez 29.3 8.0 3.4 0.9 8.5% 20.0% .318 98 92 3.96 102 0.1
Luis Guerrero 59.3 9.3 4.6 1.1 11.5% 23.3% .289 95 100 4.48 105 0.1
Justin Wilson 34.3 9.2 3.1 1.3 7.9% 23.0% .327 94 85 4.17 106 0.0
Cam Booser 46.7 8.9 3.9 1.4 9.7% 22.2% .305 95 89 4.51 106 0.0
Lucas Sims 49.3 9.3 5.1 1.1 12.9% 23.5% .271 92 88 4.70 109 -0.1
Jack Anderson 57.0 6.0 2.4 1.4 6.0% 15.3% .304 86 91 4.74 117 -0.1
Reidis Sena 49.7 8.2 4.9 1.3 11.9% 19.8% .301 86 91 4.89 117 -0.1
Caleb Bolden 63.0 7.3 4.6 1.3 11.1% 17.8% .296 79 82 5.23 126 -0.1
Zach Bryant 32.7 7.2 4.7 1.4 11.5% 17.6% .293 80 82 5.32 125 -0.1
Hobie Harris 48.0 6.9 4.3 1.1 10.6% 17.1% .304 86 84 4.76 116 -0.2
Christopher Troye 42.0 9.2 5.8 1.1 13.7% 21.8% .298 85 89 4.75 118 -0.2
Theo Denlinger 40.0 7.0 4.1 1.1 10.0% 17.2% .301 85 86 4.83 118 -0.2
Sal Romano 29.0 5.6 3.7 1.2 9.1% 13.6% .309 79 77 5.07 126 -0.2
Naoyuki Uwasawa 56.0 6.3 3.9 1.4 9.4% 15.4% .298 77 74 5.48 130 -0.2
Jacob R. Webb 69.7 6.5 4.4 1.3 10.7% 15.7% .297 79 82 5.29 126 -0.2
Melvin Adón 34.7 7.8 5.5 1.3 12.9% 18.4% .304 77 76 5.40 130 -0.3
Alex Hoppe 60.7 6.7 4.2 1.2 10.0% 16.1% .305 83 86 4.89 120 -0.3
Brendan Cellucci 54.3 8.4 6.0 1.2 14.1% 19.9% .299 79 82 5.18 126 -0.3
Helcris Olivarez 50.7 8.2 7.1 1.2 16.4% 18.9% .297 69 74 6.18 144 -0.3
Jonathan Brand 50.0 6.7 3.6 1.4 9.0% 16.7% .297 80 85 5.16 124 -0.4
Wyatt Olds 72.3 8.1 5.6 1.1 13.5% 19.5% .290 75 78 5.53 134 -0.4
Cody Scroggins 30.7 6.2 5.0 1.5 11.8% 14.6% .296 71 73 6.08 140 -0.4
Felix Cepeda 42.3 6.8 5.5 1.3 13.0% 16.0% .292 76 81 5.63 132 -0.5

Pitchers – Top Near-Age Comps
Player Pit Comp 1 Pit Comp 2 Pit Comp 3
Garrett Crochet Jon Matlack Steve Carlton Gary Peters
Tanner Houck Brad Penny Orel Hershiser Steve Rogers
Brayan Bello Wily Peralta Yordano Ventura Shelby Miller
Nick Pivetta Earl Wilson Howard Ehmke Yu Darvish
Kutter Crawford Ramon Ortiz Steve Trachsel Ervin Santana
Garrett Whitlock Seth Lugo Cy Moore Jose Melendez
Lucas Giolito Dave Mlicki Ron Darling Mike Forline
Josh Winckowski Adrian Houser Joe Ross Orlando Pena
Quinn Priester Jason Davis Enrique Gonzalez Hector Ambriz
Richard Fitts Matt Wisler Daniel Mengden Zach Eflin
Cooper Criswell Clint Brown Jeff Heathcock Travis Driskill
Aroldis Chapman John Hiller Luis Arroyo Mike Remlinger
Hunter Dobbins Luis Cessa Sal Romano Fernando Romero
Connelly Early Allen Watson Dick Joyce Jim Ellis
Blake Wehunt Jason Olsen Seung Song Ryne Reynoso
Brian Van Belle Daniel McCutchen Cole De Vries Aaron Slegers
Chris Martin Doug Jones Warren Hacker Todd Worrell
Justin Slaten Brendan McCurry Joe Bateman Bryan Gaal
Kenley Jansen Tom Gordon Grant Balfour Stu Miller
Chris Murphy Kevin Brown Mike Mimbs Dick Estelle
Isaac Coffey Jharel Cotton Taijuan Walker Moose Haas
David Sandlin Gordie Ariss Harold Heiner Luis Valdez
James Paxton Jay Heard Daniel Rodriguez Herman Besse
Shane Drohan Daniel McGrath Dave Owen Mike Connolly
Zach Penrod Mike Matthews Chuck Hensley Gary Christenson
Brennan Bernardino Joey Eischen Scott Eyre Craig Breslow
Greg Weissert Jim Miller Bryan Shaw Mike Ignasiak
Grant Gambrell Cholly Naranjo Bill Wengert Paul Stewart
Luis García Jim Johnson Doug Jones Anthony Telford
Brad Keller Deck McGuire Buck Farmer Chad Reineke
Rich Hill Bruce Chen Bud Black Frank Tanana
Luis Perales Jeff Shaver Cristobal Rodriguez Luis Rodriguez
Liam Hendriks Lee Smith Dennis Eckersley Todd Worrell
Chase Shugart Blake Hawksworth Anthony Bass Billy Muffett
Bryan Mata Andy Baker Rich Buonantony Calvin Jones
Chih-Jung Liu Brandon Bailey Jason Frasor Luis Vizcaino
Andrew Politi Cal Koonce Bill Harrington Kevin Quackenbush
Zack Kelly John Wyatt Mike Armstrong Richie Lewis
Vladimir Gutierrez Harry Fisher Dan Pfister Jim Britton
Juan Daniel Encarnacion Rich Strasser Billy Carnline Matt Kosderka
Isaiah Campbell John Birtwell William Wright Bruce Thompson
Michael Fulmer Hector Navarro Jailen Peguero Johnny Murphy
Joely Rodríguez Joe Grzenda Vic Darensbourg Dave Tomlin
Luis Guerrero Eduardo Rodriguez Gene Pentz Andrew Cashner
Justin Wilson Alan Embree Tim Hamulack Diomedes Olivo
Cam Booser Ron Mahay Ray Searage Dan Plesac
Lucas Sims Mike Hartley Rob Tejeda John Wyatt
Jack Anderson Bryan Rogers Jeremy Cook Zach Peterson
Reidis Sena Kris Keller Garvin Alston Steve Mintz
Caleb Bolden Dovydas Neverauskas Ryne Miller Victor Alcantara
Zach Bryant Chuck Taylor Mike Heinen Donald Hammitt
Hobie Harris Roman Colon Brooks Brown Brian Stokes
Christopher Troye Zach Schreiber Jeff Jones Jake Cosart
Theo Denlinger Logan Easley Marco Mainini Kenny Greer
Sal Romano Jeff Gray Dutch Romberger Blas Cedeno
Naoyuki Uwasawa Murphy Smith Cot Deal Drew Carpenter
Jacob R. Webb Victor Alcantara Chris Beck Justin Shafer
Melvin Adón Jim Hoey Ned Darley Ryan Henderson
Alex Hoppe Dovydas Neverauskas Blake Wood Victor Alcantara
Brendan Cellucci Andrew Faulkner Russ Rohlicek Kyle Bird
Helcris Olivarez Don Rowe Robert Johnston Kelton Russell
Jonathan Brand Daniel Vasquez Ken Kendrena Toby Smith
Wyatt Olds Carson Fulmer Joey Robinson Mac Suzuki
Cody Scroggins Mike Heinen John Ogiltree Randy Fierbaugh
Felix Cepeda Bryton Trepagnier Ben Henry Eddy Reyes

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
Garrett Crochet .225 .293 .308 .221 .282 .344 4.4 2.5 2.41 3.58
Tanner Houck .238 .315 .381 .242 .299 .356 3.5 1.6 3.34 4.52
Brayan Bello .259 .331 .430 .242 .305 .344 3.2 1.1 3.55 4.70
Nick Pivetta .229 .300 .401 .240 .291 .435 2.6 0.7 3.61 4.90
Kutter Crawford .239 .306 .440 .247 .291 .408 2.6 0.5 3.82 5.10
Garrett Whitlock .242 .289 .386 .242 .286 .395 2.0 0.7 2.98 4.52
Lucas Giolito .237 .309 .397 .260 .319 .443 2.2 0.3 3.82 5.30
Josh Winckowski .269 .330 .404 .250 .307 .400 2.0 0.5 3.49 4.72
Quinn Priester .260 .329 .422 .256 .315 .394 2.0 0.4 3.92 5.02
Richard Fitts .270 .325 .419 .261 .308 .443 2.1 0.5 3.96 5.02
Cooper Criswell .281 .348 .452 .250 .305 .377 1.6 0.5 4.01 5.05
Aroldis Chapman .160 .288 .240 .210 .321 .355 1.8 -0.1 2.20 5.40
Hunter Dobbins .289 .351 .436 .244 .311 .424 1.5 0.3 4.21 5.17
Connelly Early .235 .333 .361 .256 .339 .431 1.5 0.0 4.17 5.43
Blake Wehunt .280 .352 .423 .244 .305 .425 1.4 0.1 4.22 5.37
Brian Van Belle .275 .332 .440 .275 .316 .454 1.3 0.1 4.18 5.29
Chris Martin .243 .291 .405 .267 .295 .378 1.1 0.2 2.38 4.35
Justin Slaten .261 .337 .446 .233 .290 .367 1.1 0.0 3.28 4.97
Kenley Jansen .247 .316 .393 .211 .283 .368 1.2 -0.2 2.77 5.10
Chris Murphy .229 .324 .344 .269 .345 .444 1.1 0.0 4.23 5.42
Isaac Coffey .242 .332 .411 .259 .344 .449 1.3 -0.2 4.35 5.62
David Sandlin .267 .324 .474 .263 .311 .461 1.1 -0.1 3.99 5.59
James Paxton .295 .364 .423 .262 .339 .453 1.1 -0.1 4.34 5.78
Shane Drohan .288 .370 .452 .249 .340 .415 1.1 -0.1 4.37 5.49
Zach Penrod .237 .322 .395 .245 .344 .405 1.0 -0.1 3.85 5.46
Brennan Bernardino .224 .297 .358 .250 .345 .392 0.9 -0.1 3.33 5.13
Greg Weissert .252 .331 .411 .236 .305 .346 0.9 -0.1 3.22 4.76
Grant Gambrell .269 .339 .436 .277 .340 .471 0.9 -0.1 4.49 5.53
Luis García .282 .347 .412 .248 .308 .367 0.8 -0.1 3.13 4.91
Brad Keller .274 .362 .435 .268 .335 .444 0.9 -0.3 4.45 5.65
Rich Hill .257 .346 .398 .274 .333 .491 1.1 -0.5 4.52 6.06
Luis Perales .269 .363 .476 .240 .314 .409 0.9 -0.4 4.45 5.84
Liam Hendriks .232 .303 .435 .247 .306 .416 0.8 -0.3 2.75 6.34
Chase Shugart .263 .336 .421 .265 .331 .435 0.7 -0.2 4.12 5.29
Bryan Mata .253 .370 .404 .255 .346 .400 0.6 -0.2 4.38 5.63
Chih-Jung Liu .280 .377 .470 .244 .319 .429 0.8 -0.3 4.54 5.75
Andrew Politi .273 .350 .455 .245 .331 .377 0.6 -0.3 3.92 5.48
Zack Kelly .240 .347 .380 .224 .316 .388 0.8 -0.5 3.62 5.44
Vladimir Gutierrez .274 .368 .479 .248 .331 .392 0.6 -0.3 4.60 5.80
Juan Daniel Encarnacion .270 .355 .459 .271 .333 .453 0.6 -0.4 4.76 5.94
Isaiah Campbell .262 .338 .508 .254 .299 .380 0.4 -0.2 3.71 5.23
Michael Fulmer .236 .329 .375 .250 .333 .395 0.4 -0.4 3.69 5.63
Joely Rodríguez .256 .333 .419 .270 .329 .405 0.3 -0.2 3.55 5.21
Luis Guerrero .250 .359 .426 .218 .314 .345 0.6 -0.5 3.74 5.30
Justin Wilson .271 .327 .458 .267 .330 .444 0.4 -0.4 3.50 6.11
Cam Booser .242 .309 .371 .262 .341 .467 0.5 -0.4 3.64 5.44
Lucas Sims .220 .366 .366 .221 .311 .375 0.5 -0.8 3.77 5.71
Jack Anderson .269 .316 .454 .293 .333 .472 0.4 -0.4 4.18 5.54
Reidis Sena .258 .359 .427 .255 .339 .425 0.3 -0.5 4.28 5.61
Caleb Bolden .263 .367 .441 .260 .347 .427 0.3 -0.6 4.78 6.01
Zach Bryant .288 .391 .458 .239 .321 .437 0.0 -0.4 4.72 6.03
Hobie Harris .247 .333 .393 .284 .357 .461 0.2 -0.6 4.22 5.81
Christopher Troye .267 .389 .427 .218 .324 .368 0.2 -0.6 4.33 5.97
Theo Denlinger .274 .361 .452 .256 .337 .407 0.1 -0.5 4.23 5.75
Sal Romano .309 .387 .527 .266 .324 .406 0.0 -0.4 4.56 5.98
Naoyuki Uwasawa .275 .365 .422 .274 .348 .496 0.2 -0.6 4.83 6.20
Jacob R. Webb .291 .385 .480 .250 .331 .421 0.2 -0.7 4.83 5.96
Melvin Adón .266 .373 .469 .260 .368 .425 0.0 -0.7 4.63 6.38
Alex Hoppe .279 .367 .459 .265 .333 .417 0.1 -0.8 4.49 5.67
Brendan Cellucci .221 .365 .353 .264 .367 .438 0.1 -0.8 4.54 6.18
Helcris Olivarez .234 .398 .328 .261 .405 .470 0.0 -0.8 5.41 7.02
Jonathan Brand .273 .348 .475 .267 .336 .436 0.0 -0.7 4.63 5.84
Wyatt Olds .262 .409 .460 .232 .351 .361 0.1 -1.0 5.03 6.40
Cody Scroggins .276 .382 .500 .273 .380 .439 -0.2 -0.7 5.24 6.73
Felix Cepeda .253 .379 .418 .270 .365 .449 -0.2 -0.8 4.95 6.18

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.