For years, the narrative surrounding John Mozeliak and the St. Louis Cardinals in terms of trades has been the fact that the Cardinals hold on to players for too long. Also, the prospects they do trade for major-league talent often find success outside of St. Louis.
Whether it be Randy Arozarena with the Tampa Bay Rays, Sandy Alcantara with the Miami Marlins, Zac Gallen with the Arizona Diamondbacks, Juan Yepez and Lane Thomas with the Washington Nationals, or Adolis Garcia for the Texas Rangers, the list of players who have played well after leaving the Cardinals is quite lengthy.
It's not often John Mozeliak trades players at their peak value, particularly young players. Rather than trading outfielder Dylan Carlson after his 2022 season, the Cardinals held onto him and traded him for a rental reliever in Shawn Armstrong whom the Cardinals cut just a few weeks after acquiring him.
Tyler O'Neill had a monster 2021 season, but his track record of injuries and streakiness should have given the Cardinals worry. Those worries came to fruition in 2022 and 2023, and Mozeliak traded him for two prospect pitchers, one of whom is no longer in the system.
While hindsight is always 20/20, and trading these players after the years they had would have surely sent the fanbase into a tizzy, it's well-known around the league that the Cardinals haven't been able to evaluate their prospects properly, and they haven't been able to capitalize on the value players have. Instead, they've opted to hold on a bit too long and in turn, have gotten lackluster returns for players who were once very good.
Having said all that, John Mozeliak has made a trade recently that was a great one. Last offseason, outfielder/infielder Richie Palacios was traded for reliever Andrew Kittredge. Palacios had a fine year, but he toiled in the minors for most of 2024. Meanwhile, Kittredge helped form one of the best back-ends of a bullpen in baseball last year. In this case, the Cardinals capitalized on a player's performance and sold high on him.