The Cubs have agreed to a seven-year, $60 million contract extension with Starlin Castro, according to a source.

The contract covers four years of arbitration and the first three years that Castro would have been eligible for free agency. The contract includes a $16 million option for 2020.

Castro, 22, was projected to qualify for salary arbitration as a "Super Two" player at the end of the year.