Skip to main content

Ranking MLB's Top 50 Free Agents

Headlined by Trevor Bauer, DJ LeMahieu and J.T. Realmuto, take a deep dive into the best players available this winter.

At the conclusion of an MLB season unlike any other, it's time to gear up for an offseason mired in uncertainty. The financial landscape of a league that just played almost all of its season with no fans—all while teams lay off hundreds in an effort to cut costs—makes it difficult to predict how clubs will spend this winter.

Even without the economic ramifications brought on by the COVID-19 pandemic, the on-field results of this season were likely a harbinger for a cooler-than-normal hot stove. A Rays-Dodgers World Series only underscores player development as the key to reaching great heights, not spending hundreds of millions on free agents.

In coming up with the top 50 free agents available this winter, we analyzed past performance, extrapolating this year's stats over a full season. For those who have team or player options for 2021, we had to speculate on whether or not they would end up hitting the market. For example: The Cubs are certain to pick up Anthony Rizzo's $14.5 million club option, while Giancarlo Stanton won't opt out of the $218 million left on his deal with the Yankees.

Below you'll find our ranking of the best 50 players on the market, along with the team each one fits best with.

A few notes: each player’s listed age reflects how old he will be during the 2021 season, and we’re using Baseball Reference's version of Wins Above Replacement. This page will be updated throughout the offseason as players sign with teams.

garrett richards

50. Garrett Richards, SP

Age: 33 | 2020 Stats: 2-2, 51 1/3 IP, 4.03 ERA, 21.6 K%, 8 BB%, 1.0 WAR (2.7 WAR over 162 games)

Current Team: Padres | Best Fit: Angels

Status: Agreed to a one-year, $10 million deal with the Red Sox with a $10 million club option for 2022.

After totaling 31 starts between 2016-19 due to a pair of Tommy John surgeries, Richards stayed healthy and recorded a 4.27 ERA in 10 starts this season. He's set up to sign as an innings-eater next year and beyond. With his peripherals worse than they were during his heyday with the Angels, he won’t attract the attention of the league’s heavyweights. But the former first-round pick could sign a deal with a starter-hungry team on the edge of playoff contention. Could Richards reunite with Mike Trout and Co. in Orange County?

49. Brad Miller, INF

Age: 31 | 2020 Stats: .232/.357/.451, 120 OPS+, 7 HR, 21 R, 25 RBI, 1 SB, 0.7 WAR (2.2 WAR over 162 games)

Current Team: Cardinals | Best Fit: Cardinals

Status: Agreed to a one-year deal with the Phillies.

Despite signing for just $2 million last winter, Miller served as St. Louis’s cleanup hitter for 29 of 60 games after getting off to a fast start. But the lefty was limited to a single pinch-hit appearance in the team’s wild-card series against San Diego after slashing .153/.247/.316 with two home runs and a 37% strikeout rate over his last 27 games. The journeyman is best suited as a DH or a quality bench bat going forward after making five errors in just 28 chances around the infield. He would mean more to the offensively-starved Cardinals than any other contender.

48. Kevin Pillar, OF

Age: 32 | 2020 Stats: .288/.336/.462, 107 OPS+, 6 HR, 34 R, 26 RBI, 5 SB, 0.1 WAR (0.3 WAR over 162 games)

Current Team: Rockies | Best Fit: Nationals

Status: Agreed to a one-year deal with the Mets.

Pillar has long been regarded as an elite defensive outfielder and below-average hitter, but he’s declined in the field to just a tick above average as he’s reached his 30s. In fact, the metrics say he was a little overmatched in Colorado’s spacious center field after being acquired from Boston at the deadline. The good news is Pillar posted an OPS+ above 100 for the first time in his career, though he partially owes that to a career-high .335 BABIP. The longtime outfielder fits well with a contender in need of a fourth outfielder or a lower-rung team looking for a veteran starter who could be flipped for prospects.

corey kluber

47. Corey Kluber, SP

Age: 35 | 2019 Stats: 2-3, 35 2/3 IP, 5.80 ERA, 22.6 K%, 8.9 BB%, -0.4 WAR (-1.1 WAR over 162 games)

Current Team: Rangers | Best Fit: Giants

Status: Agreed to a one-year, $11 million with the Yankees.

Rangers GM Jon Daniels indicated Texas won’t pick up Kluber’s $18.5 million option, putting a two-time Cy Young Award winner on the open market. But after his time in Arlington was limited to one inning after tearing his shoulder, which followed a fractured pitching arm that ended his final (subpar) season in Cleveland, the right-hander is a severely depreciated asset. He’ll still command at least a high seven-figure salary, and could revive his value in San Francisco’s spacious ballpark to give the Giants a high-ceiling starter they’ll need after losing several key arms to free agency.

46. Rich Hill, SP

Age: 41 | 2020 Stats: 2-2, 38 2/3 IP, 3.03 ERA, 19.9 K%, 10.9 BB%, 0.8 WAR (2.2 WAR over 162 games)

Current Team: Twins | Best Fit: Padres

Status: Agreed to a one-year, $2.5 million deal with the Rays.

Father Time is undefeated, but Hill is giving him all he can handle. In his age-40 season, Hill made eight starts for the Twins, allowing two earned runs or fewer in seven of them. His average fastball velocity dipped to under 90 mph, and hitters did more damage to it (.472 slugging percentage) while whiffing far less often (17.4%). Hill’s curveball remains effective, though, inducing a .172 batting average against. A contender in need of rotation depth would be a good fit for Hill, which could mean the Padres come calling on a one-year deal. 

45. Robbie Grossman, OF

