Este municipio se localiza en la región noroeste del estado, muy cerca del eje Neovolcánico y la Sierra Madre del sur. Colinda al norte con el municipio de Huitzilac, al sur con Temixco, Xochitepec, Huitzilac, Tepoztlán y Jiutepec, tanto al oriente como al poniente nuevamente con el municipio de Temixco y Ocuilan en el Estado de México. Posee una extensión territorial de 151.20 kilómetros cuadrados y una altura promedio de 1,480 metros sobre el nivel del mar.