Salvador Perez hit a go-ahead RBI double with two outs in the eighth inning and the Kansas City Royals beat the Chicago White Sox 4-3 Saturday.
Alex Gordon doubled off left-hander Scott Downs (0-1) before Perez hit Maikel Cleto's second pitch down the left-field line.
Wade Davis (1-1) let the White Sox tie it at three when gave up two runs in the eighth on two singles, a walk, a hit batter and sacrifice fly.
Greg Holland worked around a leadoff walk for his second save in two days.
Royals right fielder Norichika Aoki prevented the White Sox from taking a lead when he made a lunging catch of Alexei Ramirez line drive to end the eighth with two runners on base.
Conor Gillaspie hit an RBI single in the eighth before Paul Konerko's sacrifice fly tied it and gave him 146 RBIs against Kansas City, the most by any opponent.
Royals left-hander Bruce Chen allowed one unearned run on six singles, walked none and struck out seven in 6 1-3 innings, but had to settle for a no-decision.
White Sox left-hander John Danks did not allow a hit until the fourth inning, when six straight Kansas City batters reached base.
Omar Infante, Eric Hosmer, Butler and Alex Gordon opened the inning with singles. Butler's single scored Infante for the first run, while Mike Moustakas walked with the bases loaded for the other run. Butler drove in another run in the fifth with a sacrifice fly.
Moustakas' fielding error led to an unearned White Sox run in the fifth. Adam Eaton's groundout scored Ramirez.