Terms were not disclosed but according to local media the deal was for five years.
“It’s a good day for us. Our football team got better,” Bills general manager Buddy Nix told reporters.
“One of our philosophies coming in was that we wanted to try to keep our good players here, draft good, develop them and then try to keep them and we were able to do that with Stevie Johnson.
“It goes without saying what he’s done in the past two years and I think it’s just going to get better.”
For the second consecutive season, Johnson led the Bills in receiving with 76 catches for 1,004 yards and seven touchdowns.
The only Bills receiver to post back-to-back 1,000 campaigns, Johnson has spent his entire career in Buffalo recording 170 catches for 2,189 yards and 19 touchdowns over four seasons.
“I’m not doing them any favors. They did me a favor by picking me,” Johnson said.
“I want to remain loyal to them like they did with me because there could have been times where they could have let me go.”
(Reporting by Steve Keating in Toronto, editing by Justin Palmer and Julian Linden; To query or comment on this story email )