We are about a third of the way through the season and can feel a little more confident in the data we’ve gathered, including data on players who have done something very different than expected. These rankings will now place more credence in these new trends where appropriate.
- As a reminder, these rankings are geared toward a standard, daily, 12-team H2H redraft league, as that is typically the most popular fantasy baseball format. They will only factor in the five standard categories: Runs, RBI, Home Runs, Batting Average, and Stolen Bases.
- I would recommend not paying super close attention to the specific ranks of each player, and honing in more on the respective tiers that they’re in. Each tier represents a grouping of players that I think could arguably perform at a similar level, and/or carry similar levels of risk in terms of injury concerns or playing time obstacles. If Player X is ranked at No. 55 and Player Y is ranked at No. 65, but they’re in the same tier, it means that I personally prefer Player X, but think there’s a valid argument to be made for Player Y performing just as well.
- I take rankings like this as more of an art than a science. Every person’s rankings are influenced by their own biases, strategic philosophies, determinations of risk, and projections. It’s why no two rankings are ever exactly alike. My way of evaluating and ranking players has worked out well for me over the years, but it might not be a great fit for you. I can’t possibly predict your team’s specific needs, your league mates’ player evaluations, or your current waiver wire, and if I could, it’d be weird. In a bad way.
- This is a safe space for me where I answer to no one but myself…and you if you leave a comment.
- I’m doing my best to use five starts or 10 appearances as the threshold for positional eligibility. I have not included presumed eligibilities based on likely new positions, but once those eligibilities are earned, I’ll add them in. This is just a maintenance thing and we will update eligibility throughout the season. Feel free to let me know if I’m missing any!
Ranking Philosophy
To keep things in the same ilk, here are a couple of notes on how I generally evaluate hitters before we dive in:
- In 12-team formats, I just don’t see much value in guys who only provide stolen bases. It’s an important category, especially in Roto, but in shallower formats, there are too many other (and better) ways to get the steals you need without sacrificing production in the other categories.
- If I want to get some insight on whether what I’m seeing is new or if it’s just normal fluctuation, I’d use my favorite tool—the rolling chart, which I’ll also reference as appropriate. You can also get rolling charts from sources like FanGraphs or Baseball Savant. If you have any questions about how to do that or how to read these charts, reach out to me!
- No stat is an island and they should all be taken in proper context. For ranking purposes, the primary starting points I use are plate discipline, wRC+, quality of contact metrics (also known as Statcast batted ball data), lineup context, and the skills we can measure using tools such as our PLV Hitter Attributes (available for PL Pro members). I also use various projections (some free, some I buy) and dollar value generators.
- Positional eligibility, and specifically multi-eligibility, is neat but also isn’t a huge factor in many 10- and 12-team leagues anymore due to the prevalence of multi-eligible players. It’s of more value in deeper contests like the NFBC, or in leagues with limited roster moves (draft and hold leagues, transaction limits/costs, extremely short benches, etc.), but even then the value is fairly situational and context-dependent.
- On a similar note, I don’t penalize players for only qualifying in the utility slot. At most, it is a mild inconvenience if a DH-only player is available at a great value and you already have filled your utility spots.
- Anyone talented enough to make it to the big leagues can be brilliant or putrid for 50 to 100 at-bats—regardless of true talent. Heck, it could even last over a month with no change in potential or skill. It also could be wildly meaningful. We can’t and don’t know which of these will be true until it’s over, though track record, scouting, and trends can give us hints.
- If you’d like input on a player or have any feedback, your best bet is to reach out to me on the website formerly known as Twitter (@ifthechufits) or in the comments below!
Read The Notes
- These rankings talk about what I generally project for a player, but these rankings are not projections. They include projections but also take into account performance risk, injury risk, team context, ceiling, and floor.
Check out the Hacks & Jacks podcast featuring Scott Chu and Brett Ford, which also happened to be a finalist for Best Baseball Podcast of 2021 by the Fantasy Sports Writers Association (FSWA)!
I also host an AMA in the r/fantasybaseball subreddit every Friday starting around noon ET that lasts through the rest of the day and into the weekend, so feel free to join the fun and ask questions or make comments.
Tier 1
- As long as Shohei Ohtani and Aaron Judge are healthy, they’re the best player in their league.
Tier 2
- Corbin Carroll keeps raking and running and is now showing some improvements to his strikeout rate.
- Kyle Tucker is an unstoppable force who is well on his way to a 30/30 campaign.
- Bobby Witt Jr. drops two spots because (a) Ohtani and Judge are truly in a league of their own and (b) the second tier is full of elite talent that are showing they can be just as good.
Tier 3
- Kyle Schwarber is no longer a batting average drag.
- Vladimir Guerrero Jr. has popped a few home runs lately, but he has one of the flattest bat paths in the league and that is likely to make his home runs numbers inconsistent at best as it’s not easy to get the ball in the air with that kind of swing.
Tier 4
- Oneil Cruz is having an ugly May, but even with a 43.4% strikeout rate in his last 53 plate appearances he’s walking 18.9% of the time and has six steals. I can live with that for a little while.
- Jackson Chourio has just two home runs in his last 33 games heading into Wednesday’s action along with a .200 batting average. I am confident he will make the adjustments needed to show more consistency, but he drops in the ranks as many players of his caliber have already turned it on in 2025.
- Pete Crow-Armstrong dropped out of the leadoff spot on Happ’s return, but that’s fine. I’m mildly concerned about the climbing strikeout rate (28.6% in May) as PCA is not one to take walks, but everything else is holding up just fine so my concern is more theoretical than anything else.
- The performance can be a bit erratic, but Riley Greene has been nothing short of sensational for the last several weeks, slashing .348/.402/.719 over his last 97 plate appearances prior to Wednesday’s game. Even if the power slows down a bit, a healthy Greene should cruise into 30 home runs with strong ratios and 90+ RBI thanks to the improved offense around him.
- Julio Rodríguez’s floor is gradually rising thanks to the improved plate discipline, and I still believe there is an elite ceiling in his bat.
- I didn’t expect Alex Bregman to hit this many home runs in his new park, but I did expect the big bump in batting average thanks to that big ol’ wall he gets to aim fly balls at (though as of now he’s hitting even better on the road than at home).
Tier 5
- Welcome back, Teoscar Hernández! He should continue to be a power source and RBI machine.
- Ignore the red next to Zach Neto’s name. He’s a monster.
- CJ Abrams is a fairly streaky hitter due to his aggressive nature, though he’s been a tad more patient in 2025. You wouldn’t know it by his season-long numbers, but we’ve seen Abrams have stretches like this before. To believe Abrams has taken a step forward, he’ll either need to do this for longer OR get back to it more often.
Tier 6
- Cody Bellinger was always well suited to his new home, and he has four home runs at home already in May.
- Spencer Torkelson hasn’t been quite as hot as Bellinger, but the dramatic drop in strikeout rate combined with his steady supply of home runs gives me a lot of hope that he can continue to avoid prolonged slumps.
- Paul Goldschmidt isn’t going to give us the same raw power as the other first basemen in this tier, but his ability to pepper line drives around and focus on contact should provide more consistent results.
- Salvador Perez has been quite unlucky, but at some point that stops making you feel better. While he did hit a home run today, I worry a little about the ceiling for his counting stats as the Royals offense has been rather uninspiring so far this season, ranking 27th in wRC+ on the season (though they’ve been closer to average since the start of May).
Tier 7
- Kerry Carpenter is the premier player in a platoon. He’s been a top-50 hitter in standard formats so far and he’s more than capable of continuing that kind of output despite sitting against most lefties.
- Welcome back, Ian Happ! Leading off for a hot offense and having a walk rate is a solid combination.
- Tyler Soderstrom is still hitting the ball hard (average exit velocity of 92.6 in May), but the 28.2% strikeout rate and lack of walks is going to make it hard to produce with consistency.
Tier 8
- Isaac Paredes now has six home runs in his last nine games. This is the guy I expected, and the plate discipline remains stellar.
- Randy Arozarena and Cedric Mullins didn’t do anything specific over the last week to cause them to drop. It’s just a correction after watching things play out over the last two weeks.
- Junior Caminero’s struggles with getting the ball in the air have continued with no real sign of being corrected. I’m starting to get just a bit worried.
- Ben Rice is sitting against righties and lefties at the moment and that’s a major concern.
- Bryan Reynolds, Anthony Santander, and Adley Rutschman have all been in pretty harsh slumps for the majority of the season, and while I have long term confidence that it will get worked out, it was time to start adjusting my ranks a bit more aggressively on them.
Tier 9
- Geraldo Perdomo won’t stop hitting, and the promotion of Lawlar hasn’t impacted his playing time at all. He’s also maintained an elevated walk rate for the entirety of the season thus far, and there’s nothing I’ve seen in Perdomo’s profile that suggests any of this is overly luck-driven. Sure, his Baseball Savant xSLG is a lot lower than his real slugging, but our Pitcher List version thinks it’s far more legitimate (.465 PL xSLG vs .407 Savant xSLG).
- Iván Herrera didn’t miss a beat and our PLV stats love him. There might be something pretty special here.
- Matt McLain worries me a lot as he’s just really not good at making contact. At best, it will lead to a lot of inconsistency. At worst, it will lead to a droppable player.
Tier 10
For those of you in standard 10- and 12-team leagues, this is where you’ll start finding your replacement level at certain positions, particularly outfield and the middle infield.
- Nico Hoerner has been surprisingly good so far in 2025 despite batting sixth or seventh most nights as the Cubs have let him run. I think the runs and RBI will slow down a bit and the zero home runs is par for the course, but Hoerner is a solid second baseman that you’ll probably keep plugged in all year.
- With 50 plate appearances in the books after moving to the top of the lineup, Jacob Wilson has continued being exactly the player he was at the bottom of it, slapping singles and roping a few doubles all over the field with a bit of speed to go with it. He doesn’t hit the ball especially hard and the Athletics‘ offense is still a bit of an enigma, but Wilson can be a staple in fantasy lineups, especially if he can hold on to his current place in the batting order.
- Once you accept that there is no power in Chandler Simpson’s bat and that he isn’t going to steal 100 bases in the majors, you can finally take a breath and recognize him for what he is, which is one of the premier speed guys out there who can also give you a lift in ratios. I’d love to see Simpson lock down that leadoff spot for Tampa, but it doesn’t appear that’s in the cards at the moment as the Rays value OBP and that may never be one of Simpson’s strengths.
- Brenton Doyle has been ejected from the leadoff gig and his 52 wRC+ isn’t winning him any new fans. I’m watching this week-long homestand closely, as if he can produce for this stretch, I’d be willing to hold him on my roster through the following week. He already has two doubles and a steal through two games, so perhaps we’re seeing a bit of a turnaround for Doyle.
- I have not figured out the right place to rank Taylor Ward, who has been extremely feast or famine so far in 2025. This is already the second time we’ve seen Ward hit home runs in bunches, with five in a five game stretch back in early April and seven over his last 13 games in May. In between, however, was one of the worst 16-game stretches that has been present in the league, and it’s not the first time he’s posted a negative wRC+ in a 15-20 game sample. I think those in five outfield formats have no choice but to ride the wave, while those in shallower formats will have to ensure they’ve got the stomach to weather the storms we’ve come to expect from Ward in exchange for these crazy hot streaks.
Tier 11
- Michael Harris II has been average or worse over the last two seasons (as in a wRC+ below 100) a whole lot more than he’s been above average, and at some point we may need to assume that it’s the norm and not a slump.

