The Sarju rises at a place known as Sarmul, which is located in the extreme north of the Bageshwar district of Uttarakhand. The source of the river is situated at on the southern slope of a ridge of the Nanda Kot and is separated on the east from the source of Ramganga and on the west from the sources of Kuphini by spurs leading down from the mass culminating at the Nanda Kot peak. It flows initially around in southwest direction by the KumaonHimalayas where it receives Kanalgadh stream from the right and Punger river from the left. About further downstream, the river receives Lahor river from the right. Then the river turns towards south and flows through the city of Bageshwar, where it receives Gomati from the right. The Sarju flows to the lower 65 km in mainly southeastern direction. Much of the drainage of Gangoli region of Pithoragarh district flows into the river via Bhadrapatigad stream, which flows into it from the left. Similarly, several streams join it from right draining much of the Chaugarkha region situated in Almora district; notable ones being Gatgadh, Jalairgadh, Bhaurgadh, Alaknadi and Saniaungadh. About downstream from its confluence with Gomati in Bageshwar, it receives the Panar river from the right. About five Km further downstream, at above its mouth, Ramganga meets the left side on the Sarju at Rameshwar, situated at an elevation of. Finally Sarju reaches at Pancheshwar at the Nepalese border to Sharda River after travelling a total of.
Gomati river originates in the higher reaches of Bhatkot and merges into Sarju at Bageshwar. It flows through the Katyur Valley which constitutes a major Agricultural zone of Kumaon.
The Kuloor river rises above the Bhadrkali Temple near Sani-Udiyar, and flows through Rawatsera, Bans Patan and Ganai Gangoli, before joining the Sarju at Seraghat.
Punger
Punger river rises near village Sangar and joins Sarju from the left at Sartana.
Lahor
Lahor is a small river that joins Sarju from the right.
Panar
Panar originates on the northern slopes of the Mornaula Range, south-east of Almora. Panar joins Sarju near Rameshwar.
Ramganga
Ramganga is the largest tributary of Sarju. It originates from the Namik Glacier in Pithoragarh district of Uttarakhand and flows towards Southeast. The river is fed by numerous small and big rivers and finally joins river Sarju at Rameshwar.