15 worst St. Louis Cardinals free agent signings in franchise history
The Cardinals are known for their hesitancy to spend, but when they have made a splash, these 15 contracts were the worst deals they handed out
The St. Louis Cardinals are a storied franchise, loaded with Hall of Fame talent, championship pedigree, and sustained success that only the New York Yankees can compete with. Although St. Louis is a midsize market, the support from its fanbase and national following has afforded them the ability to compete with higher markets when they are willing. And yet, it feels like fans are always left wanting more.
Why is that? Well, rightfully so, Cardinal Nation has high expectations for the franchise. Mediocrity is not an option. Traditional rebuilds are not in their DNA. Fielding a contender every single year is the minimum expectation, but too long between World Series championships will keep fans up at night.
The reason the Cardinals have been so good over the decades is due to their incredible minor league system and the development of in-house talent. Outside of that, the club has been known to make shrewd moves in the trade market, acquiring All-Stars and future Hall of Famers for cents on the dollar. What fans tend to get most frustrated by is not a lack of development or trades, but the club's hesitancy to go out and make impact signings.
There is defiantly an argument that if the Cardinals would start spending in the top-tier free agent pool, the club would find more success and their signings would work out better. Unfortunately, their signings, which tend to be in the middle of the market, have produced some really bad contracts, and it almost feels riskier to sign a player than it does beneficial with their track record.
There's a certain level of pride Cardinals fans take in ripping on front-office moves of the past, so let's take a trip down memory lane and look at the 15 worst signings in St. Louis' history.
Too early to tell: Steven Matz
As I was making this list, I thought I would make a quick comment on Steven Matz and his 4 years, $44 million dollar deal he signed before the 2022 season. Yes, at the moment, his contract would make the list, but judging him based on an injury-plagued first season seems like too quick of a call. $11 million a year for a back-end-of-the-rotation starter is not a bad value if he gets back on the field and produces once again.
#15 - Bobby Bonilla: 1 year, $900,000, 2001
Bobby Bonilla is well known for his crazy contract with the New York Mets that pays him $1.2 million per year from 2011-2035. People often forget he was almost the reason Albert Pujols did not make the Opening Day roster in 2001.
After signing a contract that offseason with the Cardinals, Bonilla was set to provide support to the St. Louis lineup in his last big league season. A hamstring injury flared up in Spring Training, causing him to start the year on the DL, and rookie Albert Pujols made the roster in his place.
Bonilla would only appear in 93 games that season, slashing .213/.308/.339 with 5 HR and 21 RBI. The highest salary on the Cardinals that season was Mark McGwire at $11 million, so $900,000 was not a drop in the bucket roster-wise like it is now. But considering it helped begin the Albert Pujols era, we'll leave the contract at number 15 on this list.
#14 - Mark Ellis: 1 year, $5.25 million, 2014
Mark Ellis was brought in to be a quality backup option for St. Louis behind the likes of Kolten Wong and Matt Carpenter. But in his age-37 season, Ellis provided next to no value for the club.
In 73 games, he slashed .180/.253/.213 with 0 HR and 12 RBI for St. Louis with an awful 33 OPS+. There was even a stretch of 29 games where Ellis did not record a single RBI. The Cardinals were fine without contributions from him, but it's safe to say the $5.25 million was completely wasted.
Ellis would call it a career after 12 years following the 2014 season.
#13 - Ty Wittington: 2 years, $5 million, 2013
You may not even remember Ty Wittington's short stint in St. Louis during the 2013 season. The 35-year-old was viewed as a quality option off the bench who could provide good at-bats late in games as a pinch hitter.
Unfortunately, like Ellis, he dropped off hard during the 2013 season and was released after just 47 games. Wittington slashed .158/.238/.193 with 0 HR and 3 RBI, becoming even more unplayable than Ellis was the year following.
St. Louis ended up being his last stop, and he too retired following the season.
#12 - Ron Gant: 5 years, $33 million, 1996
Ron Gant was an excellent player for the Braves and Reds before signing his first long-term deal with the Cardinals prior to the 1996 season. He was a two-time All-Star, finished top 14 in MVP voting four different times, and was ready to add even more firepower to the Cardinals' lineup.
His first year in St. Louis was great, posting a .862 OPS with 30 HR and 82 RBI, but his OPS dipped down to .698 in 1997 and then he fell out of favor in the clubhouse in 1998.
The Cardinals ended up trading Gant to the Phillies before the 1999 season, agreeing to pay half of Gant's salary in the process. It's safe to say the club had much higher hopes for how that deal would turn out.
#11 - Jhonny Peralta: 4 years, $53 million, 2014
This is a bit of a controversial pick, but I do think Jhonny Peralta deserves a spot on the worst contracts list based on how his time in St. Louis ended.
Peralta's first two years with the Cardinals were great, finishing 14th in MVP voting in 2014 and being named an All-Star in the 2015 season. Across those two years, he hit .269/.335/.427 with 38 HR and 146 RBI while playing shortstop for St. Louis. He was an excellent addition to the Cardinals lineup during those years.
The final two years of his deal though were awful. During 2016-2017, Peralta played just 103 games, slashing .251/.299/.376 with 8 HR and 29 RBI, eventually being released by the club midway through the 2017 season.
While Peralta was extremely helpful for the first half of his contract, the last half of his deal was just too polar opposite for him to not be counted as a bad value deal and placed on this list.
#10 - Carlos Martinez: 5 years, $51 million, 2017
Carlos Martinez is one of those players that if you simulated his career 100 times, 90 of those results would have been better than what happened during his Cardinals tenure. Martinez showed so much talent and promise during his 9 years with St. Louis, but the end of his time still leaves a bad taste in the mouths of many.
At the time, his extension looked like a great value for St. Louis. He had been durable and on an upward trajectory each year, and was named to his second All-Star team in the first year of his extension. 2018 looked like an even better season for Martinez, posting a 3.11 ERA in 118.2 innings before suffering a season-ending injury.
Martinez was able to return as a closer the next season, and did so rather well, posting a 3.17 ERA with 24 saves. But the two seasons following, Martinez combined for just 102.1 innings with a 6.95 ERA. The Cardinals used his buyout following the 2021 season and he has not made it back to the big leagues since.
#9 - Sidney Ponson: 1 year, $1 million, 2006
While the Cardinals did win the World Series this season, Sidney Ponson did very little to help the club make it there, and was eventually released after 14 appearances with St. Louis.
During his very short stint, he went 4-4 with a 5.24 ERA, struggling to maintain any kind of role with the club. Ponson was coming off of a 6.21 ERA season with the Orioles in 2005, so one has to wonder why the Cardinals thought things would go better in 2006.
Luckily, the Cardinals were still able to make the playoffs and went on a magical run to win their 10th World Series.
#8 - Kip Wells: 1 year, $4 million, 2007
Like Ponson, here are some contracts that no matter how minor they seem, the abysmal production lands them on a list like this. Looking back at Kip Wells, it's amazing to think the club let him start 26 games for them.
Wells went 7-17 that season for St. Louis, posting a 5.70 ERA and 1.62 WHIP in 162.2 innings. Somehow, that wasn't even Wells' career high in losses, as he achieved that with the Pirates in 2005 with 18.
While there was hope that the Cardinals could squeeze some value out of Wells that season, they should have cut bait with him early on in the season.
#7 - Tino Martinez: 3 years, $20.75 million, 2002
Brought in to replace Mark McGwire in the Cardinals lineup, Tino Martinez had large shoes to fill. He was coming off one of his best seasons with the Yankees though and looked primed for the task.
Martinez's power seemed to disappear when he came over to St. Louis, becoming a slightly above-league-average hitter and failing to hit more than 21 home runs in a season during his two years in St. Louis. While Martinez was not a bad player for the Cardinals, his contract and the role he was expected to play were too big for what they were getting out of him.
Before the 2004 season, the Cardinals traded Martinez to Tampa Bay, allowing Albert Pujols to move over to be the primary first baseman.
#6 - Andrew Miller: 3 years, $34.5 million, 2019
After striking out on big contract relievers the offseasons prior, John Mozeliak and company took a big swing with Andrew Miller, after he was one of the best relievers in the game from 2014-2017 before struggling in 2018.
In Miller's first season with the Cardinals, he threw 54.2 innings with a 4.45 ERA and was nowhere closer to the guy the club was hoping he would be for them. During the shortened 2020 season, things looked brighter, as his 13 innings produced a 2.77 ERA for the club.
2021 was another down year though, posting a 4.75 ERA in 36 innings of work and ending his big league career unceremoniously.
#5 - Greg Holland: 1 year, $14 million, 2018
I remember being at the early season contest against the Milwaukee Brewers where Greg Holland made his Cardinal debut. He was signed a few days after Opening Day and got some quick work in the minor before joining the Cardinal bullpen. Unfortunately, his debut was exactly how the rest of his time with St. Louis played out.
In 25 innings for St. Louis, Holland had a 7.92 ERA with 22 walks and 34 hits allowed. He was unplayable, and so the Cardinals had to take the hit on the $14 million that they handed out to him. Just an awful move, even for a one-year deal.
To rub salt into the wound, he went on to throw 21.1 innings with the Nationals later that year, posting a 0.84 ERA in the process.
#4 - Brett Cecil: 4 years, $30.5 million, 2017
Miller, Holland, and now Brett Cecil end the murder's row of bad reliever contracts that the Cardinals handed out from 2017-2019. Cecil was the first of them, and somehow, easily the worst of them all.
Cecil had been a really good reliever in 3 of the last 4 seasons he pitched with the Toronto Blue Jays, so at the time, his signing seemed to be a big boost to the Cardinal bullpen. His first year was not horrible, as he threw 67.1 innings with a 3.88 ERA for the Cardinals.
2018 is when this deal went from bad to a disaster. His 6.89 ERA in 32.2 innings made him one of the worst relievers in all of baseball. Cecil tried to revamp his body heading into 2019, losing 60 pounds, but ended up developing carpel tunnel syndrome and missed the entire 2019 season before being released prior to the 2020 season.
#3 - Mike Leake - 5 years, $80 million, 2016
At the time, I don't know a whole lot of fans that liked the Mike Leake contract. Needless to say, those fans were right.
Like all of these deals, it felt like another miss from playing in the "middle of free agency" rather than going after the big fish. Clearly, Leake was not there top target, as the Cardinals were outbid by the Cubs and the Red Sox for Jason Heyward and David Price.
In Leake's one and half seasons in St. Louis, he went 16-24 with a 4.46 ERA in 330.2 innings of work. The Cardinals cut bait with Leake at the 2017 trade deadline, dealing him to Seattle for prospect Rayder Ascanio.
Leake would have been a fine number-five starter for the club, but not at that large of a contract. There was not a ton of upside with Leake to begin with, so it is not surprising this deal turned out so poorly.
#2 - Matt Carpenter: 2 years, $39 million, 2020
This is the hardest one on the list for a few reasons. First, Matt Carpenter should go down as a red jacket member for the Cardinals. He was one of the best players of the 2010s for them and was massively underrated nationally. Second, this contract could have been avoided altogether had the club waited a bit longer.
Hindsight is 20/20, but with an option for the 2020 season already in place, extending Carpenter was a bit premature. They replaced the $18.5 million option in 2020 with this deal and an $18.5 million vesting option for 2022.
During the life of the extension, Carpenter slashed .176/.313/.291 with 7 HR and 45 RB across 418 PA. He fell off a cliff hard and was a shell of the MVP candidate he was as recently as 2018.
It's really unfortunate that Carpenter would land on a list like this, and I hope Cardinal fans remember the nine incredible seasons he gave the team as his legacy, rather than the final two.
#1 - Dexter Fowler: 5 years, $82.5 million, 2017
Not much of a surprise here. Dexter Fowler was coming off beating the lead-off hitter for the World Champion Chicago Cubs, and the Cardinals decided to pay Fowler to fill the void at the top of their lineup.
Over the four years he played in St. Louis, Fowler slashed .233/.334/.408 with 49 HR and 177 RBI while mostly playing in the corner outfield. For a team that desperately needed outfield help, this was a huge whiff. If they hadn't invested poorly in Fowler, there's a real chance they would have gotten into the Bryce Harper market two years later.
Fowler is a great guy, and while he took a ton of heat during his time in St. Louis, he handled it with class. He had the personality of a Cardinal but did not play up to the standards of his contract. He was traded to the Angels in 2021, and the Cardinals ate $12.75 million of the final year of his contract.