El municipio de Herrera se encuentra situado en el extremo sur-oriental de la provincia de Sevilla, en la comarca de la Sierra Sur. Herrera posee una situación geográfica privilegiada, ya que se encuentra en el centro geográfico de Andalucía. Las principales capitales andaluzas (Sevilla, Córdoba y Málaga) se encuentran a menos de una hora de distancia.
El municipio, de 53,36km² de extensión, limita al norte con el río Genil y el término de Écija; al sur, con Estepa; al este, con Puente Genil (Córdoba); y al oeste, con el término de Marinaleda.