Adebayor, 28, scored 17 Premier League goals and bagged 11 assists in a fruitful loan spell at White Hart Lane last season, with Spurs working to seal a return for the former Arsenal forward all summer.
No further details were made available by either club, although he is believed to have signed a three-year contract with the North Londoners.
The move had been expected all summer long, with the clubs agreeing a fee, believed to be around £5m, for the striker more than a month ago.
But Adebayor's estimated £175,000-a-week wages were a problem, with Tottenham unwilling to break their wage structure to secure a permanent deal.
That seems to have been overcome by Manchester City working out a sizeable severance package to move Adebayor off their books. The BBC report that in effect City will subsidise the forward's wages, paying him the difference between his wages at Tottenham (an estimated £80,000 a week) and what he would have earned staying at the Etihad Stadium.
The player confirmed the move, saying on Twitter: "I'm back. Tottenham here I come. I'm hungry for goals... Get ready".
He later added on the Spurs website: "I am pleased to be signing for Spurs on a permanent basis after finally agreeing my departure with Manchester City.
“It may have taken longer than expected but I am delighted to be back at Tottenham Hotspur. I really enjoyed my time here last season and I am hoping we can achieve great things together again."
Tottenham lost 2-1 at Newcastle in their first Premier League match of the new season, with Jermain Defoe - the only senior striker left at the club - on target for Andre Villas-Boas's side.
Adebayor joined City from Arsenal in 2009, hitting 14 league goals in his first season before falling out of favour with Roberto Mancini and spending time on loan at Real Madrid and Spurs.