If you thought last year’s fantasy baseball drafts were weird, welcome to 2021 where we know even less than usual (and did we really ever know that much?). That doesn’t mean we didn’t put a lot of careful thought into our top 300 rankings — it just means it’s more difficult than ever to balance previous stats (particularly last season) and what to expect this season, both in terms of performance and missed games. Nevertheless, there are still top-tier stars and late-round sleepers, and fantasy owners need to know how to discern between them and all the potential busts in between.

At the very least, it’s just fun to look at rankings and think about how much smarter you are than the person who put them together, right? So, whether you are earnestly seeking help with your draft or you just want to feel superior to the fantasy baseball pros, we’re here for you.

**2021 FANTASY BASEBALL RANKINGS:Catcher | First | Second | Third | Short | Outfield | Starter | Reliever**

Our big board starts with a bit of a surprise, as we’re tapping Juan Soto as our No. 1 player. Many will opt for Ronald Acuna Jr. because of his higher SB potential, but Soto has a slightly higher average and RBI upside while also showing the ability to steal 15-20 SBs. You’re going to be a winner with whoever you go with — and that includes Mookie Betts or even Fernando Tatis Jr. — but it’s always fun to debate the top spot, so have at it.

The first few rounds are obviously going to be strong, and depending how you like to build your team, you could go in a variety of directions. Outfield, shortstop and third base are all particularly loaded positions — and first base and starting pitcher are strong, as well — but even more than deciding what positions to target, figuring out which *categories *to target will be key. Steals are once again at a bit of a premium, so getting at least one 20-SB guy early should be a priority for many owners.

Regardless of your early-round draft strategy, chances are the top 30 or 40 players in our rankings will be most of the top 30 or 40 players selected in your draft. After that, though, anything goes. This top 300 isn’t a glorified mock draft — just a rough outline for the overall value of players in a vacuum.

We generally don’t value pitchers quite as highly as some other fantasy sites. This year, that’s probably more prudent than ever, as no pitcher threw many innings last year and serious injuries are even more of a risk. Throw in the unpredictability of wins and saves, as well as the variance of WHIP and ERA, and you have an extremely volatile position. There also seem to be more closer committees this year, so reaching for RPs doesn’t really make sense.

Ultimately, it all comes down to your league’s settings, draft strategy, and the players you already have on your team. It’s all about being flexible and pivoting based on position and category needs. That might mean it makes more sense to draft someone ranked 180 over someone ranked 130 on this list, but that’s just how it works in fantasy baseball.

If you don’t know that by now, then you’ll probably have a lot of fun making fun of these rankings.

We’ll be updating this list frequently as needed, so check back for the latest player movement throughout the spring.

## Fantasy Baseball Rankings: Top 300 cheat sheet

*Rankings based on 5×5 H2H leagues with ERA, WHIP, Ks, Wins, and Saves as pitching categories and Rs, HRs, RBIs, SBs, and Batting Average as hitting categories. *

*Position eligibility based on Yahoo’s default settings*

** = player not eligible at a position on draft day but expected to play there during the season*

Rank |
Player (bats/throws) |
Age (as of 4/1) |
Team |
Position(s) |

1 | Juan Soto (L) | 22 | Nationals | OF |

2 | Ronald Acuna Jr. (R) | 23 | Braves | OF |

3 | Mookie Betts (R) | 28 | Dodgers | OF |

4 | Fernando Tatis Jr. (R) | 22 | Padres | SS |

5 | Christian Yelich (L) | 29 | Brewers | OF |

6 | Trea Turner (R) | 27 | Nationals | SS |

7 | Mike Trout (R) | 29 | Angels | OF |

8 | Trevor Story (R) | 28 | Rockies | SS |

9 | Jose Ramirez (S) | 28 | Indians | 3B |

10 | Shane Bieber (R) | 25 | Indians | P |

11 | Jacob deGrom (R) | 32 | Mets | P |

12 | Francisco Lindor (S) | 27 | Mets | SS |

13 | Manny Machado (R) | 28 | Padres | 3B, SS |

