The Mariners needed at least one more significant bat to complement Robinson Cano and Kyle Seager in the heart of their lineup, and Nelson Cruz might be able to be that bat for 2015. Unfortunately for Mariners fans, the team signed him to be that bat in 2016, 2017 and 2018, by which point he'll be 37 years old and there's a good chance he won't be worth the roster spot, let alone the $14.25 million (based on the deal's average annual value) he'll be owed or the 2015 first-round pick (No. 19 overall at the time of the signing) they forfeited to sign him.
The problem for Seattle isn't really the money, but the years.