El río Eo es un río del norte de la península ibérica que discurre en su mayor parte por tierras de Galicia y en su tramo final es limítrofe con Asturias (España).
El río Eo[3] nace en Fonteo, Baleira (Lugo); si bien la fuente más alta se encuentra en Pradeda, Esperela, también en el concejo de Baleira, a unos 6 kilómetros al sur de Fonteo.
Discurre a lo largo de unos 81 km a través de los municipios de Baleira, Ribera de Piquín, Fonsagrada y Puentenuevo (Galicia), San Tirso de Abres y Vegadeo (Asturias), sin llegar a afectar a Castropol, y finalmente también por Trabada y Ribadeo (Galicia); afectando a las comarcas Fonsagrada y La Mariña Oriental en la parte gallega y Eo-Navia en la asturiana.
Desemboca en el mar Cantábrico, formando la ría del Eo, entre Ribadeo y Castropol.
Sus afluentes principales son, por el este, los ríos Rodil y Turía.