Giavotella's first-inning hit was the third consecutive RBI single off Giants starter Yusmeiro Petit, who was charged with eight runs and nine hits in 1 2/3 innings. Following Giavotella, Anthony Seratelli walked to load the bases before Hayes drilled a three-run double.
Giavotella added a two-run single in the second inning. Hayes' RBI single capped a three-run fourth inning.
The Giants, who have lost four consecutive decisions, didn't muster a hit until the sixth inning, when Gregor Blanco tripled with one out off J.C. Gutierrez. Blanco scored as Nick Noonan, the next batter, also tripled. Brandon Belt added his fourth homer of the spring in the seventh.
Kansas City starter Yordano Ventura sparkled in his three-inning outing, walking two and striking out three.
Ventura, who started in place of sore-shouldered Wade Davis, is a top prospect who started for the World team in last year's All-Star Futures Game.
"The breaking ball and changeup were good, the fastball was hard and down -- very good," Ventura said.
Up next: Expect most of San Francisco's regulars who remain in camp, such as catcher Buster Posey, right fielder Hunter Pence and outfielder Gregor Blanco, to be in the lineup again Sunday when the Giants face the Milwaukee Brewers. They'll complement Opening Day starter Matt Cain, who'll make his fourth Cactus League appearance. Cain appeared in relief last Monday against the White Sox, piggybacking with Ryan Vogelsong. He allowed two runs and five hits in three innings.