La città è situata nell'agro pontino
al bordo meridionale della pianura stessa, in prossimità della foce del fiume Amaseno, sulla costa tirrenica (golfo di Gaeta); la città si sviluppa da una propaggine del Monte Sant'Angelo (Monti Ausoni), dove giace il centro storico, fino al lungomare Circe.
La rupe di Pisco Montano segna nettamente il confine meridionale del centro abitato; a sud si apre la pianura di Fondi, a nord l'urbanizzazione degrada progressivamente verso la campagna aperta e i borghi rurali.