Bantams interim manager Peter Jackson told the club website: "He has had several Championship and League One clubs enquiring about him.
"Whatever league you score them in, scoring goals is one of the most important things in football."
Jackson added: "He has said all along that his gut feeling was to join Bradford and I am thrilled that he has signed for us."
This season, Hannah broke Matlock's 28-year-old record for goals scored in a season by one player, contributing 35 of their of 74 league goals.
Last season the former Sheffield Wednesday and Sheffield United junior weighed in with 37 goals in league and cups.
I don't ever want to lose this chance, so I'm going to give it my all. Ross Hannah He told the club website: "I asked for the advice of several experienced people I know, including my ex-manager, and they said 'go with your gut feeling'.
"Once I came here and I saw what the plans were I knew straight away where I wanted to be."
Hannah's one-year-contract also has a clause enabling Bradford to automatically extend his contract by a further year at any point during next season.
"There's a lot of hard work for me still to do, I am fully aware of that, and that work starts from today for me," he said.
"I don't ever want to lose this chance, so I'm going to give it my all.
"Going from semi-professional to professional is a jump, it's an obvious jump, but other players have done it before.
"James Hanson has done it here, David Syers has done it here - I can't see why I can't do it as well."