CLEVELAND - Yordano Ventura's dominating performance Friday night produced plenty of superaltives.

"He was extraordinary," Kansas City manager Ned Yost said after the rookie right-hander pitched 8 1-3 stellar innings in the Royals' 7-1 win over the Cleveland Indians.

Ventura (6-7) blanked the Indians on four hits until Michael Brantley hit a leadoff homer in the ninth. He was pulled after Jason Kipnis' one-out single. Ventura allowed six hits and struck out four in the longest outing of his career.

Indians centre fielder Michael Bourn had one of the hits off Ventura, a double in the eighth.

"Well he throws 100 (mph), first of all," Bourn said. "He has a good changeup and a good curveball. We had a couple chances but for the most part he was on tonight."

Mike Moustakas, who hit a three-run homer in the sixth gave Kansas City a 5-0 lead, was also impressed with Ventura.

"He's got such electric stuff," Moustakas said. "That's what he's capable of doing."

Salvador Perez and Christian Colon, making his first major-league start, had three hits apiece while Lorenzo Cain snapped an 0 for 11 skid with an RBI single in the third and a run-scoring double in the fifth.

The Royals, who are a major league-best 11-2 on the road since June 2, rode Ventura to their latest win away from home. He retired the first 10 hitters before Brantley singled with one out in the the fourth. Carlos Santana's single moved Brantley to third, but Kipnis bounced into a double play.

Ventura entered the ninth with 103 pitches, making it an easy decision for Yost to let him start the inning.

"I wanted to throw the complete game shutout, but I couldn't do it," Ventura said through teammate Bruce Chen, who translated for the pitcher, "I was getting ahead of the hitters early in the game. They made some really good plays behind me and that gave me a lot of energy."

Ventura, who finished with 113 pitches, came within two outs of recording Kansas City's first complete game of the season.

"I wasn't going to take him past 120 pitches," Yost said. "After the home run it was like, OK the next guy who gets on that's it. He pitched very well."

Josh Tomlin (5-6), coming off a one-hit, no-walk, 11-strikeout performance against Seattle, allowed five runs and 11 hits in 5 2-3 innings.

Moustakas' homer to right on a 3-2 pitch broke the game open. The rally began on singles by Perez and Alcides Escobar.

Colon, a late addtion to the lineup when second baseman Omar Infante was scratched with lower back tightness, was 3 for 4, including a triple in the second for his first major league hit. Colon added a double in the fifth and an RBI double in the ninth.

"That was a lot of fun," he said. "I was taking my ground balls (in pregame activities) and was told I was going to play."

Ventura has allowed three runs in 21 innings in three career starts against Cleveland. He held the Indians to one run in seven innings in a 4-1 win on June 11 in Kansas City.

Ventura gave up two runs and seven hits in four innings Los Angeles Angels in his last start, an outing that was cut short by a four-hour rain delay. He had pitched seven innings in each of his previous three starts.

The Royals, who are second in the AL Central, are 3-1 on a nine-game road trip and lead third-place Cleveland by four games.

The Indians, who opened a 10-game homestand, have lost four straight at home after winning 11 of 12 at Progressive Field. Cleveland was swept by Detroit in a three-game series June 20-22.

Tomlin turned in the best performance of his career against the Mariners last Saturday. He retired the first 12 hitters before allowing a leadoff single to Kyle Seager in the fifth, Seattle's only baserunner. Tomlin's gem marked the sixth time an Indians pitcher recorded 11 strikeouts with no walks in a shutout over the past 100 years.

It was also only the third time since 2002 that a pitcher has recorded a one-hit shutout with at least 11 strikeouts and no walks.

Kansas City left fielder Alex Gordon was hitless in four at-bats and is in a 2-for-36 slump.

Indians shortstop Asdrubal Cabrera was 0 for 4 and is in a 4 for 35 skid.

NOTES: The Indians announced the game as a sellout, their third of the season. ... Indians C Yan Gomes, a native of Brazil, wore his country's soccer jersey during batting practice. He kept an eye on the scoreboard, which showed Brazil's 2-1 win over Colombia in the World Cup. ... Raul Ibanez, signed by the Royals on Monday, started in right field. He made an awkward sliding catch on Gomes' line drive in the fifth. ... Royals RHP Jeremy Guthrie (5-6) faces LHP T.J. House (0-2) on Saturday.