Es un río español que nace en la Sierra de Cazorla, en el término municipal de Quesada (Jaén). Su cuenca hidrográfica abarca territorios de Jaén, Córdoba, Almería, Granada, Málaga, Sevilla, Huelva y Cádiz, así como de Murcia, Albacete, Ciudad Real y Badajoz. Desemboca en el Océano Atlántico por Sanlúcar de Barrameda, en un amplio estuario entre la provincia de Cádiz y la de Huelva.