Cuenta con una superficie territorial de 198.8 kilómetros cuadrados y se localiza a una altura promedio de 640 metros sobre el nivel del mar, limita al norte con el municipio de Huitzuco y con el estado de Morelos, al sur con Copalillo, al oriente con el estado de Puebla y con el municipio de Olinalá y al poniente limita nuevamente con Huitzuco.