Jerry Crasnick explains why the Tigers decided to sign outfielder Justin Upton to a six-year contract. (1:16)

The Detroit Tigers and free-agent outfielder Justin Upton have agreed to a six-year deal worth $132.75 million, a source told ESPN's Jerry Crasnick.

The contract includes an opt-out after the second year, which would allow Upton to go back on the market as a free agent at age 30, a source confirmed to Crasnick.

A three-time All-Star, the 28-year-old spent the past season with the San Diego Padres and batted .251 with 26 homers and 81 RBIs.

With Upton agreeing to move to Detroit and Chris Davis agreeing to re-sign with the Baltimore Orioles, Yoenis Cespedes is left as the biggest bat on the free-agent market.

Putting 2015 In The Past The Tigers are hoping to rebound from a subpar 2015, and so is Justin Upton, as several of his 2015 stats were his worst in years. 2015 Worst Since OBP .336 2007 BA .251 2008 Miss pct 31.8 2008 Line drive pct 17.8 2011 -- ESPN Stats & Information

Upton, who is expected to play left field, will join a Tigers team looking to win now. After a disappointing 74-88 campaign, owner Mike Ilitch opened up his wallet this offseason, having also signed pitcher Jordan Zimmermann to a five-year, $110 million contract.

Upton and Zimmermann will join a Tigers team that will expect bounce-back seasons from Miguel Cabrera and Justin Verlander, who both battled through injuries in 2015.

Last season was a bit of a struggle for Upton as well. The right-handed slugger batted just .191 and hit only three of his 26 home runs against left-handed pitching.

He might, however, enjoy his new home ballpark. Upton, who has spent his entire career in the National League, has hit .324 in nine games at Comerica Park. That is his third-best batting average in any stadium in which he has played a minimum of five games.