An Improved KATOH Top-100 List

Back in January, I made some tweaks to my KATOH projection system, and have been using that updated model for the past several months. That model was unquestionably better than the previous versions, but it left me unsatisfied. While it addressed many of the flaws from previous iterations, there was still a lot of information it wasn’t taking into account.

I’ve been plugging away behind the scenes, and finally have a new version KATOH to share with the world. In what follows, you’ll find some detail on the new model, including its notable updates. I’ll be using this model in all of my prospect analysis from this point forward. Below, you’ll find a quick run-through of the notable tweaks, followed by an updated top-100 list.


Added Features

Choosing projection window based on level, rather than age

In my previous model, I projected out based on a player’s age. If a player were 22, I projected him through age 28; If he were 24, I projected through age 30. This resulted in KATOH undervaluing players who were old for their level. The goal of KATOH is to predict the value a player will generate during his six-plus years of team control. By projecting a 22-year-old through age 28, KATOH failed to capture some of that value in cases where the 22-year-old was still in A-ball.

This time around, I chose my windows based on level, rather than age. I projected the next six seasons for players in Triple-A. I did the next seven for players in Double-A, eight for A-ballers, and nine for Rookie ballers.

Accounting for defensive performance, not just position

KATOH got significantly better when I added defensive position to the mix last winter, but there was still a lot for which I wasn’t accounting on the defensive side of things. Most notably, I was ignoring how good or bad a player was at the position he was playing. As we learned last decade when defensive metrics became a thing, the gap between a good defender and a bad defender at the same position can be huge. I’ve addressed this issue by incorporating minor-league defensive data compiled and published by Clay Davenport.

Somewhat surprisingly, the defensive metrics don’t add a ton of predictive value to what was already picked up by a players’ defensive position. A strong minor-league defensive performance will help a player’s projection, but won’t make a huge difference in most cases. It’s my guess that this has something to do with the fact that minor leaguers are often learning new positions, where they might be prone to making a lot of errors.

Incorporating ground-ball rates for pitchers

I also incorporated ground-ball rates for pitchers that I pulled from Clay Davenport’s site. With all else being equal, ground-ball pitchers have rosier outlooks than fly-ball pitchers, though not by a wide margin. In other words, ground-ball rates don’t add a ton of predictive value that isn’t already picked up by more conventional metrics.

Incorporating Baseball America top-100 lists

I’ve been conflicted about whether to include prospect rankings in my projections. There will always be important information the stats just don’t pick up that actual humans can. As a result, adding a variable for “BA rank” improves the models.

So why not include something that improves the projections? Well, for one, there’s potentially an issue of data consistency. The methodology behind 2016’s Baseball America rankings is unquestionably different than the methodology behind their 1991 rankings. They were done by different people who were using different information, so they aren’t necessarily consistent across years.

Secondly, there’s the philosophical question regarding what we want from KATOH. Incorporating scouting data makes KATOH a more accurate projection system, and makes it more useful as a stand-alone. But KATOH isn’t meant to act as a stand-alone. Rather, it’s best used as a tool for identifying potentially under- or overrated prospects. Including a variable for prospect ranking causes KATOH to shade closer to the industry consensus. This makes it more difficult to identify the guys KATOH likes and dislikes relative to the establishment. Perhaps I’m overthinking things, but I don’t think “more accurate” necessarily equates to “more useful” in this case.

Rather than picking a lane, I decided to create two parallel KATOHs: one that incorporates top-100 ranking and one that doesn’t. This is similar to what FiveThirtyEight does with their election forecasts, where they have a “polls only” model and one that also incorporates an index for economic performance. I will call the scouting-infused version “KATOH+” and will leave the original moniker to the one that excludes the BA rankings.


Top-100 Lists

The models and lists I’m unveiling today aren’t perfect, but if held off on publishing projections until I had a system with which I was completely happy, I’d never write another article for FanGraphs. All in all, I’m content with what I have (for now, at least). I still have some ideas to improve things, but I’m saving them for another day.

This considers all players with at least 200 plate appearances or batters faced (plus Jose De Leon, since I know someone would ask). The figures in the far-right column refer to each player’s projected WAR over his first six seasons in the major leagues. As a reminder, these forecasts are not gospel. Take my math as seriously as you wish.