Age: 31 | 2020 Stats: .241/.344/.482, 130 OPS+, 8 HR, 23 R, 23 RBI, 8 SB, 1.0 WAR (2.7 WAR over 162 games)

Current Team: Athletics | Best Fit: Athletics

Status: Signed a two-year, $10 million deal with the Tigers.

The switch-hitting Grossman did most of his damage against righties in 2020, batting .260/.357/.521 in 168 plate appearances. That could set him up for the preferred side of a platoon situation on his next team. Advanced metrics paint a favorable picture of him defensively, as he ranked second among qualified left fielders in outs above average. Grossman also was 8-for-9 in stolen base attempts, and posted career highs with a .241 isolated power and 37.5% hard-hit rate. The A’s would surely welcome him back, though there will likely be plenty of suitors.

44. Blake Treinen, RP

Age: 33 | 2020 Stats: 3-3, 1 SV, 25 2/3 IP, 3.86 ERA, 20.6 K%, 7.5 BB%, -0.2 WAR (-0.5 WAR over 162 games)

Current Team: Dodgers | Best Fit: Phillies

Status: Signed a two-year, $17.5 million deal with an $8 million club option for 2023 with the Dodgers.

Treinen was somewhat surprisingly designated for assignment by Oakland after a down year in 2019. The Dodgers scooped him up, and though basic numbers reveal a modest bounce-back, the underlying data shows a true return to form. Treinen rated in the 95th percentile in average exit velocity allowed (84.8 mph) and saw his groundball rate jump to 64%, the third-highest among all relief pitchers. You can put the Phillies down as potential landing spots for pretty much any reliever on the market, but Treinen would be a particularly ideal fit.

Yasiel Puig while playing for the Cincinnati Reds in 2019. He did not play for any MLB team in 2020 or 2021.

43. Yasiel Puig, OF

Age: 30 | 2019 Stats: .267/.327/.458, 99 OPS+, 24 HR, 76 R, 84 RBI, 19 SB, 1.3 WAR

Current Team: N/A | Best Fit: Red Sox

Puig curiously never signed with a team for the 2020 season after his reported one-year agreement with the Braves was voided by a positive COVID-19 test. MLB executives seem to view him in far worse standing than fans do. He may reportedly try to rebuild his stock by playing in the Dominican winter leagues. If that goes well, perhaps the Red Sox could swoop in to sign Puig to play alongside Alex Verdugo and Andrew Benintendi in a reshuffled outfield that’s expected to lose Jackie Bradley Jr. to free agency.

42. Jake McGee, RP

Age: 34 | 2020 Stats: 3-1, 0 SV, 20 1/3 IP, 2.66 ERA, 41.8 K%, 3.8 BB%, 0.4 WAR (1.1 WAR over 162 games)

Current Team: Dodgers | Best Fit: Blue Jays

Status: Agreed to a two-year, $7 million deal with the Giants.

McGee was cut by Colorado this summer after logging a 5.54 ERA during the first two seasons of an ill-fated three-year, $27 million contract. The Dodgers picked him up just a few days later and McGee responded by striking out 33 hitters while walking just three in 20 1/3 innings, holding opponents scoreless in 21 of 24 appearances. Our top-ranked lefty reliever seems like a guy the Blue Jays could pay to anchor their righty-heavy bullpen as they look to climb in the AL East.

41. Greg Holland, RP

Age: 35 | 2020 Stats: 3-0, 6 SV, 28 1/3 IP, 1.91 ERA, 27.7 K%, 6.3 BB%, 0.9 WAR (2.4 WAR over 162 games)

Current Team: Royals | Best Fit: Nationals

Status: Signed a one-year, $2.75 million deal with the Royals.

Holland has always relied on his slider, but no more so than last season. He threw the pitch a career-high 51.3% of the time in 2020, with opposing hitters batting .167 against it and whiffing 34.8% of the time. Holland’s average fastball velocity jumped up 1.3 mph from 2019 to 92.9 mph in 2020. He signed a one-year, $1.25 million deal with Kansas City last offseason after a down year, and he’s in line for a bigger payday this time around.

adam wainwright

40. Adam Wainwright, SP

Age: 39 | 2020 Stats: 5-3, 65 2/3 IP, 3.15 ERA, 20.6 K%, 5.7 BB%, 0.5 WAR (1.4 WAR over 162 games)

Current Team: Cardinals | Best Fit: Cardinals

Status: Agreed to a one-year, $8 million deal with the Cardinals.

Three years after he considered retirement, Wainwright put together a strong performance in his age-38 season, leading the Cardinals in wins, innings and strikeouts. His curveball remains elite, holding opponents to a .191 batting average and 33% whiff rate. Wainwright has said that he’d consider getting into broadcasting if he doesn’t pitch next season, and it’s hard to imagine him in anything but a Cardinals uniform.

39. J.A. Happ, SP

Age: 38 | 2020 Stats: 2-2, 49 1/3 IP, 3.47 ERA, 21.4 K%, 7.7 BB%, 1.2 WAR (3.2 WAR over 162 games)

Current Team: Yankees | Best Fit: Braves

Status: Agreed to a one-year, $8 million deal with the Twins.

Happ’s final season in pinstripes was marred near the beginning by a public squabble with the front office over his $17 million vesting option and ended with a public disagreement over how he was used in his lone postseason appearance. In between, however, it was a solid bounce-back season for the left-hander. Once Happ started taking regular rotation turns on August 29, he posted a 2.45 ERA and 3.14 FIP in 36 2/3 innings. He'd be a one-year signing in the mold of what Atlanta tried to accomplish with Cole Hamels this past season.