Byen er plassert i det nordvestlige hjørnet av øya, og har havn ut mot Tyrrenhavet. Bukten ligger ved foten til det 606 moh høye fjellet Monte Pellegrino. Byen har et typisk middelhavsklima, med milde og våte vintre og varme somre.