During its course the river meets the Barvi River, which is actually the discharge water of Barvi Dam. This meeting point is a tourist spot and a fishing spot for villagers. It is at Thane the river separates into two. One branch flows in the west direction and the other branch in the south direction. It is around the Salsette Island where lies the city of Mumbai. The two branches are estuarine in nature and they lie on seismic fault line. The river then turns in the northwest direction towards Ghodebunder, where it opens into an estuary known as Vasai Creek.
The Thane Creek flows in the south direction and empties into the Bombay Harbour. The estuary of Ulhas houses several historical ports of Kalyan, Kopri and Shurparaka. The important tributaries of the Ulhas River are Bharvi, Bhatsa and Kalu rivers.