14 | Freddie Freeman (L) | 31 | Braves | 1B |

15 | Cody Bellinger (L) | 25 | Dodgers | 1B, OF |

16 | Anthony Rendon (R) | 30 | Angels | 3B |

17 | Alex Bregman (R) | 27 | Astros | 3B, SS |

18 | Trevor Bauer (R) | 30 | Dodgers | P |

19 | Gerrit Cole (R) | 30 | Yankees | P |

20 | Bryce Harper (L) | 28 | Phillies | OF |

21 | Jose Abreu (R) | 34 | White Sox | 1B |

22 | Pete Alonso (R) | 26 | Mets | 1B |

23 | DJ LeMahieu (R) | 32 | Yankees | 1B, 2B, 3B |

24 | Eugenio Suarez (R) | 31 | Reds | 3B |

25 | Nolan Arenado (R) | 29 | Cardinals | 3B |

26 | Xander Bogaerts (R) | 28 | Red Sox | SS |

27 | Yu Darvish (R) | 34 | Padres | P |

28 | Max Scherzer (R) | 36 | Nationals | P |

29 | Luis Robert (R) | 23 | White Sox | OF |

30 | Bo Bichette (R) | 23 | Blue Jays | SS |

31 | Adalberto Mondesi (S) | 25 | Royals | SS |

32 | Kyle Tucker (L) | 24 | Astros | OF |

33 | Trent Grisham (L) | 24 | Padres | OF |

34 | Rafael Devers (L) | 24 | Red Sox | 3B |

35 | Aaron Judge (R) | 28 | Yankees | OF |

36 | George Springer (R) | 31 | Blue Jays | OF |

37 | Luis Castillo (R) | 28 | Reds | P |

38 | Walker Buehler (R) | 26 | Dodgers | P |

39 | Eloy Jimenez (R) | 24 | White Sox | OF |

40 | Keston Hiura (R) | 24 | Brewers | 1B*, 2B |

41 | Whit Merrifield (R) | 32 | Royals | 2B, OF |

42 | Blake Snell (L) | 28 | Padres | P |

43 | Aaron Nola (R) | 27 | Phillies | P |

44 | J.D. Martinez (R) | 33 | Red Sox | OF |

45 | Vladimir Guerrero Jr. (R) | 22 | Blue Jays | 1B, 3B |

46 | Ozzie Albies (S) | 24 | Braves | 2B |

47 | Gleyber Torres (R) | 24 | Yankees | 2B, SS |

48 | Lucas Giolito (R) | 26 | White Sox | P |

49 | Marcell Ozuna (R) | 30 | Braves | OF |

50 | Tim Anderson (R) | 27 | White Sox | SS |

51 | Brandon Woodruff (R) | 28 | Brewers | P |

52 | Clayton Kershaw (L) | 33 | Dodgers | P |

53 | Luke Voit (R) | 30 | Yankees | 1B |

54 | Paul Goldschmidt (R) | 33 | Cardinals | 1B |

55 | Anthony Rizzo (L) | 31 | Cubs | 1B |

56 | Sonny Gray (R) | 32 | Reds | P |

57 | Corey Seager (L) | 26 | Dodgers | SS |

58 | Jack Flaherty (R) | 25 | Cardinals | P |

59 | J.T. Realmuto (R) | 30 | Phillies | C |

60 | Nelson Cruz (R) | 40 | Twins | UTIL |

61 | Yordan Alvarez (L) | 23 | Astros | OF |

62 | Jorge Soler (R) | 29 | Royals | OF |

63 | Stephen Strasburg (R) | 32 | Nationals | P |

64 | Charlie Blackmon (L) | 34 | Rockies | OF |

65 | Zack Greinke (R) | 37 | Astros | P |

66 | Brandon Lowe (L) | 26 | Rays | 1B, 2B, OF |

67 | Lourdes Gurriel Jr. (R) | 27 | Blue Jays | 2B, OF |

68 | Joey Gallo (L) | 27 | Rangers | OF |

69 | Javier Baez (R) | 28 | Cubs | SS |

70 | Marcus Semien (R) | 30 | Blue Jays | 2B*, SS |

