Elvas utspring er ved Yamunotri i Himalaya, i delstaten Uttarakhand. Den renner gjennom delstatene Himachal Pradesh, Delhi, Haryana og Uttar Pradesh før den løper sammen med Ganges ved Allahabad. Langs elva ligger byene Baghpat, Delhi, Noida, Mathura, Agra, Etawah, Kalpi, Hamirpur og Allahabad. De største sideelvene er Tons, Chambal, Betwa og Ken.