Butler hit a run-scoring single in the first inning to reach 100 RBIs for the first time and the Royals beat the Cleveland Indians 5-3 on Saturday night.
The designated hitter also doubled twice in his 53rd multihit game, raising his batting average to .312. He also has a career-best 27 homers this season.
"I said last year Billy was a 30-100 RBI guy," Yost said. "He's got some work to do. I think Billy is capable of being a huge run producer in the American League, that guy that's capable of having 120, 130 RBIs every year.
"He just keeps getting better and better. He hit a double off (Ubaldo) Jimenez, it was a curveball where he started and stopped and blasted it. Hitters can't do that. Only a few can do what he can do."
Butler became the first Royals player to drive in at least 100 runs since Carlos Beltran had 100 RBIs in 2003.
"You start off the season with a goal in mind and obviously being in the middle of the lineup and a run producer, that's a big goal," Butler said. "It's great to get behind you and keep playing."
Butler said reaching 30 homers is not a big deal for him.
"There's always other years," he said. "I'm going to continue to drive the ball. I feel like I'm going to continue to get stronger and better."
Cord Phelps hit a two-run homer for Cleveland, which has dropped 11 of 14. The Indians have the worst record in the American League since the All-Star break at 18-49.
Royals rookie Will Smith (6-8) allowed two runs and eight hits in seven innings to improve to 2-4 with a 4.54 ERA in his last six starts.
Kansas City scored three times in the fifth to grab a 5-2 lead while chasing Jimenez (9-17). Cleveland used three pitchers in the inning, which included two walks, two singles, a sacrifice fly, an error and a caught stealing.
Alex Gordon scampered home on Eric Hosmer's fielder's choice grounder, putting the Royals in front again. Brayan Pena had a sacrifice fly, and Irving Falu singled in Jeff Francoeur with the final run.
Jimenez was charged with five runs and seven hits in 4 1/3 innings. The right-hander struck out three and walked three while dropping to 0-6 with a 6.49 ERA in his last eight starts.
Jimenez leads the majors in losses and his 95 walks are second in the AL. The Indians' starters own a major league-worst 6.36 ERA since the All-Star break.
"Walks kill," Indians manager Manny Acta said. "They killed us today. (Jimenez) had to battle hard with his command and work out of jams. He had to throw 95 pitches in 4 1/3 innings. Walks pretty much did it for him. We got back into the game. He ended up walking those two guys and they scored. He's had a rough season."
Phelps, who was 1 for 18 since his Sept. 4 promotion, went deep in the fifth, tying it at 2. He drove in Thomas Neal, who was aboard after a leadoff single.
The Indians scored an unearned run in the eighth after center fielder Jason Bourgeois committed an error.
Pena led off the fourth with his first career triple in his 933rd plate appearance, but was stranded.
Rookie Kelvin Herrera worked the ninth for his second save in three opportunities. Francoeur cut down Shin-Soo Choo trying to stretch a single in the ninth for his 19th assist, which leads all major league outfielders.
Choo finished with two hits and two walks.
RHP Jake Odorizzi will start Sunday against the Indians in the most heralded debut by a Royals pitching prospect since RHP Zack Greinke in 2004. Odorizzi, 22, went 15-5 with a 3.03 ERA in the minors this season. He was acquired from Milwaukee in the 2010 trade that sent Greinke to the Brewers. "I'm excited, but I don't want to get this thing all hyped up," Yost said. "We just want him to go out and get it over with if you will. The main objective for me is for him to come in here and get a start, maybe two, so that he's got that experience going into next season." The Indians will counter with LHP David Huff. ... RHP Roberto Hernandez will throw a simulated game when the Indians are in Chicago. Hernandez has not pitched since Aug. 27 when he injured his right ankle backing up the plate against Oakland. ... Hosmer stole his 16th base in the second inning, which ties a Royals record by a first baseman. Jeff King had 16 stolen bases in 1997.