I am trying to delineate watersheds automatically using Arcgis/Arc Hydro. I got the drainage area contribution of stream segment (part of stream) as shown in figure stream. The corresponding drainage area as shown in figure area. But I am looking for drainage areas/catchment areas as shown in figure Water Shed. In watershed figure , at any point on the stream, it calculates drainage area by considering entire upstream length of the stream. Suppose, if you choose point "8", its catchment/drainage area covers the area of points "9" and "10". Similarly for point "5" covers all points upstream of stream. I want to get similar automatic watershed delineations. Please guide me to the software/method to get the result as shown in figure watershed for my entire stream network of an area.




3 Answers 3


The areas you are looking to create are called "subwatersheds" or subsheds. You can use the "Batch Subwatershed Delineation" tool in ArcHydro under the "Watershed Processing" menu. This will calculate subsheds from a set of points you define. The other input is a flow direction grid. This is a raster where the value of each pixel represents the direction water would flow from this pixel (N, NE, E, SE, S, SW, W, NW).

The data you have in your screenshots look like the 1:100,000 resolution National Hydrography Dataset (NHD). If this is the case, the NHDPlus dataset has a flow direction grid already calculated that you can download. Otherwise, you will need to use the "Flow Direction" tool in ArcHydro under the "Terrain Preprocessing" menu to manually calculate flow direction from an input digital elevation model (DEM).

Note that the spatial resolution of your subwatersheds is limited to the spatial resolution of the input DEM.

  • Thanks for your reply. I have given figure watershed with limited points(10) for understanding. If it is the case, I can choose each point and calculate corresponding areas by using batch process in archydro. But in my case, to my entire stream network, I have taken points at equal interval(say 100m). so I got points in multiple of thousands along the stream (entire network include branches). In this case I cannot take each and every point along the main stream and branches and do batch process to get result.Hence I need a automatic process to calculate by any software or by any method.pls.. Commented Aug 5, 2012 at 14:56
  • @prasad Sorry, I don't understand. Why can't you use the batch processing?
    – dmahr
    Commented Aug 5, 2012 at 15:07
  • If there are few points, then we can select those points as outlets in batch process to calculate subwatersheds. Here are many (thousands of points along the stream) points and selecting each and every point and delineate subwatershed with batch process is hectic process.Hence I need a automatic process to calculate by any software or by any method. Commented Aug 5, 2012 at 15:38
  • Some time ago I did for 25000 points. You do not need any scripting for this.
    – Tomek
    Commented Jul 10, 2013 at 5:59

This may have been answered already, but I thought I would post here for those that come across this question in the future, as I have today.

I ended up creating a process model to perform interations over a feature class of point data. The model creates an intermediate pour point raster from which the watershed is delineated. Each iteration the pour point raster is overwritten with the pour point of the next point feature.

I hope this helps others.

enter image description here


I Googled this when I faced the same issue, and found the solution is using the 'Append' tool in Data Management > General. This will copy all the stream gauges' coordinates into a point file. I think this can be done for raster (as in your case) with somewhat more processing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.