- Kyle Stowers is undeniably hot, though his extremely low zone contact rate (<80% would be considered low, Stowers is currently at 76.3%) has me worried that he’s going to be prone to wild streaks. If the walk rate stays up, he’ll have a shot at consistency, but if it dips to average or worse, it will likely spell trouble.
- Welcome back, Ezequiel Tovar. He was doing all the stuff we hoped for before he went down, so I’m hoping to see him move up in these ranks in short order.
- Lourdes Gurriel Jr. and Eugenio Suárez can be wildly inconsistent and maddening to roster, but they hit in the heart of one of the best offenses in baseball.
- The dramatically improved strikeout rate for Mark Vientos has still not turned into improved results, and the fact that Vientos has struggled to pull the ball doesn’t help matters. That said, it’s hard to drop any third baseman with upside right now as the position has been incredibly difficult tom manage if you missed out on a top option in your draft.
- Kristian Campbell falls lower than any other player as he suffers his first real MLB slump. This is a powerfully descriptive moment for many young players, especially those who have largely cruised through the minor leagues. Campbell has been the worst fantasy contributor over the last 14 days when you consider his poor performance and high volume. I still have a ton of optimism about his long term trajectory, but this ugly period could last for a while.
Tier 12
- I’m willing to give it a week or so with Josh Lowe as he did get to start against one of the lefties the Rays faced this week, but I fear Lowe is more of a streaky platoon bat with speed than he is a locked-in fantasy starter. I’ll be watching the strikeout rate closely, as he’s a below average contributor when that strikeout rate approaches 30% and a very strong contributor when it’s at 25% or so.
- I was worried that what we saw from Jorge Polanco was more mirage than reality, and unfortunately that what it has appeared to be.
- With so many young catchers picking up steam, it’s hard to call J.T. Realmuto a “must hold”. I’m not sure I’m dropping him quite yet, but there are plenty of catchers I now rank above him.
- I am not a huge fan of Spencer Steer’s overall skill set from a fantasy perspective, but he has a decent lineup spot, a ton of positional flexibility, and a solid home park so he stays towards the back of the list for now.
- Hyeseong Kim stayed on the roster! I was worried he’d be sent down once Edman returned, and manager Dave Roberts has said he’ll start about half the time for now. That’s tough to hold in a shallow league, but he’s been such a sparkplug and has enough upside that I’m not exactly sprinting to the wire to replace him unless something quite enticing pops up.
- Welcome back to the majors, Matt Shaw! He has a double in all three of his starts since the callup and while questions about his swing and stance will likely come back every time he has a slump, all we care about right now is that he looks comfortable in the box and is smacking the ball around. I’ll be even more excited if he can get that average exit velocity safely above 85-86 mph (it’s currently 83.7) as anything below that is extremely tough to work with in the big leagues.
- Drake Baldwin appears to have pushed his way into a larger portion of the timeshare with Murphy and the way he’s hitting I expect even more time to come his way.
- I don’t expect Gabriel Moreno to necessarily be a locked-in starting catcher in 10-12 teamers with just one required catcher, but he’s got a decent spot in the D-Backs’ batting order and appears to have found his hit tool again so he’s well worth a stream.
- Brooks Lee is hitting in the heart of the order, and while I don’t think he’ll stick there, he’s worth a stream.
- Chase Meidroth is a slap-hitting leadoff man, which would be a more exciting profile if it wasn’t for the White Sox.
- If you’ve already dropped Nick Kurtz, that’s fine. I think he’ll find a way to make more contact eventually, but it may take longer than you can hold out, especially with how strong first base is currently.
Taxi Squad
Players are listed in no particular order. This list is not every interesting guy out there, but a running list of players who either almost made the list or have been topics of interesting conversation.
NEW FEATURE: I will put blurbs in bold if they are new to the Taxi Squad or if there’s a significant update to their note.
Catcher
- Carson Kelly (C, CHC) — Production has slowed considerably.
- Miguel Amaya (C, CHC) — Still only starts every other day but keeps hitting.
- Joey Bart (C, PIT) — Has some nice stretches for the Bucs after leaving the Giants and is a solid streamer when the matchups work out.
- Alejandro Kirk (C, TOR) — Points league catcher.
- Dillon Dingler (C, DET) — Jake Rogers is back, which will impact Dingler’s playing time enough to limit his utility to two-catcher formats.
- Ryan Jeffers (C, MIN) — Getting extra DH starts right now if you need a streamer.
- Keibert Ruiz (C, WSN) — Points league catcher.
- Sean Murphy (C, ATL) — That power outburst was fun, but he sits every third day, and catcher is deep enough that I no longer think he’s above replacement level in 12-teamers.
- Dalton Rushing (C, LAD) — The answer to the playing time question is not what we hoped for.
- Carlos Narváez (C, BOS) — Playing a bunch and swinging a hot bat, but likely just a streamer.
- Tyler Stephenson (C, CIN) — Doesn’t get many DH starts anymore, and volume was a big part of his value.
First Base
- Andrew Vaughn (1B, CWS) — The replacement level at first base has changed dramatically since draft day, and Vaughn is firmly below it in too many leagues.
- Nolan Schanuel (1B, LAA) — Would be in Tier 11 in points leagues, maybe even Tier 10 if strikeouts were harshly penalized.
- Ryan Mountcastle (1B, BAL) — The explosion of first base talent makes Mountcastle expendable in 12-teamers.
- Pavin Smith (1B/OF, ARI) — Walking much less of late and striking out more.
- Spencer Horwitz (1B/2B, PIT) — He’ll be in the everyday lineup almost immediately on his return. Has enough plate discipline and contact to be roster-worthy.
Second Base
- Luis Rengifo (2B/3B, LAA) — I’ve waited long enough to see if the steals are coming back. They aren’t.
- Edouard Julien (2B, MIN) — Back in the minors.
- Travis Bazzana (2B, CLE) — How long will the Guardians stick with Arias and Schneemann at second if the division is as competitive as last season?
- Christopher Morel (2B/3B/OF, TBR) — The production is here, but the strikeout rate is out of control. I don’t trust this.
- Jonathan India (2B/3B/OF, KCR) — Great decision-making skills can only take you so far.
- Luisangel Acuña (2B, NYM) — He’s sitting more than I’d like to see, but if that gets fixed, he can make it back to the list.
- Trevor Story (2B, BOS) — Still healthy, but looks very rough.
- Gavin Lux (2B/OF, CIN) — The hot streak was incredible but also relatively short in the grand scheme of things.
- José Caballero (2B/3B/SS/OF, TBR) — Getting some extra playing time lately and steals many bases, but that’s about it.
- Marcus Semien (2B, TEX) — Nothing about this gives me joy.
- Colt Keith (1B/2B, DET) — Playing time has fallen with the performance drop.
Third Base
- Joey Ortiz (3B/SS, MIL) — Does just enough in four of the five hitting categories to be relevant. If this list were for OBP, he might crack the end of it.
- Connor Norby (3B, MIA) — Swings hard and misses often.
- Gabriel Arias (3B, CLE) — He’s an aggressive hitter with extreme contact issues in the zone. It’s a tale as old as time and almost always turns out the same way (a streamer when hot and a drop when not).
- Caleb Durbin (3B, MIL) — Needs to turn a lot of those fly balls into liners as he does not have the pop to get those flies out of the yard very often.
- Max Muncy (3B, LAD) — You can keep holding in OBP leagues.
- Cam Smith (3B/OF, HOU) — Back to a part-time role.
- Addison Barger (3B/OF, TOR) — Pull-hitting lefty with a bunch of pop that will likely be fighting a platoon for a while.
- Dylan Moore (2B/SS/3B/OF, SEA) — Streaky utility man.
Shortstop
- Jordan Lawlar (SS, ARI) — Worth stashing in deeper formats but the playing time issue is not at all resolved as the D-Backs have a ton of players who are raking.
- Trey Sweeney (SS, DET) — Swinging a hot bat with modest pop and speed with much improved plate discipline.
- Zach McKinstry (2B/3B/SS/OF, DET) — Striking out a lot of late and not walking, which is not great for a player who has a very low ceiling.
- Tyler Fitzgerald (SS/OF, SFG) — Streaky hitter with major contact issues.
Outfield/DH
- Roman Anthony (OF, BOS) — He’s the top prospect in a top-heavy Boston system and should get a chance to play at some point this summer.
- Emmanuel Rodriguez (OF, MIN) — He’s possibly the most passive hitter I’ve ever seen, and it’s tough to make that work in the majors (especially if you have contact issues), but he hits the ball hard and has a lot of buzz right now.
- Jordan Walker (OF, STL) — If he ever hits the ball in the air, I’ll be interested. That is not what is happening as of right now.
- Mike Yastrzemski (OF, SFG) — The definition of a replacement-level fantasy outfielder in 12-teamers.
- Gavin Sheets (DH, SDP) — A platoon bat with power and contact issues. There are a lot of these guys in the league and he is certainly one of them. All of his stats are essentially from a single night.
- Michael Conforto (OF, LAD) — Droppable in mixed leagues.
- Jorge Soler (OF, LAA) — Batting third is cool but the lack of walks and increased strikeouts are brutal.
- Daulton Varsho (OF, TOR) — Love the flair and flash, but not the strikeouts or injury issues.
- Ramón Laureano (OF, BAL) — Hot bat won’t last long but hitting fourth at times so go ahead and roll the dice if you need a short-term plug in a deeper league.
IL Stashes
Players are listed by position and not by projected value.
- Thairo Estrada (2B, COL) — Should be the everyday guy again when healthy, and while it ain’t exciting, it’s honest work.
- Andrés Giménez (2B, TOR) — He’s shown flashes of being a productive player, but he’s definitely droppable.
- Ha-Seong Kim (2B/SS, TBR) — Should be back by June and ready to swipe bags.
- Nick Gonzales (2B, PIT) — I’m intrigued by the huge step forward he made with his strikeout rates last season.
- Jazz Chisholm Jr. (3B/OF, NYY) — It’s gonna be two months or so, but with third base being such a tough spot to fill, I’d hold.
- Corey Seager (SS, TEX) — Must hold.
- Carlos Correa (SS, MIN) — Concussion protocol. Seems to be progressing well, but these things aren’t always linear.
- Ronald Acuña Jr. (OF, ATL) — I think he can quickly make people forget that lackluster 2024. Let’s also not forget that he’s barely 27 and in the prime of his career.
- Mike Trout (OF, LAA) — Must hold.
- Parker Meadows (OF, DET) — Hitting the 60-day IL is rough, but he’ll play when he’s back this summer.
- Giancarlo Stanton (DH, NYY) — We have no idea when he’s even going to begin baseball activities, so he’s only relevant if you have unlimited IL spots.
- Colton Cowser (OF, BAL) — No longer a must-hold in 12-teamers.
- Victor Robles (OF, SEA) — Oof, he’s likely out until July. In leagues with a tight IL, he’s possibly a drop.
- Jonny DeLuca (OF, TBR) — Likely to miss two to four weeks, just enough time to make the Tampa Bay roster an even bigger mess than it is already.
- Matt Wallner (OF, MIN) — Hammys are always a little tricky. You don’t NEED to stash him if your IL is full, especially if it’s a format that only requires three outfielders (or four if it’s a 10-teamer).
- Lane Thomas (OF, CLE) — Not a must-hold at this time.
- Byron Buxton (OF, MIN) — Concussion protocol. Seems to be progressing well, but these things aren’t always linear.
- Yordan Alvarez (OF, HOU) — Alvarez is one of the league’s best hitters and will be worth waiting for.
- Dylan Crews (OF, WAS) — Obliques are tricky, but there’s enough raw talent here to justify holding him even with a shallow IL, assuming you don’t have it packed with guys like Seager, Alvarez, Trout, Acuña, or Jazz.
Photo by Icon Sportswire | Design by J.R. Caines (@JRCainesDesign on Twitter and @caines_design on Instagram)
