The 23-year-old becomes Spurs' record signing, beating the £11m they paid for Sergei Rebrov in 2000.
"Tottenham have a lot of young English players and it's a young squad, it's a squad going forward and that's the direction I wanted to take," said Bent, who has two senior England caps.
"They seem to be getting better and better every season and I would love to be part of that.
"It helps a lot that I know a few of the lads from England internationals and I'm sure they will help me settle in.
"It's exciting times for me and the club, hopefully I'll show what I can do at Tottenham and we'll go on to win things."