71 | Starling Marte (R) | 32 | Marlins | OF |

72 | Liam Hendricks (R) | 32 | White Sox | RP |

73 | Josh Hader (L) | 26 | Brewers | RP |

74 | Franmil Reyes (R) | 25 | Indians | OF |

75 | Matt Olson (L) | 27 | A’s | 1B |

76 | Nick Castellanos (R) | 29 | Reds | OF |

77 | Michael Conforto (L) | 28 | Mets | OF |

78 | Giancarlo Stanton (R) | 31 | Yankees | OF |

79 | Rhys Hoskins (R) | 28 | Phillies | 1B |

80 | James Karinchak (R) | 25 | Indians | RP |

81 | Kenta Maeda (R) | 32 | Twins | P |

82 | Corbin Burnes (R) | 26 | Brewers | P |

83 | Carlos Correa (R) | 26 | Astros | SS |

84 | Aroldis Chapman (L) | 33 | Yankees | RP |

85 | Jose Altuve (R) | 30 | Astros | 2B |

86 | Cavan Biggio (L) | 25 | Blue Jays | 2B, 3B, OF |

87 | Brad Hand (L) | 31 | Nationals | RP |

88 | Hyun Jin Ryu (L) | 34 | Blue Jays | P |

89 | Tyler Glasnow (R) | 27 | Rays | P |

90 | Raisel Iglesias (R) | 31 | Angels | RP |

91 | Edwin Diaz (R) | 27 | Mets | RP |

92 | Ketel Marte (S) | 27 | D-backs | 2B, SS, OF |

93 | Max Muncy (L) | 30 | Dodgers | 1B, 2B, 3B |

94 | Mike Moustakas (L) | 32 | Reds | 1B, 2B, 3B |

95 | Carlos Carrasco (R) | 34 | Mets | P |

96 | Jesus Luzardo (L) | 23 | A’s | P |

97 | Zac Gallen (R) | 25 | D-backs | P |

98 | AJ Pollock (L) | 33 | Dodgers | OF |

99 | Matt Chapman (R) | 27 | A’s | 3B |

100 | Kris Bryant (R) | 29 | Cubs | 3B, OF |

101 | Yoan Moncada (S) | 25 | White Sox | 3B |

102 | Zach Plesac (R) | 26 | Indians | P |

103 | Patrick Corbin (L) | 31 | Nationals | P |

104 | Kyle Lewis (R) | 25 | Mariners | OF |

105 | Will Smith (R) | 26 | Dodgers | C |

106 | Salvador Perez (R) | 30 | Royals | C |

107 | Josh Donaldson (R) | 35 | Twins | 3B |

108 | Dylan Moore (R) | 28 | Mariners | 2B, 3B, SS, OF |

109 | Christian Walker (R) | 30 | D-backs | 1B |

110 | Ryan Pressly (R) | 32 | Astros | RP |

111 | Kenley Jansen (R) | 33 | Dodgers | RP |

112 | Kyle Hendricks (R) | 31 | Cubs | P |

113 | Jeff McNeil (L) | 28 | Mets | 2B, 3B, OF |

114 | Ian Happ (S) | 26 | Cubs | 2B, 3B, OF |

115 | Nick Solak (R) | 25 | Rangers | 2B, 3B, OF |

116 | Eddie Rosario (L) | 29 | Indians | OF |

117 | Randy Arozarena (R) | 26 | Rays | OF |

118 | Dinelson Lamet (R) | 28 | Padres | P |

119 | Nick Anderson (R) | 30 | Rays | RP |

120 | Kirby Yates (R) | 34 | Blue Jays | RP |

121 | Mike Yastrzemski (L) | 30 | Giants | OF |

122 | Austin Meadows (L) | 25 | Rays | OF |

123 | Victor Robles (R) | 23 | Nationals | OF |

124 | Tommy Pham (R) | 33 | Padres | OF |

125 | Wil Myers (R) | 30 | Padres | OF |

126 | Devin Williams (R) | 26 | Brewers | RP |

