The 21-year-old Welsh international has grabbed headlines this season after some dazzling performances in the Champions League, including a hat-trick at Inter Milan in October.
He has been linked with many of Europe's top clubs but has decided to tie himself to the North London team.
"I am enjoying my football at Tottenham. I want us to keep going forward as a team and hopefully we can achieve big things," Bale told the club website.
"I definitely believe we can challenge for a title very soon," he added with Spurs fifth in the league and in the Champions League quarter-finals where they face Real Madrid.
"We have proven in the Champions League this season that we can compete with the best and we are in the last eight now and there is no reason we can't go further this season and in years to come," he said.
Bale, who joined Spurs from Southampton in 2007, has scored 11 goals in 34 games this season.
Tottenham manager Harry Redknapp said: "It's great to have Gareth sign a new contract. He has his whole future ahead and he has everything going for him. He really is an amazing talent and can only get better."
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.