First baseman Carlos Santana and the Kansas City Royals have agreed to a two-year deal, it was announced Tuesday.
The deal is for $17 million, sources confirmed to ESPN's Jeff Passan.
Santana became a free agent after his $17.5 million option for 2021 was declined after the season as part of a payroll purge by the Cleveland Indians.
Royals general manager Dayton Moore had said earlier in the offseason that among the team's biggest needs were a middle-of-the-order bat and more guys who get on base.
Santana accomplishes both.
The slugger struggled in his second season back in Cleveland after leaving as a free agent to join the Philadelphia Phillies in 2018. The switch-hitter had a career-low .199 batting average in 2020 with eight home runs and 30 RBIs in 60 games during the pandemic-shortened season, but he still had a .349 on-base percentage in large part thanks to ranking second in the majors with an AL-best 47 walks.
Just weeks after being acquired by the Mariners after the 2018 season, Santana returned to Cleveland as part of a three-team trade that also involved the Tampa Bay Rays.
In 10 total seasons with the Indians, Santana has hit 216 home runs with 710 RBIs. In addition to playing in every game during the shortened 2020 season, Santana has shown his durability by playing in at least 152 games in every season of his career except for his rookie year of 2010 (46 games) and 2012 (143 games).
With Santana in the fold and Maikel Franco nontendered, Tuesday's agreement likely means Hunter Dozier will shift back to third base to allow Santana to regularly play first.
The Dominican-born Santana became a U.S. citizen in 2019. He first arrived in the United States after he signed with the Los Angeles Dodgers in 2004.
The Associated Press contributed to this report.