Mike Moustakas' extra-inning homer helped the Royals win their second straight against the Rays.
Moustakas homered in the 12th inning, and Kansas City came back from a four-run deficit to beat the Tampa Bay 7-6 on Tuesday night.
"The offense just kept battling all night long," Royals manager Ned Yost said. "They had a lot of confidence that they could get back in it."
Moustakas connected against Diego Moreno (0-1), the eighth Tampa Bay pitcher, on a 1-2 pitch with one out. Moreno was promoted from Triple-A Durham before the game.
Kansas City right-hander Jakob Junis (1-0), recalled from Triple-A Omaha, worked out of a two-on, one-out jam in the 11th for his first big league win. Kelvin Herrera got three outs for his fifth save.
"That was one of the coolest things I've seen in my baseball career is watch that home run go," said Junis, who arrived at the team hotel around 10:30 a.m.
Salvador Perez hit a two-run homer for the Royals. The All-Star catcher went 3 for 4 and walked twice. He has six homers and 23 RBIs in his last 24 games against Tampa Bay.
Logan Morrison went deep during Tampa Bay's four-run first.
"Well, tough loss," Rays manager Kevin Cash said.
Cash was ejected by third base umpire Bill Welke in the third for arguing a balk call on Matt Andriese that allowed Jorge Bonifacio to score from third. Cash said umpires ruled Andriese did not declare whether he was pitching from the stretch or windup.
"It was an atrocious call," Cash said. "A veteran umpire, a veteran crew for the most part out there. They're better than that. They didn't know what they were doing. It's on them."
Crew chief Mike Everitt said through a pool reporter the call was "cut and dried."
Perez hit a leadoff double in the eighth and scored on Alex Gordon's single to tie it at 6.
Chris Young retired his first two batters in the first before Evan Longoria started a run of six straight Rays to reach base with an infield single. Morrison hit a two-run shot, and Tim Beckham and Kevin Kiermaier added RBI singles.
Young, making his first start since July 5, allowed four runs, seven hits and four walks in three innings. The 37-year-old left-hander took the slot of Ian Kennedy, on the 10-day disabled list after straining his right hamstring last week.
Beckham drove in his second run on a fifth-inning single off Travis Wood, who also gave up Brad Miller's solo shot in the sixth that put Tampa Bay ahead 6-3.
Kansas City scored two runs in the seventh to pull within one. But Eric Hosmer got picked off first base by catcher Jesus Sucre to end the inning with Perez batting.
Andriese allowed three runs and five hits in 5 1/3 innings.
Royals: LHP Scott Alexander was placed on the 10-day disabled list with a strained right hamstring.
Rays: RF Steven Souza Jr. sat out with a sore thumb, one day after getting jammed by a pitch. ... SS Matt Duffy (Achilles' tendon) started a rehab assignment with Class-A Charlotte.
The crowd of 9,921 was the smallest at Tropicana Field since Oct. 1, 2015, for a game against the Miami Marlins. The Rays are averaging 15,131 after 20 home dates, the lowest average in the majors.
Royals: RHP Jason Hammel (1-3) looks to end a road skid Wednesday night against the Rays. He is 0-5 in six road starts since beating Milwaukee July 22 while with the Chicago Cubs.
Rays: RHP Chris Archer (2-1) attempts to beat the Royals for the first time Wednesday night. He is 0-4 with a 5.63 ERA in five starts against them.
More AP baseball: apnews.com/tag/MLBbaseball