The Twins have signed free agent outfielder Josh Willingham to a three-year, $21 million contract.

Willingham, 32, passed his physical this morning, and the Twins made an official announcement.

Willingham will make $7 million in each of the next three years, and there's an escalator in his contract that could push his salary to $8 million in 2014 if he has 525 plate appearances in 2013.

For Michael Cuddyer and Jason Kubel, this move by the Twins likely signals the end of their time in Minnesota. The Twins will gain three compensatory draft picks -- two for Cuddyer and one for Kubel -- when they sign with other teams.

Willingham will move to right field for the Twins. The righthanded hitter batted .246 with 29 homers and 98 RBI last season with Oakland.