Top-100 Hitter Rankings
It’s time for my top-100 hitter ranks. While more is expected to be available on the website (in production), I went through and ranked my top 100 guys… for now. The rankings could change at any time as players get traded or sign with a team, but I feel good about this top group. Besides the actual ranks, I have explained each up and down ranking after the table. Finally, here are the caveats for today’s rankings.
Notes:
- The rankings started with a weighted average of several available projections.
- I had to pick one format to rank off of and I went with 5×5 Roto this time.
- No catchers were ranked (article coming soon).
- I did not take any position scarcity into account (besides catchers). There hasn’t been any for at least a dozen years, so I don’t expect any this season.
- I didn’t give any player a multi-position boost or DH hit with each hosting site having its own settings.
- Replacement level is not included since that value will change based on each league’s settings. Bryce Harper is not ranked without any replacement level.
- For AVG and OBP leagues, I usually drop guys for not hitting enough to be better than the last-place team, but I didn’t with all three systems being ranked.
- I ding highly drafted guys (top-75) who aren’t good hitters (projected OPS under .750). After that point, all the hitters are average or worse.
| Name | Proj PA | Roto Rank (AVG) | Roto Rank (OBP) | Points (ESPN) | PA | Talent |
|---|---|---|---|---|---|---|
| Aaron Judge | 640 | 1 | 2 | 8 | ||
| Jose Ramirez | 660 | 2 | 3 | 1 | ||
| Kyle Tucker | 620 | 3 | 6 | 4 | Down | |
| Trea Turner | 680 | 4 | 14 | 16 | ||
| Ronald Acuña Jr. | 610 | 5 | 4 | 34 | ||
| Vladimir Guerrero Jr. | 680 | 6 | 8 | 3 | ||
| Julio Rodriguez | 650 | 7 | 9 | 31 | Down | |
| Shohei Ohtani | 650 | 8 | 7 | 18 | ||
| Juan Soto | 670 | 9 | 1 | 2 | ||
| Bo Bichette | 670 | 10 | 20 | 21 | Down | |
| Freddie Freeman | 680 | 11 | 10 | 6 | ||
| Bobby Witt Jr. | 640 | 12 | 22 | 29 | ||
| Pete Alonso | 660 | 13 | 12 | 5 | ||
| Yordan Alvarez | 680 | 14 | 11 | 7 | ||
| Mookie Betts | 650 | 15 | 15 | 14 | ||
| Manny Machado | 660 | 16 | 17 | 10 | ||
| Rafael Devers | 660 | 17 | 21 | 12 | ||
| Paul Goldschmidt | 660 | 18 | 16 | 15 | ||
| Mike Trout | 600 | 19 | 13 | 23 | ||
| Austin Riley | 680 | 20 | 23 | 19 | ||
| Fernando Tatis Jr. | 520 | 21 | 6 | 48 | Down | |
| Matt Olson | 680 | 22 | 18 | 11 | ||
| Randy Arozarena | 640 | 23 | 24 | 60 | ||
| Francisco Lindor | 680 | 24 | 26 | 22 | ||
| Michael Harris II | 580 | 25 | 27 | 51 | Down | |
| Jose Altuve | 640 | 26 | 25 | 24 | ||
| Marcus Semien | 680 | 27 | 30 | 27 | ||
| Kyle Schwarber | 640 | 28 | 19 | 41 | ||
| George Springer | 590 | 29 | 29 | 33 | ||
| Nolan Arenado | 640 | 30 | 36 | 9 | ||
| Luis Robert Jr. | 550 | 31 | 34 | 44 | Down | |
| Eloy Jiménez | 610 | 32 | 58 | 37 | Up | Up |
| Adolis García | 650 | 33 | 40 | 77 | Down | |
| Starling Marte | 560 | 34 | 43 | 104 | ||
| Corey Seager | 640 | 35 | 35 | 17 | ||
| Andrés Giménez | 610 | 36 | 41 | 83 | ||
| Teoscar Hernández | 600 | 37 | 48 | 73 | ||
| Oneil Cruz | 550 | 38 | 31 | 89 | Down | |
| Ozzie Albies | 610 | 39 | 61 | 37 | ||
| Dansby Swanson | 650 | 40 | 46 | 68 | Down | |
| Gunnar Henderson | 580 | 41 | 32 | 65 | ||
| Trevor Story | 620 | 42 | 45 | 96 | ||
| Jazz Chisholm Jr. | 525 | 43 | 38 | 112 | Down | |
| Jake McCarthy | 550 | 44 | 44 | 111 | Down | |
| Bryan Reynolds | 650 | 45 | 39 | 43 | ||
| Alex Bregman | 650 | 46 | 28 | 13 | ||
| Cedric Mullins II | 580 | 47 | 33 | 63 | Down | |
| Tim Anderson | 580 | 48 | 89 | 130 | ||
| Gleyber Torres | 600 | 49 | 66 | 71 | ||
| Wander Franco | 600 | 50 | 68 | 26 | ||
| Willy Adames | 630 | 51 | 67 | 84 | ||
| Taylor Ward | 630 | 52 | 74 | 80 | Up | Up |
| José Abreu | 640 | 53 | 51 | 32 | ||
| Mitch Haniger | 610 | 54 | 79 | 79 | Up | |
| Carlos Correa | 620 | 55 | 47 | 34 | ||
| Xander Bogaerts | 640 | 56 | 54 | 40 | ||
| Nathaniel Lowe | 630 | 57 | 55 | 54 | ||
| Tyler O’Neill | 530 | 58 | 69 | 138 | Up | |
| Rhys Hoskins | 650 | 59 | 42 | 45 | ||
| Ryan Mountcastle | 620 | 60 | 86 | 69 | ||
| Tommy Edman | 610 | 61 | 52 | 75 | Down | Down |
| Brandon Lowe | 580 | 62 | 56 | 75 | ||
| Amed Rosario | 630 | 63 | 110 | 91 | ||
| Seiya Suzuki | 600 | 64 | 57 | 87 | ||
| Vinnie Pasquantino | 580 | 65 | 50 | 20 | ||
| Anthony Santander | 610 | 66 | 65 | 30 | Down | |
| Byron Buxton | 480 | 67 | 82 | 136 | ||
| Christian Yelich | 650 | 68 | 37 | 113 | ||
| Corbin Carroll | 500 | 69 | 53 | 131 | ||
| Christian Walker | 630 | 70 | 49 | 35 | Down | |
| Jeremy Peña | 610 | 71 | 105 | 129 | ||
| Steven Kwan | 620 | 72 | 76 | 49 | ||
| Jorge Polanco | 600 | 73 | 77 | 54 | ||
| Ty France | 630 | 74 | 84 | 47 | ||
| Matt Chapman | 640 | 75 | 63 | 93 | ||
| Nico Hoerner | 610 | 76 | 95 | 66 | ||
| Will Smith | 550 | 77 | 64 | 39 | ||
| Ian Happ | 640 | 78 | 75 | 85 | ||
| Javier Báez | 600 | 79 | 112 | 147 | Down | |
| Rowdy Tellez | 570 | 80 | 81 | 46 | ||
| Oscar Gonzalez | 570 | 81 | 126 | 61 | ||
| Thairo Estrada | 580 | 82 | 96 | 106 | ||
| Hunter Renfroe | 550 | 83 | 93 | 77 | ||
| Josh Bell | 620 | 84 | 71 | 31 | ||
| Joey Meneses | 610 | 85 | 138 | 98 | Up | Down |
| Ke’Bryan Hayes | 590 | 86 | 94 | 132 | ||
| Anthony Rizzo | 570 | 87 | 62 | 64 | ||
| Giancarlo Stanton | 520 | 88 | 85 | 102 | Up | |
| Alex Verdugo | 640 | 89 | 109 | 52 | ||
| Jake Cronenworth | 650 | 90 | 87 | 48 | ||
| Triston Casas | 560 | 91 | 60 | 58 | Down | |
| Nick Castellanos | 600 | 92 | 119 | 94 | ||
| Eugenio Suárez | 620 | 93 | 83 | 117 | ||
| Seth Brown | 580 | 94 | 106 | 119 | ||
| Austin Hays | 610 | 95 | 125 | 89 | ||
| Brandon Nimmo | 620 | 96 | 78 | 80 | ||
| Jeff McNeil | 610 | 97 | 113 | 56 | ||
| Alec Bohm | 630 | 98 | 134 | 101 | ||
| Riley Greene | 600 | 99 | 99 | 138 | ||
| Max Muncy | 570 | 100 | 59 | 72 |
Notes
• Kyle Tucker: Where in the lineup he bats is going to be huge for his value. I dropped him to fifth in the lineup but if he bats second or third, he could be the overall top bat. Hitting leadoff might drop him down for the lack of RBI.
• Julio Rodriguez: After stealing 21 bases in the first half, he only stole four in the second. Rodriguez put the stop sign on himself.
The club and Rodríguez himself are being more strategic about when to steal. Early in the season, Servais said, it was probably easier for Julio to run because people probably didn’t assume a player of his size was going to run as often as he did. So, effectively, Julio has sort of put the stop sign on himself. This isn’t something the team has mandated or anything like that. Opposing pitchers know he can run, so they’ll pay more attention to him, throw over more and vary their set time on the mound. Doesn’t mean he won’t run more, but he’ll just be smarter/more strategic about it.
I dinged him a bit but if his second-half pace is done for the entire season (projected ~16 SB), it could even be even more of a drop.
• Bo Bichette: I’m not sure the stolen bases are coming back after going 13 for 21 (62%) last season.
• Fernando Tatis Jr.: I dinged him for the unknown screwup. I have zero faith that he has done his rehab and not endangered his shoulder again while riding dirt bikes.
• Mike Trout: I just can’t put over 600 PA on him with 550 PA seeming reasonable. Here are his ranks at the different plate appearance thresholds.
PA: Rank
650: 10
600: 21
550: 28
500: 48
• Michael Harris II: There is a chance he might get platoon after hitting .238/.284/.365 with just 2 of his 19 home runs against lefties.
• Luis Robert Jr.: He has always been hurt and never accumulated over 550 PA (547 PA across three minor league levels in 2019), so I can’t put him over that number this year.
• Eloy Jimenez: I like that Jimenez will have the DH spot all to himself this year to stay healthy thereby staying 100% and in the lineup.
• Adolis Garcia: I never feel good about rostering an early bat projected for a sub-.300 OBP (.284 on Steamer) and a near .700 OPS (.712 on Steamer). I try to roster good baseball players and I’m not 100% sure Garcia is one.
• Oneil Cruz: I don’t know how to rank a guy with just 370 career plate appearances but with a 20/20 projection. I don’t believe the narrative that he improved in September. The team just stopped playing him against lefties who he struggled massively against (53% K% vs LHP) so I dinged his playing time. If a person assumes his projection holds and he gets more playing time, here are his ranks.
PA: Rank
650: 11
600: 24
550: 31
500: 54
If he gets some helium, there are some managers hoping for these extra plate appearances.
• Dansby Swanson: His plate appearances could head south depending on where he hits in his new lineup.
• Gunnar Henderson: His 580 PA seemed light since the Orioles plan on playing time while hitting in the heart of the order. If he hits there, I’d have him up. The issue is that he has never hit lefties in the minors (.956 OPS vs RHP, .697 vs LHP) and in his short MLB time (.872 OPS vs RHP, .448 vs LHP). He was not really platooned by just sitting against three of the eight lefty starters. It’s just something to track.
• Jazz Chisholm Jr.: He has never hit lefties with a career .661 OPS against them (.616 OPS vs LHP in the minors). The deal is that the Marlins were sitting him against lefties. Of the 17 lefty starters the team faced before he went on the IL, he only started in eight of them.R
• Jake McCarthy: I’m not 100% sure he is even an average hitter as seen by his .753 OPS Steamer projection. The 550 PA is a hedge, but here are his rank at different plate appearances
PA: Rank
650: 16
600: 24
550: 39
500: 57
• Cedric Mullins II: Another guy with major platoon issues (career .813 OPS vs RHP, .646 vs LHP). From July 28th on, the Orioles face 15 left-handed starters with Mullins only starting against four of them. I’m not sure if 580 is the right number of PA, but I am dropping him from some near 650 PA projections.
• Taylor Ward: Projections don’t like his playing time (sub 600 PA), so a small boost there. Also, they don’t know about him playing through a shoulder injury.
• Mitch Haniger: I don’t see him with sub-600 PA as a DH.
• Tyler O’Neill: I can’t argue too much with a 530 PA projection but if he ever gets over it he has a nice upside based on more volume.
• Tommy Edman: Not a great hitter (career .732 OPS) especially against righties (career .701 OPS). Sometimes he struggles and then gets buried in the ninth spot. When batting later in the lineup, he doesn’t steal as much with 21 SB in 400 PA while leading off and 2 SB in 112 PA batting ninth.
• Anthony Santander: For a 28-year-old nearing 200 career IL days to be projected for over 650 PA seems high.
• Christian Walker: I dinged him down on the +650 PA projection but his ability to hit 30 HR has him way higher than expected in my rankings.
• Thairo Estrada: He is not a good hitter (.733 OPS Steamer Projection) so he might lose playing time if he struggles.
• Javier Báez: I don’t know how to rank him… at all. Anyone with the potential for 20 HR and 10 SB is going to have decent Roto value. Baez’s projection is similar to Jeremy Peña and Ian Happ’s and I don’t have a problem with their ranks.
• Joey Meneses: I think he’s going to get an everyday chance to play next season, so I moved up the playing time. What I don’t agree with is his 25 to 30 HR projection with a ~.265 AVG. Some fantasy managers are getting a Frank Schwindel vibe while I’m seeing some similarities to Jose Bautista. The right course of action is to be in between.
• Giancarlo Stanton: If he’s healthy and the plate appearances jump, he would leap up to about 50th with just 600 PA.
• Triston Casas: I’m worried that the Red Sox will bring in a decent first-base option or play Hosmer if Casas struggles for a week or two.
Jeff, one of the authors of the fantasy baseball guide,The Process, writes for RotoGraphs, The Hardball Times, Rotowire, Baseball America, and BaseballHQ. He has been nominated for two SABR Analytics Research Award for Contemporary Analysis and won it in 2013 in tandem with Bill Petti. He has won four FSWA Awards including on for his Mining the News series. He's won Tout Wars three times, LABR twice, and got his first NFBC Main Event win in 2021. Follow him on Twitter @jeffwzimmerman.
Really seems that Haniger is being undervalued in the draft and holds I’ve been doing-I’m bumping him up!
I love Mitch and admire his work ethic but makes me nervous that he will play a full season. He took forever to come back both from COVID and the ankle sprain last year and he wasn’t the usual Haniger. After the All Star game last year, Mitch struck out 56 times in 186 ABs–over 30% of the time vs a career average of less than 27%. His power was down, too, with a slugging % of .418 vs his career mark of .476. I sure hope he does well as Giant, but at 32, despite his manic conditioning, he may be on the downside of this career. An an M’s fan, I’m sorry to see him go, but Teo Hernandez is a clear upgrade.
I assume that, given the rankings, you think the ’22 Castellanos is more likely than the ’21 Castellanos to show up in ’23, eh? I think I’d rather gamble on him to have a stronger go of things than, say, Casas or Estrada.
I’ll push back a little bit on your Jake McCarthy note. A .753 OPS in this offensive environment translates roughly to a 110-115 WRC+
He could end up as Whit Merrifield or Oscar Mercado. Or somewhere in-between.
He has middling plate discipline (subpar SwStr%/Whiff and meh Chase Rate/O-Swing rates) and power (bad Barrel %, meh Max EV) and his defense did not grade out well last year. He has definite 4th outfielder risk
If you dinged Julio for tapering off on SB….did you also account for the bat being absolute fire after the slow start? I wonder if it works out as a wash as long as he manages high teens in steals.
not that #7 is any slight…..#2-#9 seem pretty interchangeable to me.
Just curious why Oscar Gonzalez in, versus guys like Andrew Vaughn and Rutschman out?
I did no catchers (in the notes) and Vaughn was 103
Put a different way, Gonzalez seems somewhat worthy of an 81 ranking. What do you like about him?
Unworthy
What’s wrong with his near 20 HR and 0 SB with a .275? That’s right in line with Ty France and Jose Abreu but from an OF spot.
What’s *potentially* wrong is that Gonzalez had the 3rd highest O-Swing% of all hitters (min. 300 PA), just after Javy Baez and Luis Robert. He doesn’t swing and miss as much as the former, but the latter has seen his damage on contact decrease noticeably as pitchers simply threw him less and less pitches in the zone, which I think is very likely to be how the league adjusts to Gonzalez next year. And Gonzalez, unlike those two, doesn’t have the speed to beat out infield singles on the sliders he rolls over on. I’m not saying he’s cooked, but I think he’s very much primed for a sophomore slump for at least a big initial chunk of the year before he adjusts.
Appreciate the ranks and comments. How far off the list was Miranda? Thought he did well his first year and with a solid BB/K rate and decent power (upside based on his last Minor league season?), any chance we see him improve on that? Had been thinking of making him a target if I miss out on top options.
The next 100 will come next week. The ranking is fairly easy, the comments take time.
Miranda is at 109 with some C’s ahead of him. His projected PA are at sub-.600 so he could move up. Personally, I’d boost him where he’s qualified at 2 positions.
Can you expand on Meneses’s similarities to Jose Bautista? Is it just the late bloomer with power thing?
Someone who comes out of nowhere late in their career. Will they repeat?
I don’t have any idea why, but I just can’t buy Tucker that early. I just can’t.
One of the game’s best players was surprised I didn’t have him #1. With just a few more PA, he’s in that spot.
Another person’s thoughts on him:
https://twitter.com/baseballpods/status/1600658813429944321?s=20
Also, how far off was Brendan Rogers? He was awful in March and April, then looked like he really put it together before fading in September entirely.
I ding the hell out of most Rockies. They are completely unstartable on the road.
In Rodger’s case, he can’t hit righties (career .666 OPS against them). I’m not sure he’s rosterable at all on top of my normal hit.
How about Kris Bryant?
The most interesting part of this article for me was the throwaway line about lack of positional scarcity (except catchers). Do you have articles/research you could share on this? I know that the FG auction calculator still believes in positional scarcity, although to a small degree.
I personally run the numbers and there are plenty of players at each position once the Util spot fills that no one needs to be boosted up.
I would need someone to prove it is now an issue for me to change my stance.
Why do I feel Yordan should be higher? Complete hitter with no holes and 80 raw power. Also Wander Franco is gonna be a steal if he’s getting drafted as the 50th hitter.
Wander would be fine if he hits his projection. I am unsure if I think that is what he is going to do, however.
What do you think he will
Produce?
sign me up for Bregman at #46, seems like quite a bargain
Harris 100% not getting platooned. If he struggles, and the Braves add another CF capable player, he could lose playing time, but that’s different from entering the season in a prospective platoon imo.
Why is Will Smith ranked?
I know it is apples to oranges, but Franco as 50 on your list and tied for 5 in Streamer WAR for non-catchers is a striking delta. Is Franco an elite defender at SS? Is there something else I’m missing?
Given the quality of Harris’ defense I can’t see him being platooned at all. Gold Glove caliber Center Fielders are allowed to have holes in their offensive game.
And that terrible 649 OPS he has against lefties? There were 21 center fielders last year who had at least 200 PAs with an overall OPS under 649.
“The team just stopped playing him against lefties who he struggled massively against (53% K% vs LHP) so I dinged his playing time.”
Dude played 29 of 32 games in Sep…”just stopped playing him” is kind of an idiotic thing to say, even IF they sat him for those 3 games because of match ups. God, anyone paying for you info is better off rolling those bills up and shoving them up their ass, at this point. “Great insight”.
There are ways to disagree without being such a d*ck. Do people experience this kind of nasty recourse in their everyday lives, so they feel the need to take it out on others online? Good grief.
Woah, easy Fleshwound. Oneil Cruz is going to be pretty good once he reels in the K’s. Nobody thought he’d hit for average as a rookie. I can see him sitting s against some lefties to start the year but the talent is undeniable. A middle infielder Aaron Judge clone. Probably some more bumps along the way but I’d climb aboard the Cruz booster train. Wish he was on any team other than the Pirates.
Did it by eye but counted ~39 outfield eligibles and ~19 SS eligibles. There’s definitely positional scarcity in NFBC style 15 team leagues by those numbers. What calculations are you making when you say there’s no positional scarcity?
Taylor Ward’s season can be broken into 3 parts
Before the pinched nerve in his neck (Apr 16-May 20)
30 games, .370 AVG, .481 OBP, .713 SLG, 1.194 OPS
During the pinched nerve (May 26-Sept 4)
77 games, .215 AVG, .292 OBP, .327 SLG, .619 OPS
After the pinched nerve (Sept 5-Oct 5)
28 games, .369 AVG, .412 OBP, .621 SLG, 1.034 OPS
I’m expecting a 950+ OPS this season. A regression from last seasons healthy numbers