127 | Archie Bradley (R) | 28 | Phillies | RP |

128 | German Marquez (R) | 26 | Rockies | P |

129 | Charlie Morton (R) | 37 | Braves | P |

130 | Jean Segura (R) | 31 | Phillies | 2B, 3B, SS |

131 | Marcus Stroman (R) | 29 | Mets | P |

132 | Zack Wheeler (R) | 30 | Phillies | P |

133 | Byron Buxton (R) | 27 | Twins | OF |

134 | Richard Rodriguez (R) | 31 | Pirates | RP |

135 | Drew Pomeranz (L) | 32 | Padres | RP |

136 | Nick Senzel (R) | 25 | Reds | OF |

137 | Michael Brantley (L) | 33 | Astros | OF |

138 | Chris Paddack (R) | 25 | Padres | P |

139 | Jose Berrios (R) | 26 | Twins | P |

140 | James Paxton (L) | 32 | Mariners | P |

141 | Alec Bohm (R) | 24 | Phillies | 1B, 3B |

142 | Yasmani Grandal (S) | 32 | White Sox | C, 1B |

143 | Willson Contreras (R) | 28 | Cubs | C |

144 | Gary Sanchez (R) | 28 | Yankees | C |

145 | Trevor Rosenthal (R) | 30 | A’s | RP |

146 | Justin Turner (R) | 36 | Dodgers | 3B |

147 | Eduardo Escobar (S) | 32 | D-backs | 2B, 3B |

148 | Ian Anderson (R) | 22 | Braves | P |

149 | Joe Musgrove (R) | 28 | Padres | P |

150 | Greg Holland (R) | 35 | Royals | RP |

151 | Matt Barnes (R) | 30 | Red Sox | RP |

152 | Trey Mancini (R) | 29 | Orioles | 1B, OF |

153 | Austin Riley (R) | 23 | Braves | 3B, OF |

154 | Miguel Sano (R) | 27 | Twins | 1B, 3B |

155 | Giovanny Gallegos (R) | 29 | Cardinals | RP |

156 | Max Fried (L) | 27 | Braves | P |

157 | Ryan McMahon (L) | 26 | Rockies | 1B, 2B, 3B |

158 | Josh Bell (S) | 28 | Nationals | 1B |

159 | Jose Leclerc (R) | 27 | Rangers | RP |

160 | Amir Garrett (L) | 28 | Reds | RP |

161 | Taylor Rogers (L) | 30 | Twins | RP |

162 | Cristian Javier (R) | 24 | Astros | P |

163 | Triston McKenzie (R) | 23 | Indians | P |

164 | Max Kepler (L) | 28 | Twins | OF |

165 | Ryan Mountcastle (R) | 24 | Orioles | 1B, OF |

166 | Dominic Smith (L) | 25 | Mets | 1B, OF |

167 | Anthony Santander (S) | 26 | Orioles | OF |

168 | Teoscar Hernandez (R) | 28 | Blue Jays | OF |

169 | Ke’Bryan Hayes (R) | 24 | Pirates | 3B |

170 | Gio Urshela (R) | 29 | Yankees | 3B |

171 | Kevin Gausman (R) | 31 | Giants | P |

172 | Zach Eflin (R) | 26 | Phillies | P |

173 | Framber Valdez (L) | 27 | Astros | P |

174 | Lance Lynn (R) | 33 | White Sox | P |

175 | Eric Hosmer (L) | 31 | Padres | 1B |

176 | Yuli Gurriel (R) | 36 | Astros | 1B, 3B |

177 | Anthony Bass (R) | 33 | Marlins | RP |

178 | Joc Pederson (L) | 28 | Cubs | 1B, OF |

179 | Marco Gonzales (L) | 29 | Mariners | P |

180 | Frankie Montas (R) | 28 | A’s | P |

181 | Kolten Wong (L) | 30 | Brewers | 2B |

182 | Tommy Edman (S) | 25 | Cardinals | 2B, 3B, SS, OF |

183 | Hunter Renfroe (R) | 29 | Red Sox | OF |

184 | Kyle Schwarber (L) | 28 | Nationals | OF |

