Scott Chandler and Stevie Johnson fumbled the ball away to give Atlanta the win.

TORONTO — William Moore made up for one dubious moment with two a strip and a scoop. Moore recovered Stevie Johnson's fumble at the end of regulation and then forced Scott Chandler's in overtime to send the Atlanta Falcons to a 34-31 win over the Buffalo Bills on Sunday at the Rogers Centre.

The Falcons erased an early 14-0 deficit, then blew a third-quarter lead before Matt Bryant's 36-yard field goal won it in overtime thanks to two big mistakes by the Bills.

"It hurts," said Chandler. "You hate to let the fans down and you really hate to let your teammates down. But that's part of the game."

After Steven Jackson tied the game with a 1-yard touchdown with 1:28 left, E.J. Manuel drove the Bills into Atlanta territory for what could have been a game-winning field goal try. A third-down completion to Johnson put the Bills in position for a field goal, but Robert McClain punched the ball away and Moore made the recovery.

"I knew we had the game sealed with that and he came from behind and made a play," said Johnson.

Then in overtime, Manuel connected with Chandler for 22 yards on the opening drive of overtime to set the Bills up in Falcons territory once again. This time Moore poked the ball away and Robert Alford made the recovery.

Matt Ryan hit Harry Douglas for 20 yards on 2nd down and Bryant kicked the game-winner three plays later.

"It's discouraging," said Bills head coach Doug Marrone. "We have to do a better job, overall, so it doesn't come down to that."

Moore's unnecessary roughness penalty on Robert Woods' 33-yard catch set up C.J. Spiller's 36-yard touchdown which gave Buffalo a 31-24 lead with under 12 minutes left in the game. Ryan helped give Moore a chance to redeem himself.

The Falcons' quarterback completed three first-down passes and got help from a pass interference call on Nickell Robey in the end zone to set up Steven Jackson's game-tying score. "I was just playing football, trying to make a play," said Robey of the play which came on a 3rd-and-goal from the 16. "I felt like he pushed me more than I held him.

"I felt like when the ball was coming, it was underthrown and when I was trying to come back to the ball, he extended his arms and I fell."

Ryan finished 27-of-48 for 311 yards and Steven Jackson rushed for a season-high 84 yards and two touchdowns.

"I thought the best thing about us was that we didn't blink," said Ryan. "With fumbles, etc., in the fourth quarter we just kept responding. That's the thing I'm proud of today."

Atlanta (3-9) snapped a five-game losing streak and picked up its first road win of the season.

"Today's game was a reminder that football is the ultimate team game," said Falcons head coach Mike Smith. "We needed every man in that locker room to get the win."

The Bills led 14-0 after their first two possessions, but the Falcons rallied to tie it on Bryant's 49-yard field goal on the final play of the first half. The Falcons then took the lead on Ryan's 11-yard touchdown pass to Tony Gonzalez midway through the third quarter.

A fumble on a botched snap recovered by Kiko Alonso set the Bills up inside the Falcons' 25-yard line. One play later, Manuel connected with Fred Jackson on a 21-yard touchdown pass to tie the game with six minutes left in the third.

Manuel threw for 210 yards on 18-of-32 passing and Spiller finished with a season-high 149 yards on 15 carries.

"It definitely stings," said Manuel. "It's a tough pill to swallow right now and we just have to move forward."

Spiller's career-best 77-yard run on the Bills' second play from scrimmage set up Manuel's 1-yard touchdown — his first career rushing score — to make it 7-0. On the next possession, Fred Jackson's career-high seventh rushing touchdown of the season made it 14-0.

Fred Jackson ran for 42 yards on 11 carries and also caught four passes for 36 yards for Buffalo (4-8).

Atlanta got closer with touchdown runs of 27 yards by Steven Jackson and 38 yards by Antone Smith to make it 17-14 with under five minutes left in the second quarter.

Roddy White had, by far, his best game of the season with 10 catches for 143 yards. White, a four-time Pro Bowler who has been hampered by a high ankle sprain, entered Sunday's game with only 20 catches for 209 yards and one touchdown after six consecutive season with at least 80 catches.

Atlanta also got a boost from its struggling running game. The Falcons had been averaging just under 75 rushing yards per game, but had 151 against the Bills.

"I'm definitely in my rhythm," said Steven Jackson. "The offensive line is doing a good job giving me some push, giving me some options, and once they do that, I have to take advantage of that."

The Bills head to Florida for games at Tampa Bay and Jacksonville before returning for its home finale against the Miami Dolphins on Dec. 22. The Bills close to season at New England on Dec. 29.

Notebook: Jerry Hughes had two of Buffalo's six sacks … Spiller's 77-yard run was the longest non-scoring run from scrimmage in Bills' team history … Marrone won his first replay challenge of the season on Manuel's first-quarter touchdown run … Embattled Toronto Mayor Rob Ford attended Sunday's game wearing a Fred Jackson jersey … The Beach Boys performed at halftime … Douglas caught six passes for 73 yards … The Bills announced the attendance at 38,969 — the lowest for any of the six regular season games in Toronto.