Butler drove in the Royals' first three runs with a first-inning double and a two-run single in the third and Kansas City never looked back.
Lorenzo Cain and Salvador Perez each added three hits with two RBI while Alcides Escobar went 3-for-5 with a run-scoring double in the rout, which snapped the Royals' three-game losing streak.
Luis Mendoza (1-2) posted his first victory in five starts beginning the season, allowing three runs on six hits over six innings. The right-hander didn't issue a walk and struck out six.
Angels starter Joe Blanton (0-7) was pounded for seven runs on 12 hits, lasting just 4 2/3 frames. His ERA ballooned to 6.46 with the loss.