The deal comes as a surprise as Craig still had three years of arbitration remaining and the Cardinals paid up to buy two extra seasons of having the 28 year old Craig in a Cardinals' uniform for the next five seasons.
Craig will be paid a total of $31 million over the life of the deal, with a club option for a sixth season at $13 million.
The deal is certainly a good one for Craig and likely the Cardinals if he can stay healthy and produce like he did in 2012.
But what does the deal mean for a player like David Freese? Is this contract with Craig a signal that Freese's future in St. Louis may be in doubt?
Just a month ago, the Cardinals and Freese waited until the very last second to avoid an arbitration hearing, agreeing to a one year deal that will pay the third baseman just over three million in 2013 and the two sides will likely face a similar scenario next season as well.
You have to wonder why Craig and Freese are being treated so differently, considering both are about the same age and have both been plagued by injuries in the past.
The Cardinals are willing to take the risk and make the investment in Craig, but it is becoming painfully obvious that general manager John Mozeliak is not willing to make the same commitment to Freese, which could be a signal that the hometown World Series hero may not be a big part of team's plans long into the future.
The Cardinals have made moves like this before, buying out the arbitration years of notable players like Adam Wainwright, Jaime Garcia and Albert Pujols. When the organization wants to make the investment to keep control of a young player, they do not hesitate to take a chance.
Allen Craig fits the mold and the Cardinals wisely locked him up at a cost efficient price for the team. Mozeliak once again has made a smart financial investment.
But it feels like David Freese is not a player that Mozeliak wants to take the same risk with and it will be interesting to watch going forward.