Este municipio está ubicado en la zona de la Sierra Nevada, cerca del conocido Río Moctezuma en el estado de México. Limita al norte con el municipio de Tlalmanalco, al este con el estado de Puebla, al sur con los municipios de Atlautla y Ozumba y finalmente al oeste limita con los municipios de Ayapango y Juchitepec. Cuenta con una extensión territorial de 181.72 kilómetros cuadrados.