BUFFALO -- After turning in a sluggish performance against Atlanta last week, the Chiefs were hoping the return of key contributors like linebacker Tamba Hali and defensive back Brandon Flowers would energize the defense.
The Bills had other plans.
Fueled by CJ Spiller's 123 yards and two touchdowns, Buffalo defeated Kansas City 35-17 Sunday.
Spiller's inspired effort came one week after opening-day starter, Fred Jackson, sustained a knee injury. His strong day began with a 17-yard touchdown carry, breaking the scoring open with 2:01 left in the first quarter.
He'd be responsible for the day's second score, too, sweeping five yards to the corner and providing Buffalo (1-1) with a 14-0 lead in the second quarter.
The Chiefs (0-2) sustained a quiet start until their final drive of the first half. After putting together a 6-play, 29-yard drive to open the game, they managed to pick up just one first down until their final opportunity in the second quarter.
Bills quarterback Ryan Fitzpatrick got into the mix when he found tight end Scott Chandler for a 10-yard scoring strike with 21 seconds before halftime.
Kansas City responded with a 9-play, 77-yard march to the one-yard line. There, Peyton Hillis fumbled just before breaking the plane. The Bills recovered the ball in the end zone, a call that withstood head coach Romeo Crennel's challenge.
Out of the locker room, Ryan Succop booted the Chiefs onto the scoreboard. He nailed a 33-yarder just before his team succumbed to another pair of scores.
Midway through the third, Fitzpatrick connected with a wide-open Stevie Johnson for a 49-yard touchdown pass and a 28-3 advantage.
After another three-and-out for Kansas City, Leodis McKelvin pulled off the second-longest punt return in Bills history. He took Dustin Colquitt's punt 88-yards, giving Buffalo a commanding 35-3 lead.
The Chiefs offense finally made noise in the final quarter. Matt Cassel connected with receiver Dwayne Bowe twice, from two and 33 yards out, for scoring strikes. Bowe finished with eight receptions for 102 yards.
Cassel completed 23-of-42 passes for 301 yards, two scores and one interception.
Peyton Hillis received the bulk of the carries in the ground game, getting 11 touches for 66 yards. Jamaal Charles was kept out much of the ballgame, carrying only six times for three yards.
Kansas City travels to New Orleans next Sunday to face the Saints in a 1 p.m. ET kickoff.