The six-year contract includes two additional options that would keep Anderson with the White Sox until 2022.
Anderson is viewed as a foundation piece for a rebuilding franchise and earns $850,000 this season, and has a $1 million buyout on the contract after the sixth year of the deal. Anderson could be with the White Sox through his age 31 season.
Anderson, 23, has a .333 batting average in spring training but missed a third consecutive game on Monday to handle what he labeled "personal problems."
He was the 17th pick in the 2013 draft and has played in only 99 career games.
The White Sox traded centerfielder Adam Eaton and left-handed ace Chris Sale in the offseason in a prospect-driven overhaul of the roster. Two other pitchers, left-handed starter Jose Quintana and closer David Robertson, are reportedly on the trade block.
Anderson's contract breakdown was announced by the White Sox as $1 million in 2018, $1.4 million in 2019, $4 million in 2020, $7.25 million in 2021 and $9.5 million in 2022. The White Sox hold club options for 2023 at $12.5 million and 2024 at $14 million. If either option is declined, Anderson will receive a $1 million buyout.