First, the version that considers stats only, and not prospect rankings.

KATOH Top 100
Rank Player Org Position KATOH
1 Alex Bregman Astros SS 17.1
2 Dylan Cozens Phillies OF 14.1
3 Jose De Leon Dodgers RHP 10.4
4 Joey Gallo Rangers 3B 10.3
5 Manuel Margot Padres OF 10.0
6 J.P. Crawford Phillies SS 10.0
7 Alex Verdugo Dodgers OF 10.0
8 Trea Turner Nationals SS 9.6
9 Ozzie Albies Braves 2B 9.4
10 Austin Meadows Pirates OF 9.3
11 Andrew Benintendi Red Sox OF 9.1
12 David Dahl Rockies OF 9.0
13 Jake Bauers Rays OF 8.5
14 Tyler Glasnow Pirates RHP 8.1
15 Lewis Brinson Rangers OF 7.7
16 Zack Granite Twins OF 7.5
17 Bradley Zimmer Indians OF 7.4
18 Alex Reyes Cardinals RHP 7.3
19 Jameson Taillon Pirates RHP 7.3
20 Edwin Rios Dodgers 3B 7.3
21 Orlando Arcia Brewers SS 7.2
22 Yoan Moncada Red Sox 2B 7.1
23 Tyler O’Neill Mariners OF 7.0
24 Willie Calhoun Dodgers 2B 6.9
25 Mitchell Haniger Diamondbacks OF 6.9
26 Rhys Hoskins Phillies 1B 6.7
27 Willy Adames Rays SS 6.7
28 Gavin Cecchini Mets SS 6.4
29 Blake Snell Rays LHP 6.4
30 Victor Robles Nationals OF 6.3
31 Trey Mancini Orioles 1B 6.3
(32) Zach Eflin* Phillies RHP 6.3
32 Willson Contreras Cubs C 6.2
33 Derek Fisher Astros OF 6.2
(34) Dalton Pompey* Blue Jays OF 6.2
34 Jose Berrios Twins RHP 6.0
35 Dansby Swanson Braves SS 6.0
36 Amed Rosario Mets SS 5.9
37 A.J. Reed Astros 1B 5.9
38 Kyle Tucker Astros OF 5.8
39 Luis Arraez Twins 2B 5.7
40 Harrison Bader Cardinals OF 5.7
41 Gary Sanchez Yankees C 5.7
42 Gleyber Torres Cubs SS 5.6
43 Andrew Toles Dodgers OF 5.6
44 Raul Mondesi Royals SS 5.6
45 Kevin Newman Pirates SS 5.6
46 Joe Musgrove Astros RHP 5.5
47 Luis Urias Padres 2B 5.5
48 Hunter Dozier Royals 3B 5.5
49 Reese Mcguire Pirates C 5.5
50 Josh Bell Pirates 1B 5.4
51 Cody Reed Reds LHP 5.3
52 Brandon Nimmo Mets OF 5.2
53 Garrett Stubbs Astros C 5.2
54 Albert Almora Cubs OF 5.2
55 Max Moroff Pirates 3B 5.1
56 Jesse Winker Reds OF 5.1
57 Boog Powell Mariners OF 5.0
58 Jorge Polanco Twins SS 5.0
59 Brock Stewart Dodgers RHP 5.0
60 Dan Vogelbach Mariners 1B 5.0
61 Rowdy Tellez Blue Jays 1B 5.0
62 Josh Hader Brewers LHP 4.9
63 Raimel Tapia Rockies OF 4.9
64 Benjamin Gamel Yankees OF 4.9
65 Cody Bellinger Dodgers 1B 4.9
66 Matt Chapman Athletics 3B 4.9
67 Adam Frazier Pirates OF 4.8
68 Kyle Higashioka Yankees C 4.8
(69) Luis Severino* Yankees RHP 4.7
69 Samir Duenez Royals OF 4.6
70 Aaron Judge Yankees OF 4.6
71 Franklin Barreto Athletics SS 4.6
72 Chance Sisco Orioles C 4.6
73 Andrew Knapp Phillies C 4.6
74 Lucas Giolito Nationals RHP 4.5
75 Luke Weaver Cardinals RHP 4.5
76 Andrew Aplin Astros OF 4.5
77 Kyle Wren Brewers OF 4.5
78 Ryan Cordell Rangers OF 4.4
79 German Marquez Rockies RHP 4.4
80 Josh Naylor Marlins 1B 4.4
81 Stephen Gonsalves Twins LHP 4.4
82 Austin Barnes Dodgers C 4.4
83 David Paulino Astros RHP 4.3
84 Charlie Tilson Cardinals OF 4.3
85 Reynaldo Lopez Nationals RHP 4.3
86 Eloy Jimenez Cubs OF 4.3
87 Oscar Hernandez Diamondbacks C 4.3
88 JaCoby Jones Tigers SS 4.2
89 Jeff Hoffman Rockies RHP 4.2
90 Rafael Devers Red Sox 3B 4.2
91 Jordan Patterson Rockies OF 4.2
92 Chad Green Yankees RHP 4.2
(93) Dilson Herrera* Mets 2B 4.1
93 Daniel Palka Twins OF 4.1
94 Sean Reid-Foley Blue Jays RHP 4.1
(95) Tim Anderson* White Sox SS 4.1
95 Nick Williams Phillies OF 4.0
96 Cody Reed Diamondbacks LHP 3.9
97 Brent Honeywell Rays RHP 3.9
98 Max Povse Braves RHP 3.9
99 Richard Urena Blue Jays SS 3.9
100 Tyler Austin Yankees OF 3.9
104 Phil Bickford** Giants RHP 3.8
111 Nick Delmonico** White Sox 1B 3.6
133 Sherman Johnson** Angels 2B 3.3
*No longer rookie eligible.
**Not in top 100, but top prospect in organization.


