Royals answer SF Giants 9th inning comeback with walk-off bunt

Down to their last out, the San Francisco Giants rallied to tie the game on a two-run, 380-foot home run from Willy Adames. Then the Kansas City Royals walked them off with two bunts that traveled about 38 feet each.
The Royals sent the Giants to their third straight loss after Nick Loftin bunted home Josh Rojas for a walkoff, 4-3 win. Rojas singled off Caleb Killian (2-6, not a great record for a closer!), then Tyler Tolbert reached on a bunt when the Giants tried and failed to force Rojas at second base. Rojas went to third on a fly ball to center, and then Loftin’s squeeze bunt succeeded, despite him bunting his first attempt foul.
Bryce Eldridge couldn’t handle the bunt in his rush to nail Rojas, but Daniel Susac wasn’t really standing in the right spot to take his throw anyway. Just like how Adames wasn’t standing on second base on the attempted force play. It wasn’t the proudest defensive inning.
It was almost an inspiring night in Kansas City. The non-Killian members of the bullpen delivered four shutout innings after starter Trevor McDonald left after suffering elbow discomfort while warming up for the 5th. JT Brubaker threw 2.1 innings and Dylan Smith bailed him out when he got in trouble in the 7th. The mustachioed Jason Foley remained perfect in his second appearance, working a 1-2-3 8th.
Drew Gilbert got McDonald out of a no-out, bases-loaded jam in the second inning by gunning down Lane Thomas at the plate.
Susac had two hits. Bryce Eldridge struck out three times, but drew a walk to maintain his eight-game on-base streak that he probably doesn’t realize he even has. Bobby Witt, Jr. left the game with lower back tightness, which actually seems cruel to list as a positive for the Giants, but it’s a three-game series and they need all the help they can get. And Heliot Ramos delivered his first extra-base hit in two weeks when he opened the scoring with a home run in the 4th inning, his ninth of the season, launching the ball 430 feet and nearly hitting it into the weird outfield fountain.
McDonald got into trouble because, like Eleanor of Aquitaine, he just couldn’t stop drilling Royals. He loaded the bases in the second by hitting Salvador Perez with an errant slider, then put Vinnie Pasquantino on first when another slider got away from him. Perez took revenge two pitches later.
It was Perez’s 316th career homer — putting him just one behind George Brett on the Royals’ all-time home run list. Mike Sweeney, Amos Otis, and Alex Gordon are third through fifth, but they’re 120 or more behind Perez and Brett.
Kansas City got their third run later in the inning when Michael Massey doubled and Isaac Collins singled him home. McDonald left after that, having yielded eight base runners in four innings with four hits, two walks, and two hit batsmen.
Meanwhile, Royals starter Michael Wacha shut down the Giants for six innings, besides Ramos’ big fly. He gave up two singles, two walks, and a massive dinger, with all those hits coming with two outs.
You probably remember Wacha from the 2014 St. Louis Cardinals, when he came into Game 5 of the NLCS in relief and gave up a series-winning home run to Travis Ishikawa.
The top of the 9th inning was as inspiring as the bottom was a bummer. After Rafael Devers and Ramos both struck out, Jung Hoo Lee singled off Alex Lange, who got the rare blown save/win combination, then Adames hit when out the opposite way for his 18th homer.
But the 2026 San Francisco Giants cannot have nice things, so it all fell apart. With bunts. They continue to find new and innovative ways to lose, so at least it’s not boring.



