Given how aggressive teams have become in free agency, some of the worst MLB contracts ever have actually been signed more recently than you might think. Of course, bad free agency contracts are inevitable because things don’t always work as planned. But there are also contracts that stand out among the biggest mistakes in MLB free agency.
Worst MLB contracts ever
So what free-agent decisions qualify as the worst MLB contracts ever? We took a close look back at baseball history while also examining some of the more recent mistakes to come up with a list of the 10 worst contracts in baseball history.
Patrick Corbin – 6 Years, $140 Million
This contract doesn’t seem so bad when you consider that Patrick Corbin was outstanding for the Nats when they won the World Series in 2019. He was 14-7 with a 3.25 ERA that year and did plenty of heavy lifting in the playoffs.
But Corbin has been an utter disaster since then, pitching to a 5.82 ERA in 2021 and a 6.31 ERA in 2022. The lefty earned his $23.3 million annual salary in 2019. However, that’s a lot of money to pay one of the worst starting pitchers in baseball, which is what Corbin became after the first year of this contract.
Yoenis Cespedes – 4 Years, $110 Million
In their defense, the Mets had little choice but to re-sign Yoenis Cespedes after he helped them get to the World Series in 2015. They gave him a three-year, $75 million prior to the 2016 season, which went well.
But then Cespedes opted out and got an even more lucrative deal prior to the 2017 season. While he would occasionally hit a big home run over the next few years, Cespedes was plagued by injuries and lackluster effort for the next few years. He eventually opted out of the 2020 season and never played for the Mets or anyone else ever again.
Jacoby Ellsbury – 7 Years, $153 Million
For a few years after he signed this big deal with the Yankees, Jacoby Ellsbury was solid but unspectacular. But serviceable outfielders aren’t worth $153 million.
He was nothing close to the player he was with the rival Red Sox early in his career when he led the league in stolen bases three times while winning two World Series rings. The Red Sox actually benefited by losing Ellsbury in free agency to a rival team. Not only did Ellsbury fail to live up to this contract, but toward the end of the deal, Ellsbury couldn’t even take the field. Injuries sidelined Ellsbury for all of 2018 and 2019 before the Yankees released him, so he didn’t play one game during the final three years of the seven-year deal.
Pablo Sandoval – 5 Years, $95 Million
It’s hard to say that Pablo Sandoval took the money and ran after signing a five-year deal with the Red Sox. He didn’t do much running at all because he was either hurt or overweight throughout his time in Boston.
Sandoval only managed to play in three games in 2016. The Red Sox gave up on him after just 36 games in 2017, cutting ties midway through the five-year contract. Of course, after he was let go, Sandoval returned to the Giants and had a couple of decent years back in San Francisco while Boston paid most of his salary.
Prince Fielder – 9 Years, $214 Million
With Prince Fielder, it was largely a case of injuries that made this such a terrible contract. He actually signed this contract with the Tigers, signing with the same team his father played for throughout much of his career.
He was then traded to Texas, helping the Rangers reach the postseason in 2015. However, the Rangers ended up being on the hook for most of the money on the contract when injuries prevented Fielder from playing during the last four years of the nine-year deal.
Bobby Bonilla – 25 Years, $29.8 Million (Deferred)
The Mets didn’t technically sign Bobby Bonilla to a bad contract because they traded for him following the 1998 season. However, when they wanted to release him after the 1999 season while owning him $5.9 million, they came up with the stupidest alternative imaginable. Rather than dish out $5.9 million, they promised to give him $1.2 million every year from 2011 to 2035.
That means giving him $29.8 million in the long run rather than $5.9 million upfront. The deferment was made in part because Mets owner Fred Wilpon was tied up with Bernie Madoff. As a result, Mets fans have to spend every July 1 (when Bonilla receives his check) being the butt of jokes from rival fans mocking “Bobby Bonilla Day.”
Carl Crawford – 7 Years, $142 Million
The Red Sox thought they pulled a fast one by giving Carl Crawford a seven-year, $142 million contract after he excelled with the division-rival Rays for so long.
But Crawford didn’t adjust to being in Boston and was also hindered by injuries. The Red Sox gave up on him and traded him to the Dodgers, hoping to distance themselves from such a terrible contract.
Robinson Cano – 10 Years, $240 Million
The Mariners were so desperate to sign a player like Robinson Cano that they gave him a 10-year commitment after his 30th birthday. After his 31st birthday, to be more accurate. To be fair, Cano was a three-time all-star in Seattle, although he never made the type of impact Seattle expected him to, especially at that price.
He was also suspended for 80 games in 2018 because of PEDs. The Mariners, to their credit, found a way out of one of the worst contracts in baseball history by trading Cano to the Mets and getting quite a haul in return. The Mets were stuck paying much of the back end of Cano’s contract, although they finally let him go, but not before a full-season suspension after another PED violation.
Rusney Castillo – 7 Years, $72.5 Million
For teams that are paying attention, Rusney Castillo is a great cautionary tale. Soon after he defected from Cuba, the Red Sox gave Castillo a seven-year, $72.5 million deal. He was supposed to be the next great player from an island that has produced so many great talents. But Castillo didn’t turn out to be one of them.
For that $72.5 million, Castillo played just 99 games in the majors, hitting .262 with seven home runs. He eventually was designated for assignment but then played for Boston’s triple-A affiliate while making a massive salary for the rest of his contract.
Stephen Strasburg – 7 Years, $245 Million
It’s going to be hard for anybody to top Stephen Strasburg when it comes to the worst MLB contracts ever. The only defense the Nationals have is that they gave him the deal right after Strasburg led them to a championship and was named World Series MVP. After doing that, Strasburg wisely opted out of the seven-year, $175 million contract he signed a few years earlier.
Washington couldn’t risk letting its World Series hero walk, so they gave him a contract worth $35 million per year, the largest a pitcher had ever received at that point.
However, the injuries that plagued Strasburg throughout his career continued to sideline him after signing that seven-year deal following the 2019 World Series. After getting that new contract, Strasburg made eight starts, pitching a total of 31.1 innings because of injuries. While the Nationals got a championship banner out of Strasburg, they just threw money away after that.