Tiene una longitud de unos 56,95 km.[2] Se considera que nace en la ladera sur de la Sierra del Rey, en la fuente del Borobollón, aunque también recibe aportes de arroyos provenientes de la sierra de Camarolos,[3] y discurre en dirección noroeste-sureste hasta su desembocadura en el río Vélez en la proximidades de la localidad de Trapiche, en el término municipal de Vélez-Málaga.
Tras un recorrido de unos 24 kilómetros a través de los términos de Comares, Cútar y Benamargosa, el río de la Cueva confluye con el río Cútar junto al paraje del Salto del Negro, donde pierde su nombre y pasa a llamarse río Benamargosa.[4]
BENAMARGOSA: r. en la prov. de Málaga, part. jud. de Velez-Málaga: tiene su orígen en las vertientes de las pueblas de Alfarnate y Alfarnatejo: lleva su curso por la v. de Riogordo, pasa lamiendo las cercanías de Benamargosa, y se une al dicho de Velez, por el part. de Cabrillas: generalmente es escaso de aguas, con especialidad en el verano, que 2 leg. antes de llegar á la v. de su nombre, las cortan para regar los huertos de sus orillas, perdiéndose la restante en la abundancia de arenas que lleva á su paso.