El municipio colinda al Norte con el municipio de San Nicolas de Los Ranchos, al Sur con los municipios de Atzitzihuacan y Cohuecán, al Este con los municipios de Tanguismanalco y Atlixco, al Oeste con el estado de Morelos y el volcán Popocatépetl. Se llega por la carretera federal 150. Se localiza a 38 km. de la ciudad de Puebla. Tiene una superficie de 218.94 kilómetros cuadrados.