Alex Gordon homered and Jorge Bonifacio had a go-ahead RBI single in the decisive sixth inning, and the Kansas City Royals rallied past the Chicago White Sox 3-1 on Saturday night.
Rookie Brad Keller pitched five solid innings for the Royals, who won for the third time in their past nine games. The White Sox had their win streak stopped at three.
Nicky Delmonico homered in the second inning off Keller (6-5), driving a changeup over the right-center field fence. That was the only blemish against Keller, who allowed seven hits, struck out five and walked none.
The White Sox had five hits combined in the fourth and fifth innings but were unable to score.
Dylan Covey (4-10) returned to the form he had displayed the first 2½ months of the season but remained winless in five starts since July 21. The right-hander allowed two runs on four hits and three walks in 5 2/3 innings.
Covey entered the game with a 1-8 record and 8.94 ERA in his last 10 starts. He was 0-5 with a 6.34 ERA versus Kansas City in his career.
After Whit Merrifield opened the game with a single, Covey didn't allow another hit until Gordon homered with one out in the sixth. One out later, Lucas Duda doubled and scored on Bonifacio's single to left field.
Alcides Escobar provided an insurance run with a two-out RBI single off Juan Minaya in the ninth.
Five Royals relievers combined for four scoreless innings. The last, Wily Peralta, worked a perfect ninth for his eighth save in as many tries.