ORCHARD PARK, N.Y. — LeSean McCoy and the Buffalo Bills didn't just outrun the San Francisco 49ers on Sunday — they trampled them.
Buffalo charged through a porous 49ers run defense to the tune of 312 rushing yards to beat San Francisco 45-16 in front of 70,003 at a windy, overcast Sunday.
McCoy finished with 140 yards on 19 carries and three touchdowns, while Bills quarterback Tyrod Taylor added 68 yards rushing on eight carries. McCoy and Taylor, a Hampton High and Virginia Tech alum, found big holes against the NFL's second-worst run defense thanks to an impressive performance by the offensive line and its dynamic speed in the open field.
"If you want to give out any game balls today, you give it to the offensive line," McCoy said. "They whupped them up and down the field. They made my job easy."
The rushing output was the team's best since 1992. It's also the Bills' first four-game winning streak since 2008, when Buffalo started the season 4-0 but failed to make the playoffs. The win streak follows new offensive coordinator Anthony Lynn's new philosophy of a run-heavy attack that mixes inside power runs along with option and Wildcat packages.
"They're on a roll," McCoy said of the offensive line. "They're on a big roll, and I'm gonna ride that train."
McCoy's first score came on a 4-yard option run to answer a 33-yard Phil Dawson field goal, which opened the scoring. Later in the second quarter, McCoy took a direct snap in the Wildcat for a 12-yard touchdown that made it 14-10 Bills. The score set up an impressive 38-yard scamper from McCoy followed by Taylor's longest rush of the game — a 22-yard run that put the Bills inside the red zone.
"We thought we had a chance to be successful running the football, and we did have a great plan," Bills coach Rex Ryan said. "Never really altered from the plan, we just stayed the course and things worked out."
Taylor went 17-of-26 passing for 179 yards and two touchdowns in the win. His first score of the day was a 30-yard pass to wideout Justin Hunter slanting to the left sideline to put Buffalo up 24-13 with 2:34 left in the third quarter. San Francisco answered with another field goal, but two Bills touchdowns in 23 seconds followed to put the game away.
First, McCoy got his third score on an 18-yard run off the right guard that matched an 18-yard scramble from Taylor to put Buffalo back in the red zone. On the ensuing kickoff, Nickell Robey-Coleman forced a fumble, which was recovered by Buffalo's Jordan Meeks. After a pass-interference penalty drawn by McCoy, Taylor found Robert Woods crossing the right side of the end zone for a 10-yard strike to make it 38-16 Buffalo with 10:32 to play.
"We got a great play on special teams, and we were able to go right back out there and punch it in," Taylor said. "Those are great momentum swings and at home you need that, you need to ride the wave."
Buffalo running back Mike Gillislee added a 44-yard touchdown run to cap the game's scoring on a handoff from backup quarterback E.J. Manuel of Virginia Beach, who replaced Taylor under center with 9:05 left on the clock.
Colin Kaepernick, who started his first game for the 49ers since his national anthem protests against police brutality began, threw a 53-yard strike to Torrey Smith on a busted defensive assignment from Buffalo's secondary early in the second quarter.
The elusive playcaller also found room to run on the ground, with 66 yards on eight carries, but only completed 13 of 29 passes for 187 yards and was sacked three times. Fans in Orchard Park chanted "USA, USA" throughout the game and booed Kaepernick's initial appearance on the field.