Ubicado en la Sierra Madre del Sur. El municipio tiene un área de 2,881.57 kilómetros cuadrados (4.89% de la superficie del estado) y limita al norte con el estado de Jalisco y el municipio de Tepalcatepec , al este con Arteaga y Aguililla , al sur por Aquila , y al oeste por Chinicuila .