185 | Tony Gonsolin (R) | 26 | Dodgers | P |

186 | Didi Gregorius (L) | 31 | Phillies | SS |

187 | Dansby Swanson (R) | 27 | Braves | SS |

188 | Dylan Bundy (R) | 29 | Angels | P |

189 | David Price (L) | 35 | Dodgers | P |

190 | Pablo Lopez (L) | 25 | Marlins | P |

191 | Sixto Sanchez (R) | 22 | Marlins | P |

192 | Shohei Ohtani (L) | 26 | Angels | UTIL |

193 | Jesus Aguilar (R) | 30 | Marlins | 1B |

194 | Jared Walsh (L) | 27 | Angels | 1B |

195 | Clint Frazier (R) | 26 | Yankees | OF |

196 | Aaron Hicks (S) | 31 | Yankees | OF |

197 | Alex Verdugo (L) | 24 | Red Sox | OF |

198 | Ramon Laureano (R) | 26 | A’s | OF |

199 | Garrett Hampson (R) | 26 | Rockies | 2B, SS, OF |

200 | Nick Madrigal (R) | 24 | White Sox | 2B |

201 | Aaron Civale (R) | 25 | Indians | P |

202 | Eduardo Rodriguez (L) | 27 | Red Sox | P |

203 | Leody Taveras (S) | 22 | Rangers | OF |

204 | Corey Kluber (R) | 34 | Yankees | P |

205 | Julio Urias (L) | 24 | Dodgers | P |

206 | Andrew Heaney (L) | 30 | Angels | P |

207 | Sean Murphy (R) | 26 | A’s | C |

208 | Kole Calhoun (L) | 33 | D-backs | OF |

209 | Randal Grichuk (R) | 29 | Blue Jays | OF |

210 | Mitch Haniger (R) | 30 | Mariners | OF |

211 | Diego Castillo (R) | 27 | Rays | RP |

212 | Christian Vazquez (R) | 30 | Red Sox | C, 1B |

213 | Daulton Varsho (L) | 24 | D-backs | C, OF |

214 | Jordan Hicks (R) | 24 | Cardinals | RP |

215 | Alex Colome (R) | 32 | Twins | RP |

216 | Kyle Seager (L) | 33 | Mariners | 3B |

217 | Hunter Dozier (R) | 29 | Royals | 1B, 3B, OF |

218 | Craig Kimbrel (R) | 32 | Cubs | RP |

219 | Joakim Soria (R) | 36 | D-backs | RP |

220 | Rafael Montero (R) | 30 | Mariners | RP |

221 | Willy Adames (R) | 25 | Rays | SS |

222 | Amed Rosario (R) | 25 | Indians | SS |

223 | Elvis Andrus (R) | 32 | A’s | SS |

224 | Chris Bassitt (R) | 32 | A’s | P |

225 | Josh Lindblom (R) | 33 | Brewers | P |

226 | Jake Cronenworth (L) | 27 | Padres | 1B, 2B, SS |

227 | Will Smith (L) | 31 | Braves | RP |

228 | Jeimer Candelario (S) | 27 | Tigers | 1B, 3B |

229 | Tyler Mahle (R) | 26 | Reds | P |

230 | Gavin Lux (L) | 23 | Dodgers | 2B |

231 | Shohei Ohtani (R) | 26 | Angels | P |

232 | Griffin Canning (R) | 24 | Angels | P |

233 | Daniel Bard (R) | 35 | Rockies | RP |

234 | Emilio Pagan (R) | 29 | Padres | RP |

235 | Travis d’Arnaud (R) | 32 | Braves | C, 1B |

236 | Mitch Garver (R) | 30 | Twins | C |

237 | Dallas Keuchel (L) | 33 | White Sox | P |

238 | Lance McCullers (R) | 27 | Astros | P |

239 | Mike Soroka (R) | 23 | Braves | P |

240 | Isiah Kiner-Falefa (R) | 26 | Rangers | C, 3B, SS |

241 | Jake McGee (L) | 34 | Giants | RP |

