The Angels announced the deal two days after they missed the playoffs for the third straight year.
Iannetta's previous contract contained a $5 million club option for 2013 with a $500,000 buyout, but the deal said the option would become mutual if he was traded, and Colorado dealt him to the Angels last Nov. 30 for right-hander Tyler Chatwood. The option price had escalated to $5.05 million.
The new deal keeps the $5.05 million for 2013 and calls for salaries of $4,975,000 for 2014 and $5,525,000 for 2015.
The contract includes up to $500,000 in performance bonuses based on starts at catcher for 2013: $100,000 each for 100, 110, 115, 120 and 125. There is $725,000 available in each of the following two seasons: $100,000 for 90 and $125,000 each for 100, 100, 115, 120 and 125.
Iannetta provided solid defense and hit .240 with nine homers and 26 RBIs in 79 games, providing an offensive upgrade over the Angels' three 2011 catchers.
He sat out for 2½ months with a broken right wrist. He was hurt May 2 against Minnesota, but stayed in the game to finish catching Jered Weaver's no-hitter.