The deal, announced Tuesday, was $100,000 under the midpoint between the $8.2 million he had asked for in arbitration and the $7 million the Yankees had offered when proposed salaries were exchanged last week.
Martin also can earn performances bonuses.
Martin hit .237 with 18 homers and 65 RBIs last year for the Yankees, who signed him after the Los Angeles Dodgers failed to offer a contract. He had a $4 million base salary and earned $1,375,000 in performance bonuses.
He is eligible for free agency after next season.
Lefty reliever Boone Logan is the last Yankees player still in arbitration.