The headwaters of Agno River are at the slopes of Mount Data in the Cordillera Mountains at an elevation of 2,090 metres (6,860 ft), where it drains Cretaceous to Paleocene igneous basement rocks, and marine siliciclastic and carbonate rocks. Of its total length, about 90 kilometres (56 mi) runs through mountainous terrain and canyons.