Město se rozkládá především na pobřeží Tyrhénského moře, kde se mírně svažuje mezi jezery Lago a San Marco, na svazích Colle Sant'Angelo, kde se zvedá Castellabate. Jeho území spadá celé do obvodu národního parku Cilento, Vallo di Diano a Alburni a nachází se zde mořská rezervace Castellabate, která byla zřízena v roce 2009: chráněná mořská oblast Santa Maria di Castellabate.