Бере свій початок у Західних Гімалаях із льодовика Ґанґотрі в штаті Уттаракханд, тече на південний схід, перетинаючи Гангську рівнину на півночі Індії, і впадає в Бенгальську затоку, формуючи разом з річками Брахмапутра і Меґхна дельту Гангу-Брахмапутри (переважно на території Бангладеш), частина якої вкрита лісами Сундарбанс.