Situada al noroeste de la provincia, en las estribaciones meridionales de los Montes de Toledo con el Campo de Calatrava, se encuentra la antigua Porzuna. Su término está atravesado por varios conjuntos montañosos, como son la Sierra del Trincheto, la de Utrera, la Sierra del Pico, Las Palomeras, Solana de Cubas y el Puerto de los Majales. Bañan sus tierras el río Bullaque y los arroyos Tamujar y Tejar.