Starter Brad Keller had his first good outing of the season and the Royals defeated the Los Angeles Angels 6-1 on Wednesday afternoon in the finale of a three-game set in Kansas City.
The Royals handed the Angels their first series loss of the season.
Salvador Perez was 8-for-12 in the series, including a home run and two RBIs Wednesday.
Keller came into the game with a 19.29 ERA after two starts. But on Wednesday, he allowed one run on four hits in 5 2/3 innings, improving to 1-1 on the season.
The Royals also saw Hunter Dozier record his first two hits and Andrew Benintendi get his first extra-base hit and multi-hit game of the season.
Griffin Canning (0-1) was the hard-luck loser for the Angels, who had been 7-1 against right-handed starters. Canning gave up two runs on six hits in five innings.
The Royals had a great opportunity in the first, loading the bases on a single, a walk and catcher's interference. But Michael A. Taylor hit a line drive that struck baserunner Carlos Santana to end the inning.
The Angels loaded the bases in the third with a hit, an error and a walk, but Keller struck out Mike Trout and Jared Walsh to get out of the jam.
Perez finally got the Royals on board in the bottom of the third with his third home run of the season.
The Royals manufactured a run in the fourth. Taylor led off with an infield single, then stole second. Dozier sent him to third on a flyball to right, and he scored on a popup that second baseman David Fletcher caught going away from home.
Trout scored the Angels' first run in the sixth inning on a double by Walsh.
Perez drove in Merrifield in the seventh with a two-out double, then scored on Santana's two-run home run. Merrifield's sacrifice fly in the eighth provided Kansas City's final run.
--Field Level Media