The 2026 ZiPS predictions are coming!

Once one story in baseball ends, another begins. So as the 2025 season fades away as the champions hoist the World Series trophy, its remnants emerge from the quantum bubble to sow the seeds for the next phase of the sport. The four months between now and Opening Day feel like an endless gap, but we have the Hot Stove League to keep the MLB baseball world turning. That means, as has been the case for nearly a quarter of a century, it’s time for me to start rolling out my ZiPS predictions for next season.
For those new to projection, ZiPS is a computer projection system I originally developed in April 2002. It was officially launched to the public in 2005, by which time it had reached a level of non-lameness that I was satisfied with. The origins of ZiPS, similar to Tom Tango’s Marcel the Monkey, stemmed from discussions I had in the late 1990s with Chris Dial, one of my best friends (our first interaction was Chris calling me a bad name!) and a fellow statistics nerd. ZiPS has grown rapidly from its initial iterations into a fairly simple projection system that now has far more capabilities and uses much more data than I could have imagined 20 years ago. However, at its core it still performs two main tasks: estimating what the baseline expectation is for the player when I press the button, and then using a large number of relatively similar players to estimate where that player is likely to go.
So why is ZiPS named ZiPS? At the time, Voros McCracken’s theories on the interaction of pitching, defense, and the ball in play were fairly new, and since I wanted to incorporate some of his findings, I decided (with his blessing) that the name of my system would rhyme with DIPS (Defense-Independent Pitching Statistics). I don’t like SIPS so I chose the next letter in my last name. I originally named my work ZiPs as a nod to chipone of my favorite shows to watch as a kid, but when I posted my predictions publicly, I mistakenly entered ZiPS as ZiPS, and since my now colleague Jay Jaffe had already covered ZiPS on his Futility Infielder blog, I chose to continue. I never thought all this would be useful to anyone but me; if I had, I definitely would have named it in a less weird way.
ZiPS uses multi-year statistics, with more weight given to recent seasons; initially, all statistics were given the same annual weight, but eventually, based on more research, the weights became more diverse. Research is an important part of ZiPS. Each year, I conduct hundreds of studies on various aspects of the system to determine its predictive value and better calibrate player baselines. Starting with data available in 2002, the data have been significantly expanded. Starting in 2013, basic batting, velocity, and pitch data began to play a bigger role, and data from Statcast has been included in recent years as I’ve gained a handle on its predictive value and the impact of these numbers on existing models. I believe in careful, conservative design, so I only include data when I am confident that its accuracy has improved, which means ZiPS always takes a few years to build. Other internal ZiPS tools such as zBABIP, zHR, zBB, and zSO are used to better establish baseline expectations for players. These stats work similarly to the various “x” stats, where the “z” represents something I bet you’ve already guessed.
How does ZiPS predict future production? First, ZiPS builds a baseline estimate for each predicted player using recent game data (zStats adjusted) as well as other factors such as park, league and game quality. To understand where a player is going, this baseline is compared to the baselines of all other players in the database, which are also calculated based on the best data available for that player in the situation. The current ZiPS database contains approximately 152,000 pitcher baselines and approximately 185,000 batter baselines. For a hitter, aside from knowing where to hit, it’s all about offense; how good a player’s defense is provides no information about how well that player has aged at the plate.
ZiPS uses a wealth of statistics, coupled with information about a player’s performance and other characteristics, to then find a large group of people who are most similar to that player. To do this I make extensive use of the Mahalanobis distance. A few years ago, Brandon G. Nguyen, a computer science/math major at Texas A&M, did an excellent job showing extensively how I could do this, albeit using different variables.
As an example, here are the top 50 near-age comparables to current likely American League MVP Cal Raleigh, a player who is particularly difficult to compare. The total queue is much larger than this, but 50 people should be enough to give you an idea:
Cal Raleigh’s top 50 ZiPS offenses
Since there are hundreds of thousands of candidates, not billions, you will never have a perfect competitor. ZiPS was hoping to find a ton of 20-something receivers with serious Three True Results games and butt-themed nicknames (well, that last bit wasn’t in the database), but it wasn’t going to, so it tried to assemble a team that was at least Raleigh, Calif.-style. I know from testing that the ZiPS performs significantly better in the long run when compared to Cal Raleighs, not to Francisco Lindors, Juan Pierres or Matt Raleighs. The exact mixing algorithm for assembling the combination was determined through extensive testing, essentially letting a computer run ZiPS 24-7 for about a year. A large group of similar players is then used to dynamically calculate an ensemble model to predict the player’s future career prospects, for better or worse.
One of the projection principles I follow is that whatever ZiPS projection says, that’s what the projection is. Even if inserting my opinion would improve a particular prediction, I am philosophically opposed to doing so. ZiPS is most useful when people know it is based purely on data, rather than some unknown combination of data and my opinion. Over the years I think I’ve taken a clever approach to converting more stuff into data – for example, ZiPS uses basic injury information – but some things aren’t in the model. ZiPS doesn’t know if a pitcher was held back from throwing a slider while returning from injury, or if a left fielder suffered a family tragedy in July. These things are beyond the scope of the projection system, although they can affect live performance. ZiPS is not mathematical magic, and anyone using a useful tool should be aware of its limitations and apply their own judgment to the problem at hand.
It’s also important to remember that, in layman’s terms, a bottom line forecast is just a midpoint. You don’t expect every player to hit that midpoint; 10% of players “should” fail to hit 10% of their predictions, while 10% of players “should” equally “should” hit 90% of their predictions. This can be surprisingly confusing. ZiPS projects only one player with a .300 batting average in 2025: Luis Arraez. But this is different from what ZiPS thought would be the case yes A .300 hitter. On average, ZiPS thinks 15 hitters with at least 100 at-bats will be over .300 instead of just one. In the end, there were 13.
Another important thing to remember is that the basic ZiPS projection is not a predictor of game time; it is a predictor of game time. By design, ZiPS has no idea who will actually be playing in the major leagues in 2026. With this in mind, ZiPS only projects how players will perform in a full-time major league role. Having ZiPS tell me how someone would hit as a full-time player in the major leagues is a more interesting use of a projection system than telling me how the same person would perform as a part-time player or a minor leaguer. For the depth charts that appear in each article, I used the FanGraphs Depth Chart to determine each player’s playing time. Since we’re talking about team building, I can’t leave ZiPS to its own devices for an application like this. This is the same reason I use a modified depth chart for my team projections during the season. There’s an element of probability in the ZiPS depth chart: Sometimes Joe Schmo will play the entire season, sometimes he’ll miss playing time and Buck Schmuck will have to step in. But the basic concept is very simple.
There are no major updates this year regarding the 2025 level, when I officially start doing my final ZiPS runs before the season using spring training data (which weighs less than regular season data). However, common calibration tweaks and quality-of-life updates make ZiPS easier to run while providing more ways to view projection data. After the 30 team articles, I’ll be doing some KBO/NPB articles, so there’s some added bonus there. There are at least some new things in the model, such as modeling how many games a catcher is likely to play at 1B/DH in order to get a more accurate WAR projection than just assuming all games are played as a catcher.
Have any questions, suggestions or concerns about ZiPS? I will try to reply to as many as possible in the comments below. Also, if these predictions have been valuable to you now or in the past, I would urge you to consider becoming a FanGraphs member if you are able. It is only because of your continued and much appreciated support that I have been able to make so much of my work available to the public over the years. Improving and maintaining ZiPS is a time-consuming endeavor, and reader support gives me the flexibility to devote significant time to development. It’s hard to believe that I’ve spent nearly half my life developing ZiPS! Hopefully, our predictions and insights into baseball will provide you with a return on your investment, or at least a little entertainment, whether that be joy or outrage.



