Jose Mourinho has been keen to bring in another centre-back, but the Premier League side could get no deal over the line during the international transfer window.
They quickly switched their attention to the domestic market, with the window open until today, and zeroed in on Wales international Rodon.
Agreeing a fee with Swansea proved tricky, but Tottenham have a deal and will pay £11m plus add-ons for Rodon.
Swansea had initially been looking for between £18m and £20m to let Rodon go, but Tottenham have managed to knock the Welsh giants down.
Tottenham have bought extra time to do complete the transfer with a deal sheet and Rodon is expected to become a Spurs player soon.
Swansea are replacing Rodon with Ryan Bennett, who is set to head to the Liberty Stadium from Wolves.
Rodon came through the youth ranks at Swansea and has seven caps for Wales to his name.