The contract runs through 2022. It is worth $106 million, a league source told ESPN, confirming a report by USA Today Sports.
— Justin Upton (@JUST_JUP) November 2, 2017
Upton, 30, had an opt-out clause in his previous deal after this season. That contract ran through 2021.
The Angels acquired Upton in a trade with the Detroit Tigers on Aug. 31 that also included an exchange of minor league players.
Upton, a four-time All-Star, hit .273 with 35 home runs and 109 RBIs this season.