The story, though, was Duffy. After not recording a strikeout in an outing for the first time since 2015 against the Angels on Monday, Duffy returned to form in a big way with his first game with double-digit strikeouts since last May against the Yankees.
"I've been around this game for a long time," Duffy said. "I knew my team needed innings today. I know our bullpen has been taxed."
Duffy allowed just two runners to reach scoring position, escaping his biggest jam in the seventh. With runners on first and second and one out, Duffy struck out Chad Pinder on three pitches and then punched out Josh Phegley to end his day at 98 pitches.
"There's no free strikes, so throw every fastball with conviction and go right after them with every pitch," Duffy said on his mindset. "We were throwing our best pitch with each pitch."
After struggling to command his fastball in his last outing, Duffy commanded all three of his pitches -- fastball, changeup and slider -- on Saturday. Duffy was ahead in the count often, and he said catcher Salvador Perez called a lot of changeups to keep hitters off balance. He thought he made the A's hit his pitches all game long, and manager Ned Yost agreed.
"Got ahead in the count, [had] really, really good stuff all day long," Yost said. "We need Danny. This was good to see him pitch like this."
Yost said he wanted to send Duffy back out for the eighth, but ultimately he went to the bullpen. Kevin McCarthy pitched a scoreless eighth and Kelvin Herrera recorded his 14th save to close out the game. It is the first time the Royals have shut out an opponent since April 9 against the Mariners, a welcome sight for a pitching staff that entered the day with the worst ERA in the Majors.
Despite the win, the Royals' offense continued to struggle, as A's starter Chris Bassitt pitched well on the other end in seven innings of work. The Royals managed just three hits, and were held to two runs or fewer for the sixth time in the last nine games.
MOMENTS THAT MATTERED Despite not scoring a ton of runs, the Royals managed to string together a couple of hits in the second inning, when Goins doubled and Orlando singled him in to put Kansas City on the board first. After Friday's loss, when the Royals failed to get a hit with a runner in scoring position, Yost lamented his team failing to put hits together to create scoring rallies.
HE SAID IT "As an offense we always try to add on. We're not comfortable with a 1-0 lead, especially with this offense that Oakland has, capable of getting a home run at any time. It was definitely good to get another run, but the way [Duffy] was pitching, I didn't see it happening." -- Gordon, on playing with a 1-0 lead behind Duffy
MITEL REPLAY OF THE DAY The Royals challenged two calls on the same play in the fourth inning. With two outs and Alcides Escobar at second, Orlando hit a ground ball to shortstop Semien, who threw wide of first baseman Matt Olson, but was called out on a swipe tag. Olson then threw home, where Escobar was tagged out by catcher Phegley. After a review that took 3:37, the call at first was overturned, but the call at home stood. Orlando was safe at first but Escobar out at home, ending the inning.
UP NEXT Brad Keller will toe the rubber for the Royals in the series finale on Sunday. Keller is making his third start and is 1-2 with a 2.12 ERA after beginning the season in the bullpen. The A's will send Sean Manaea (5-6, 3.59 ERA) to the mound for the 3:05 p.m. CT first pitch at the Coliseum.
Eric He is a reporter for MLB.com based in the Bay Area.