El término municipal limita con 16 municipios de la provincia de Málaga y uno de la provincia de Córdoba; al norte limita con Humilladero, Mollina, Alameda y Benamejí; al noreste, con Cuevas Bajas; al noroeste, con Sierra de Yeguas y Fuente de Piedra; al oeste, con Campillos; al este, con Villanueva de Algaidas, Archidona y Villanueva del Rosario; al suroeste, con Ardales; al sureste, con Colmenar; y al sur limita con Casabermeja, Villanueva de la Concepción, Almogía, Valle de Abdalajís y Álora.