Municipo ubicado en la zona central del estado, colinda al norte con el estado de Tlaxcala, al este con el municipio de Tlaxcala y el municipio de Puebla, al sur con San Pedro Cholula y nuevamente con Puebla, finalmente al oeste colinda con el municipio de Coronango. Cuenta con una extensión territorial de 33.17 kilómetros cuadrados y una altura promedio de 1,990 metros sobre el nivel del mar.