MLB's Most Underpaid and Overpaid Player at Every Position
With Opening Day officially delayed until at least April 9, and some industry sources looking at Memorial Day or even June as a more likely scenario, it remains to be seen when the 2020 MLB season will begin.
While uncertainty reigns across the MLB landscape and across the country as a whole amid the coronavirus outbreak, the hope remains that we can all eventually return to normal and baseball can once again serve as a welcome distraction.
With that in mind, let's continue looking ahead to the 2020 season with a rundown of the most overpaid and underpaid players at each position.
A few important notes before we get started:
- No pre-arbitration players: Players who have yet to enter arbitration will be making the league-minimum salary or close to it during the upcoming season. As such, they will all be considerable bargains and the "underpaid" portion of this article would simply be the best pre-arbitration player at each position, so those players were excluded from this conversation.
- No players outside the 40-man roster: Players like Wei-Yin Chen ($22M), Jacoby Ellsbury ($21.1M) and Zack Cozart ($12.7M) who were released by their teams and whose salaries are now a sunk cost were not included on this list. The same goes for high-priced players like Yasmany Tomas ($17M) and Rusney Castillo ($14.3M) who have been removed from the 40-man roster.
With that out of the way, let's get started.
Most Underpaid: Roberto Perez, Cleveland Indians
2020 Salary: $3.6 million
Perez signed a four-year, $9 million extension at the start of the 2017 season when he was still serving as the light-hitting backup to Yan Gomes. When Gomes was traded to the Washington Nationals last offseason, Perez took over as the Indians' primary catcher.
The 31-year-old responded to a career-high 449 plate appearances by posting a 99 OPS+ with 24 home runs and 63 RBI. That uptick in offensive production, along with his usual stellar defensive work that included a staggering 30 DRS and an AL-best 41 percent caught stealing rate, resulted in a 3.9 WAR.
Most Overpaid: Buster Posey, San Francisco Giants
2020 Salary: $22.2 million
Signed to a massive nine-year, $167 million extension prior to the 2013 season, Posey still has two years and $47.4 million left on that deal entering his age-33 season.
The former NL MVP put up the worst offensive numbers of his career in 2019, hitting a punchless .257/.320/.368 for an 84 OPS+ with 31 extra-base hits in 445 plate appearances. His ongoing recovery from hip surgery played a role, but given his age, it's fair to wonder if he will ever come close to his prime production again.
He could be pushed for playing time by top prospect Joey Bart as early as the All-Star break, which will leave the Giants with some big decisions to make.
Most Underpaid: Max Muncy, Los Angeles Dodgers
2020 Salary: $2.5 million
After coming out of nowhere to post back-to-back 35-homer seasons with a 145 OPS+ and 10.0 WAR during that span, Muncy was rewarded with a three-year, $26 million extension in February.
The 29-year-old will earn just $2.5 million in the first year of that contract, which also includes a $13 million club option for the 2023 season. Not a bad payday for a player who was plucked from the scrapheap, and a terrific bargain for the free-spending Dodgers.
Most Overpaid: Chris Davis, Baltimore Orioles
2020 Salary: $21.1 million
Future Hall of Famers Miguel Cabrera ($30 million) and Albert Pujols ($29 million) were also strong candidates here, but it's impossible to go with anyone other than Davis.
Since putting together a productive first season of his seven-year, $161 million contract in 2016, Davis has been arguably the worst player in baseball.
Over the past three seasons, he has hit .188/.276/.350 for a 69 OPS+ while striking out at a staggering 37.6 percent clip. The 33-year-old has been worth minus-3.7 WAR during that span, and he's still owed $63.4 million over the next three years.
Most Underpaid: Ozzie Albies, Atlanta Braves
2020 Salary: $1 million
Albies already has 54 career home runs and 9.9 WAR on his resume, and he doesn't turn 24 years old until next January.
He hit .295/.352/.500 while leading the NL in hits (189) and tallying 43 doubles and 24 home runs in a 4.8 WAR season. While he can sometimes be overshadowed by teammate Ronald Acuna Jr., he's one of the game's most exciting young stars in his own right.
The seven-year, $35 million deal he inked prior to last season was a steal the moment he signed it.
Most Overpaid: Robinson Cano, New York Mets
2020 Salary: $20.3 million
Cano posted a 136 OPS+ with 32 extra-base hits in 348 plate appearances amid an 80-game PED suspension during the 2018 season.
The Mets acquired him last winter in a seven-player blockbuster that sent highly regarded outfield prospect Jarred Kelenic the other way, and he fell flat in his first season with his new team, hitting just .256/.307/.428 for a 96 OPS+ in a 0.3 WAR season.
The decision to trade Kelenic is one that could haunt the Mets for years to come, and they still owe Cano another $81 million over the next four years.
Most Underpaid: Yoan Moncada, Chicago White Sox
2020 Salary: $1 million
There were a lot of solid options here, including Alex Bregman ($12.7 million), Jose Ramirez ($6.7 million) and Gio Urshela ($2.5 million), but the five-year, $70 million extension that Moncada recently signed is enough for him to claim the top spot.
That deal bought out his final pre-arbitration season for $1 million, on the heels of a breakout offensive season that saw the 24-year-old hit .315/.367/.548 with 34 doubles, 25 home runs and 10 steals en route to 4.6 WAR. Below the surface, he trimmed his strikeout rate (-5.9%) and raised his hard-contract rate (+3.2%), two good signs that his 2019 level of production is sustainable.
Most Overpaid: Matt Carpenter, St. Louis Cardinals
2020 Salary: $18.5 million
After posting career highs in OPS+ (143), home runs (36) and extra-base hits (78) during the 2018 season, Carpenter signed a two-year, $39 million extension last April that kicks in during the upcoming season.
He then went out and posted the worst offensive season of his career, hitting .226/.334/.392 with 37 extra-base hits in 492 plate appearances on his way to 1.2 WAR.
His walk rate dipped (-2.3%), his strikeout rate climbed (+2.9%) and he made less hard contact (-7.4%) while hitting the ball on the ground more (+5.2%). None of that bodes well for the future, nor does the fact that he's entering his age-34 season.
Most Underpaid: Paul DeJong, St. Louis Cardinals
2020 Salary: $1.7 million
An All-Star for the first time last year, DeJong hit .233/.318/.444 with 31 doubles and 30 home runs while playing in 159 games.
Meanwhile, his 26 DRS trailed only Matt Chapman (34) and Roberto Perez (30) among all players and tied with Chicago Cubs standout Javier Baez for tops among shortstops. Not bad for a guy who played mostly third base during his time in the minors.
The Cardinals gave him a six-year, $26 million extension after he finished second in NL Rookie of the Year voting in 2017. He has logged 7.9 WAR over the first two years of that contract.
Most Overpaid: Brandon Crawford, San Francisco Giants
2020 Salary: $15.2 million
After seven straight seasons of at least 2.0 WAR, Crawford saw his production bottom out last season.
The 33-year-old hit .228/.304/.350 for a 75 OPS+ that ranked 132nd among 135 qualified hitters. Meanwhile, his usual Gold Glove-caliber defense at shortstop was also pedestrian at best (-4 DRS, 0.0 UZR/150).
He has two years and $30.4 million left on his six-year, $75 million extension.
Most Underpaid: Christian Yelich, Milwaukee Brewers
2020 Salary: $12.5 million
The shiny new contract that Yelich signed earlier this month will pay him $26 million annually from 2022 through 2028. However, he is still locked into his 2020 ($12.5 million) and 2021 ($14 million) salaries from the previous long-term deal he signed while he was with the Miami Marlins.
Considering he's hit .327/.415/.631 for a 171 OPS+ while averaging 32 doubles, 40 home runs, 104 RBI, 109 runs scored, 26 steals and 7.3 WAR the past two seasons, he'll be an absolute steal for the next two years.
Most Overpaid: Wil Myers, San Diego Padres
2020 Salary: $22.5 million
The back-loaded six-year, $83 million contract that Myers signed prior to the 2017 season will pay him $22.5 million annually for the next three years.
Following the offseason additions of Tommy Pham and Trent Grisham, he's not even penciled into the projected starting lineup, according to Roster Resource.
The 29-year-old is miscast as an outfielder (-19 DRS career) and first base is blocked by Eric Hosmer, so the team's best move might be to package him with a quality prospect and ship him off to a rebuilding team with payroll flexibility.
Most Underpaid: Ronald Acuna Jr., Atlanta Braves
2020 Salary: $1 million
Acuna signed an eight-year, $100 million extension last April, the largest contract ever for a player under club control with less than one year of MLB experience.
That deal paid him $1 million last year when he posted a 122 OPS+ with 41 home runs while leading the NL in steals (37) and runs scored (127) on his way to 5.7 WAR and a fifth-place finish in NL MVP voting.
The 22-year-old will take home that same salary once again in 2020 as he looks to make another run at a 40-40 season.
Most Overpaid: Ian Desmond, Colorado Rockies
2020 Salary: $15 million
The Rockies signed Desmond to a five-year, $70 million contract prior to the 2017 season that looked like a mistake from the start, and three years into that contract he's been worth a brutal minus-3.4 WAR.
The 34-year-old hit .255/.310/.479 with 31 doubles and 20 home runs last season. That may appear to be respectable production at surface level, but when the impact of Coors Field is factored in, it amounted to just an 88 OPS+.
The final two years of the contract will pay him $23 million, along with a $2 million buyout on a $15 million club option in 2022.
Most Underpaid: Cody Bellinger, Los Angeles Dodgers
2020 Salary: $11.5 million
Right field was perhaps the hardest decision, with guys like Aaron Judge ($8.5 million), Max Kepler ($6.3 million) and Joey Gallo ($4.4 million) also falling squarely into the underpaid category.
However, after he posted a 9.1 WAR season en route to NL MVP honors, Bellinger gets the nod. He'll likely play primarily center field in 2020, but he played 111 games in right field last year, so that's where we're slotting him for the sake of this conversation.
His $11.5 million salary for the upcoming season is a record for a first-time arbitration-eligible player.
Most Overpaid: Jason Heyward, Chicago Cubs
2020 Salary: $23.5 million
Heyward is a productive player.
The 30-year-old hit .251/.343/.429 for a 98 OPS+ with 20 doubles and 21 home runs last season in a 1.9 WAR season, and he has long been one of baseball's best defensive right fielders with 137 DRS in his career.
However, his eight-year, $184 million contract has made him one of baseball's most overpaid players throughout his time with the Cubs, and he's still owed $96 million through 2023.
Most Underpaid: Jacob deGrom, New York Mets
2020 Salary: $13 million
After back-to-back NL Cy Young Awards, a strong case can be made that deGrom is the best pitcher in baseball right now. The 31-year-old has a 2.05 ERA, 0.94 WHIP and 11.2 K/9 the past two seasons.
He signed a five-year, $137.5 million extension last March, and the back-loaded nature of that deal pays him just $22.5 million over the first two years. His salary for the upcoming season makes him an absolute steal.
Also considered for the most underpaid starting pitcher slot were Kyle Hendricks ($12 million), Lance Lynn ($11.3 million), Sonny Gray ($10.2 million), Mike Minor ($9.8 million), Noah Syndergaard ($9.7 million), Aaron Nola ($8.5 million), Eduardo Rodriguez ($8.3 million), Blake Snell ($7.6 million), Jon Gray ($5.6 million), German Marquez ($4.8 million), Mike Clevinger ($4.1 million), Jose Berrios ($4 million), Joe Musgrove ($2.8 million), Tyler Glasnow ($2.1 million) and Marco Gonzales ($1 million).
Most Overpaid: Jordan Zimmermann, Detroit Tigers
2020 Salary: $25 million
After a disappointing 74-win season in 2015, the Tigers signed Zimmermann to a five-year, $110 million contract that looked like a terrific addition at the time. He had a 3.14 ERA and 1.14 WHIP while averaging 194 innings in his five full campaigns with the Washington Nationals, and he seemingly still had plenty of mileage left on his arm as he entered his age-30 season.
Instead, he has struggled to a 5.61 ERA and 1.43 WHIP while averaging just 127 innings and posting a combined 0.8 WAR over his first four seasons in Detroit.
Most Underpaid: Josh Hader, Milwaukee Brewers
2020 Salary: $4.1 million
Hader has been utterly dominant throughout his time in the majors, posting a 2.42 ERA, 0.85 WHIP and an eye-popping 15.3 K/9 in 151 appearances spanning 204.2 innings.
The 25-year-old nailed down 37 of 44 save chances with a ridiculous 138 strikeouts in 75.2 innings in his first full year in the closer's role last season, and even with a significant salary spike in his first year of arbitration eligibility, he's still a bargain.
Most Overpaid: Wade Davis, Colorado Rockies
2020 Salary: $17 million
Despite saving an NL-high 43 games in 2018, Davis posted a middling 4.13 ERA in the first year of a three-year, $52 million contract. That would be a sign of things to come.
He stumbled to an unsightly 8.65 ERA and 1.88 WHIP in 2019, and his opponents' batting average sky-rocketed (.185 to .291) as he was far more hittable than at any other point in his career as a reliever.
Not to pile on, but fellow Rockies relievers Jake McGee ($9.5 million) and Bryan Shaw ($9 million) also belong in this conversation, and that trio was a big reason for the team's struggles in 2019.