Colinda con Ocozocoautla y Cintalapa al norte y al este continúa colindando con Ocozocoautla y con Villaflores, éste último también colinda al sur así como el municipio de Arriaga y al este colinda con Cintalapa. Cuenta con una superficie territorial de 1,197.3 kilómetros cuadrados y una altura promedio de 520 metros sobre el nivel del mar.