Este municipio presenta límites al norte con el municipio de Chalchicomula de Sesma, al sur con Cañada Morelos, al este con el estado de Veracruz y al oeste colinda con el municipio de Palmar de Bravo. Posee una extensión territorial de 116.09 kilómetros cuadrados y tiene una altura promedio de 1,400 metros sobre el nivel del mar.