Butera will make $1.5 million this season and $2.3 million next season.
The 33-year-old Butera appeared in 56 games last season, setting career-bests with a .285 average, four homers and a .480 slugging percentage. He was at his best down the stretch, when the Royals were out of the playoff hunt, hitting .355 in the final 12 games of September and October.
He also can play first base and made two pitching appearances last season.
In other moves, left-handed reliever Tim Collins elected free agency rather than accept an outright assignment to Triple-A Omaha. Collins missed the entire season after Tommy John surgery.
The Royals also purchased the contracts of pitchers Andrew Edwards and Jake Junis from Omaha and catcher Cam Gallagher and first baseman Samir Duenez from Double-A Northwest Arkansas, protecting them from the Rule 5 draft.
The Royals cleared roster space by designating catcher Tony Cruz for assignment.