The Rays announced the signing Friday. Kotchman played last year for the Seattle Mariners, hitting .217 with nine homers and 51 RBIs.
Over seven seasons, the 27-year-old Kotchman has a career average of .259 with 49 homers and 284 RBIs.
He was a 2001 first-round draft pick of the Los Angeles Angels of Anaheim. He played for the Angels, Atlanta Braves and Boston Red Sox, who traded him to the Mariners before last season. He became a free agent in November when he wouldn't accept a minor league assignment.
The Rays also claimed pitcher Rob Delaney off waivers from the Minnesota Twins. He appeared in one game for them last season.