The Pfafstetter Coding System for Watershed Identification

Victor M. Ponce


The Pfafstetter system is a widely accepted methodology for the description of watershed/basin topology. The system describes the regional anatomy of a stream network using a hierarchical arrangement of decimal digits. The Pfafstetter system is important because it assists in the identification of subbasins (or various scales) that have been processed using geographic information systems (GIS).

Pfafstetter Coding System

Fig. 1  The Pfafstetter coding system for watershed identification
(Click -here- to enlarge).

A Level 0 catchment corresponds to a continental-scale size or, alternatively, one that drains into the ocean. Higher levels represent progressively finer subdivisions of the Level 0 catchment. Theoretically, the system is not limited in the number of levels. In practice, however, n = 6 to 8 levels are usually sufficient. At each level, each watershed is assigned a specific integer m, varying from m = 0 to 9, based on its location and function within the drainage network.

At each level, watersheds are assigned into three types: (1) basin, (2) interbasin, and (3) internal basin (Table 1). A basin is a watershed that does not have concentrated upstream inflow, but it has concentrated downstream outflow. An interbasin is a watershed that has both concentrated upstream inflow and concentrated downstream outflow. An internal basin is a watershed that does not have concentrated upstream inflow or concentrated downstream outflow, i.e., it is an endorheic or closed basin.

Table 1.  Subdivision in Pfafstetter Coding System.
No. Type Concentrated upstream inflow Concentrated downstream outflow
1 Basin NO YES
2 Interbasin YES YES
3 Internal basin NO NO

For each level, from 1 to n, the assignment of Pfafstetter codes is performed as follows:

  1. From the catchment outlet, trace upstream along the main stem, and identify the four (4) tributaries with the largest drainage areas. The watersheds containing these four tributaries are classified as basins and assigned even digits (m = 2, 4, 6, and 8), increasing from downstream to upstream.

  2. The intervening watersheds, i.e., those contributing lateral inflow to the main stem, are classified as interbasins and assigned odd digits (m = 1, 3, 5, and 7), increasing from downstream to upstream.

  3. The last odd digit m = 9 is reserved for the headwater watershed, i.e., that tributary to interbasin 7.

  4. The largest internal basin, if present, is assigned the number m = 0. Other internal basins, if present, are incorporated into the closest basins or interbasins.

  5. In the unusual case where two basins, say, 2 and 4, drain at the same place, on one side or opposite sides, the interbasin 3 would be considered a null interbasin, of zero area.

Figure 1 shows a 3-level example of the Pfasfstetter coding system. For each level, say Level 3, the assigned digits (XYm) are appended on to the Level 2 code (XY). For instance, watershed 846 is in watershed 8 of Level 1 (coarser), in watershed 4 of Level 2 (intermediate), and it is watershed 6 of Level 3 (finer).

Pfafstetter Coding System

Fig. 1  The Pfafstetter coding system for watershed identification (Click -here- to enlarge).


190819