The 25-year-old goalkeeper is set to be reunited with Mauricio Pochettino, who managed him during his time at Southampton and he'll provide extra cover for Hugo Lloris and Michel Vorm.
Spurs had previously considered signing Pau Lopez on a permanent deal, the player spent last season at White Hart Lane on loan from Espanyol, but instead they turned to Pochettino's compatriot, Gazzaniga.
Gazzaniga has not played for the Saints since December 2015, where his side lost 2-0 to Pochettino's Tottenham and he was beaten by Harry Kane and Dele Alli.
The goalkeeper was part of the youth set-up at Valencia and spent last season on loan at Rayo Vallecano in the Spanish second tier, playing 32 league games and keeping 11 clean sheets.
Gazzaniga was already at Southampton when Pochettino arrived at St. Mary's in 2015, having joined from Gillingham the previous summer. He made eight appearances under his fellow countrymen and then four under Ronald Koeman.
The player is set to become Spurs' second summer arrival after the club confirmed the signing of Davinson Sanchez from Ajax for a club-record fee of £38.4m, pending a medical and work permit.
The north London side remain firmly interested in Ross Barkley and they have held talks with Celta Vigo over a deal for midfielder Pape Cheikh Diop as a possible alternative. Pochettino's side also wants to bring in an attacker before the transfer window closes.