242 | Corey Dickerson (R) | 31 | Marlins | OF |

243 | Andrew McCutchen (R) | 34 | Phillies | OF |

244 | Andrew Benintendi (L) | 26 | Royals | OF |

245 | Stefan Crichton (R) | 29 | D-backs | RP |

246 | Sean Doolittle (L) | 34 | Reds | RP |

247 | Austin Nola (R) | 31 | Padres | C, 1B, 2B |

248 | Chris Archer (R) | 32 | Rays | P |

249 | Dane Dunning (R) | 26 | Rangers | P |

250 | Jose Urquidy (R) | 25 | Astros | P |

251 | Jesse Winker (L) | 27 | Reds | OF |

252 | Nate Lowe (L) | 25 | Rangers | 1B |

253 | Bobby Dalbec (R) | 25 | Red Sox | 1B |

254 | Justin Upton (R) | 33 | Angels | OF |

255 | Willie Calhoun (L) | 26 | Rangers | OF |

256 | Victor Reyes (S) | 26 | Tigers | OF |

257 | Spencer Turnbull (R) | 28 | Tigers | P |

258 | Sandy Alcantara (R) | 25 | Marlins | P |

259 | Dustin May (R) | 23 | Dodgers | P |

260 | Jordan Montgomery (L) | 28 | Yankees | P |

261 | Chris Sale (L) | 32 | Red Sox | P |

262 | Khris Davis (R) | 33 | Rangers | UTIL |

263 | Joey Votto (L) | 37 | Reds | 1B |

264 | Brandon Belt (L) | 32 | Giants | 1B, OF |

265 | Carlos Santana (S) | 34 | Royals | 1B |

266 | Andrew Vaughn (R) | 22 | White Sox | 1B |

267 | Manuel Margot (R) | 26 | Rays | OF |

268 | Deivi Garcia (R) | 21 | Yankees | P |

269 | Adbert Alzolay (R) | 26 | Cubs | P |

270 | Justus Sheffield (L) | 24 | Mariners | P |

271 | Jonathan Schoop (R) | 29 | Tigers | 2B |

272 | Paul DeJong (R) | 27 | Cardinals | SS |

273 | Dylan Carlson (S) | 22 | Cardinals | OF |

274 | Austin Hays (R) | 25 | Orioles | OF |

275 | Adam Eaton (L) | 32 | White Sox | OF |

276 | Lorenzo Cain (R) | 34 | Brewers | OF |

277 | Michael Pineda (R) | 32 | Twins | P |

278 | Drew Smyly (L) | 31 | Braves | P |

279 | Sean Manaea (L) | 29 | A’s | P |

280 | Jorge Polanco (S) | 27 | Twins | SS |

281 | Carter Kieboom (R) | 23 | Nationals | 3B, SS |

282 | Noah Syndergaard (R) | 28 | Mets | P |

283 | Luis Severino (R) | 27 | Yankees | P |

284 | Rougned Odor (L) | 27 | Rangers | 2B, 3B* |

285 | Bryan Garcia (R) | 25 | Tigers | RP |

286 | Hunter Harvey (R) | 26 | Orioles | RP |

287 | Jonathan Villar (S) | 29 | Mets | 2B, SS |

288 | Jon Berti (R) | 30 | Marlins | 2B, 3B, SS, OF |

289 | Michael Kopech (R) | 24 | White Sox | P |

290 | Raimel Tapia (L) | 27 | Rockies | OF |

291 | Gregory Polanco (L) | 29 | Pirates | OF |

292 | Avisail Garcia (R) | 29 | Brewers | OF |

293 | David Peralta (L) | 33 | D-backs | OF |

294 | Willi Castro (S) | 23 | Tigers | 3B, SS |

295 | Brady Singer (R) | 24 | Royals | P |

296 | Elieser Hernandez (R) | 25 | Marlins | P |

297 | David Dahl (L) | 27 | Rangers | OF |

298 | Mike Minor (L) | 33 | Royals | P |

299 | Caleb Smith (L) | 29 | D-backs | P |

300 | Jorge Alfaro (R) | 27 | Marlins | C |