The clubs are believed to have agreed a fee in excess of £8m with Caulker agreeing to terms on what is reported to be a five-year deal.
The 21-year-old told Cardiff's website: "I want to say how happy I am to have signed with Cardiff City. I'm delighted to be here & excited for this fresh challenge."
He started 18 Premier League games for Spurs last season and spent the previous season on loan with Cardiff's rivals Swansea City, playing a further 26 top-flight games.
He made his senior England debut last November and scored in the 4-2 friendly defeat by Sweden.
Caulker is Cardiff's fourth summer signing and, if the fee proves to be accurate, their new record signing, surpassing the £7.5m they paid for FC Copenhagen striker Andreas Cornelius on July 1.
Derby County defender John Brayford and Brentford goalkeeper Simon Moore have also joined the club this summer and boss Malky Mackay is keen on bringing in Toulouse midfielder Etienne Capoue as well.