El río nace en el lago Taihu, de allí sigue al lago Dianshan y pasa por el distrito chino de Huangpu, que lleva su nombre, y desemboca en el mar de China Oriental.