This next list incorporates stats, as well as rankings from Baseball America’s Midseason Top 100.

KATOH+ Top 100
Rank Player Org Position KATOH
1 Alex Bregman Astros SS 17.7
2 J.P. Crawford Phillies SS 16.5
3 Trea Turner Nationals SS 15.1
4 Andrew Benintendi Red Sox OF 14.4
5 Yoan Moncada Red Sox 2B 13.0
6 Austin Meadows Pirates OF 13.0
7 Alex Reyes Cardinals RHP 12.4
8 Manuel Margot Padres OF 12.1
9 Dansby Swanson Braves SS 12.0
10 Joey Gallo Rangers 3B 11.9
11 Jose De Leon Dodgers RHP 11.8
12 Ozzie Albies Braves 2B 11.8
13 Tyler Glasnow Pirates RHP 11.7
14 David Dahl Rockies OF 11.1
15 Victor Robles Nationals OF 10.2
16 Kyle Tucker Astros OF 10.1
17 Lewis Brinson Rangers OF 9.9
18 Orlando Arcia Brewers SS 9.9
19 Bradley Zimmer Indians OF 9.9
20 Alex Verdugo Dodgers OF 9.8
21 Lucas Giolito Nationals RHP 9.3
22 Jake Bauers Rays OF 8.7
23 Dylan Cozens Phillies OF 8.4
24 Josh Bell Pirates 1B 8.3
25 Willy Adames Rays SS 8.3
26 Amed Rosario Mets SS 8.2
27 Jose Berrios Twins RHP 8.1
28 Joe Musgrove Astros RHP 7.2
29 Gleyber Torres Cubs SS 7.1
30 Zack Granite Twins OF 7.1
31 Jameson Taillon Pirates RHP 7.0
32 Kevin Newman Pirates SS 6.8
33 Tyler O’Neill Mariners OF 6.6
34 Gary Sanchez Yankees C 6.6
35 Brent Honeywell Rays RHP 6.5
36 Willie Calhoun Dodgers 2B 6.3
37 Jesse Winker Reds OF 6.3
38 Blake Snell Rays LHP 6.3
39 Josh Hader Brewers LHP 6.3
40 Willson Contreras Cubs C 6.3
41 Rafael Devers Red Sox 3B 6.2
42 Cody Bellinger Dodgers 1B 6.1
43 A.J. Reed Astros 1B 6.0
44 Raul Mondesi Royals SS 6.0
45 Jorge Polanco Twins SS 5.9
(46) Zach Eflin* Phillies RHP 5.9
46 Edwin Rios Dodgers 3B 5.8
47 Franklin Barreto Athletics SS 5.7
48 Eloy Jimenez Cubs OF 5.7
49 Gavin Cecchini Mets SS 5.5
50 Brandon Nimmo Mets OF 5.5
51 Aaron Judge Yankees OF 5.5
52 Derek Fisher Astros OF 5.4
53 Kyle Wren Brewers OF 5.3
54 Max Moroff Pirates 3B 5.3
55 Reynaldo Lopez Nationals RHP 5.3
56 Jeff Hoffman Rockies RHP 5.3
57 Brendan Rodgers Rockies SS 5.3
58 Nick Williams Phillies OF 5.2
59 Cody Reed Reds LHP 5.2
60 Phil Bickford Giants RHP 5.1
61 Raimel Tapia Rockies OF 5.1
62 Luis Arraez Twins 2B 5.1
63 Reese Mcguire Pirates C 5.1
64 Luis Urias Padres 2B 5.1
65 Harrison Bader Cardinals OF 5.0
66 David Paulino Astros RHP 5.0
67 Adam Frazier Pirates OF 5.0
68 Anderson Espinoza Padres RHP 4.9
(69) Dalton Pompey* Blue Jays OF 4.9
69 Dan Vogelbach Mariners 1B 4.9
70 Benjamin Gamel Yankees OF 4.9
71 Luke Weaver Cardinals RHP 4.9
72 Andrew Toles Dodgers OF 4.8
73 Clint Frazier Indians OF 4.7
74 Garrett Stubbs Astros C 4.7
75 Brock Stewart Dodgers RHP 4.7
76 Boog Powell Mariners OF 4.6
77 Josh Naylor Marlins 1B 4.6
78 Rhys Hoskins Phillies 1B 4.5
79 Mitch Keller Pirates RHP 4.5
(80) Luis Severino* Yankees RHP 4.4
80 Chance Sisco Orioles C 4.4
81 Charlie Tilson Cardinals LHP 4.4
82 Trey Mancini Orioles 1B 4.4
83 Jorge Mateo Yankees SS 4.3
84 Austin Barnes Dodgers C 4.3
85 Nick Gordon Twins SS 4.3
86 Sean Reid-Foley Blue Jays RHP 4.2
87 Albert Almora Cubs OF 4.2
88 Andrew Knapp Phillies C 4.2
89 Chad Green Yankees RHP 4.1
90 Francis Martes Astros RHP 4.1
91 Andrew Aplin Astros OF 4.1
92 Hunter Dozier Royals 3B 4.0
93 Mitchell Haniger Diamondbacks OF 4.0
94 Adalberto Mejia Giants LHP 3.9
95 Samir Duenez Royals OF 3.9
96 Jordan Patterson Rockies OF 3.9
(97) Tim Anderson* White Sox SS 3.9
97 Jose Peraza Reds 2B 3.8
98 Jake Thompson Phillies RHP 3.8
99 Amir Garrett Reds LHP 3.7
100 Tony Kemp Astros 2B 3.7
156 Sherman Johnson** Angels 2B 2.8
168 Adam Engel** White Sox OF 2.6
*No longer rookie eligible.
**Not in top 100, but top prospect in organization.

Note: The KATOH+ top 100 list I originally published was slightly inaccurate. My code was not correctly pulling BA rankings for hitters at the Low-A level, which caused the system to ignore the fact that Victor Robles, Kyle Tucker, Eloy Jimenez, Brendan Rodgers and Josh Naylor were top 100 prospects. As a result, these prospects were underrated in the second list. The issue has been resolved.

Chris works in economic development by day, but spends most of his nights thinking about baseball. He writes for Pinstripe Pundits, FanGraphs and The Hardball Times. He's also on the twitter machine: @_chris_mitchell None of the views expressed in his articles reflect those of his daytime employer.

Newest Most Voted
Inline Feedbacks
View all comments
free-range turducken
7 years ago

Can’t believe Cistulli’s given up on the Angels’ top prospect.