El municipio se encuentra localizado en el extremo suroeste del territorio oaxaqueño, en la costa del océano Pacífico y en la planicie costera al pie de las montañas de la Sierra Madre del Sur.