Matching USGS gages to SWAT+ channels | SWATGenX

Calibrating SWAT+ against USGS streamflow only works when each gage sits on the channel that represents the same place in the model. This is how SWATGenX makes that match on the Peace River HUC-8 — and decides which gages are ready for automatic calibration.

QA step 2 of 3 · Peace River HUC-8 · NHD-first assignment

This is the second step of the SWATGenX streamflow-QA pipeline: after the river network is delineated from NHDPlus HR (see the delineation comparison), each USGS gage has to be tied to the SWAT+ channel that represents the same hydrologic location. Get this wrong and a perfectly good model will appear to fail calibration for the wrong reason.

We use the Peace River HUC-8 (Florida) as a transparent, fully public reference: how the NHD-first assignment works, how every gage is classified (tributary, mainstem, lake outlet, canal), and how many gages clear the quality gates for hands-off calibration. Per-gage area fidelity — whether the assigned channel carries the right drainage area — is then checked on the drainage-area audit page.

Why gage assignment comes first

A SWAT+ model can only be calibrated against a USGS gage if that gage is tied to the channel representing the same place in the model. SWATGenX makes that match on the Peace River HUC-8 (Florida) reference model and records it transparently — extraction, the assignment class of every gage, and which ones clear the gates for automatic calibration, reported over the full 76-gage inventory rather than a hand-picked subset.

  • Aim: Show how we assign gages (NHD-first, SWAT-second) and how many pass each quality gate before calibration.
  • What we conclude: 54 gages are auto-cal eligible by class; 22 are flagged for manual review (still mapped). Only 16 meet class + obs + SWAT/NHD checks for hands-off calibration.
  • Next: Per-gage area diagnostics and outlier investigation on the drainage-area audit page.
Peace River HUC-8 — reference watershed

Tier L Florida benchmark (03100101): whole-HUC-8 SWAT+ with 76 USGS gages after v3 assignment to chandeg.con.

Basin area
5,983 km²
USGS gages
76
HRUs
94,303
Routed channels
8,181
How we assign USGS gages to SWAT+ rivers

NHD-first: pick the NHDPlus HR reference reach using coordinates, USGS NWIS site drainage area (when available), GNIS/name context, stream order, LevelPath, FType, and lake/canal flags—without using SWAT+ AreaC or chandeg.con area. SWAT-second: map that reach to executable chandeg.con via crosswalk or controlled downstream replacement. Drainage-area comparison runs only after assignment, on calibration-ready stations.

  1. NHD-first reference reach (no SWAT area for reach choice)
  2. SWAT-second map to chandeg.con GIS channel
  3. Assignment class and calibration eligibility
  4. SWAT+ vs NHDPlus HR TotDASqKm ratio (drainage-area fidelity)

NHD-first reference reach (hydrography + NWIS site context, no SWAT area), then SWAT-second map to chandeg.con via NHD→GIS crosswalk or controlled downstream replacement. SWAT+ area is not used to pick the reach—only to audit fidelity afterward.

Full accounting — all 76 Peace gages

Every gage receives an assignment class. Counts below are from the production Peace inventory and must sum to 76. We do not drop gages from this table—manual-review and area-bias flags are shown explicitly.

Reconciliation (must equal 76)
  • 76 in-basin USGS gages with v3 channel assignment
  • = 54 auto-cal assignment class + 22 manual-review class (13 lake outlet · 9 canal)
  • Of auto-cal class: 52 with SWAT/NHD in 0.5–2.0× SWAT/NHD; 2 with SWAT/NHD outside band (2 also lack usable obs → process audit on drainage-area page)
  • 20 have usable 2000–2024 obs (any class); 4 of those are manual-review only (usable obs but not auto-cal)
  • 16 cal-ready for automatic calibration (auto-cal class + usable obs + 0.5–2.0× SWAT/NHD SWAT/NHD)

Counts by assignment class

Auto-cal columns apply only to the three calibration-ready classes. Review gages remain in the model but are excluded from automatic calibration until reviewed.

Assignment classGagesUsable obsSWAT/NHD OKSWAT/NHD biasCal-readyMeaning
tributary_clean361234212Tributary reach; channel choice and SWAT/NHD look consistent
mainstem_known_nhd_offset1641604Mainstem reach; ~10–17% SWAT+ vs NHD offset documented on Peace
mainstem_clean20200Mainstem reach; SWAT/NHD within tight tolerance
lake_outlet_review1330Lake outlet or lake-linked routing — human review before auto-calibration
canal_or_artificial_review910Canal, ditch, or artificial path — human review before auto-calibration
Total762072216All Peace gages
Process audit
2
Auto-cal class, no usable obs, SWAT/NHD outside band
NWIS metadata note
3 of 16 cal-ready
|NHD−USGS|>25%; does not remove from calibration
Missing USGS site DA in NWIS
19
Still assigned; NHD–USGS scatter needs catalog area
Drainage-area snapshot — all Peace gages

USGS NWIS site drainage, NHDPlus HR cumulative area on the assigned reach, and SWAT+ chandeg.con area for every Peace gage. Scatter plots use gages where both compared areas exist; the inventory table lists all 76 with flags for large gaps and cal-ready status.

Large NHD–USGS gaps on canals and lake outlets are expected and visible here—they are why those classes are marked for manual review, not hidden from the inventory.

How to read this section
  1. USGS site drainage — area published for the gage in the USGS station catalog (independent check).
  2. NHD reference area — cumulative drainage on the NHDPlus HR stream reach we assign to the gage (national hydrography).
  3. SWAT+ channel area — drainage area of the executable model channel after routing assignment (compare to both USGS and NHD below).
76 Peace gages in this inventory. 19 lack USGS drain_area_va in NWIS (NHD–USGS scatter and gap bands use the remaining 57). SWAT+ vs NHD scatter uses 76 gages with both areas. NHD vs USGS (57 paired): 15 within 10%; 6 over 50% (0 over 100%). SWAT+ vs USGS: 33 within 10%; 12 over 50% (4 over 100%). On 38 of 57 paired gages, SWAT+ is closer to the USGS catalog than NHD was.

NHD vs USGS — gap bands

07142128Close (≤10%)Moderate (10–25%)Elevated (25–50%)Large (>50%)

SWAT+ vs USGS — gap bands

09182736Close (≤10%)Moderate (10–25%)Elevated (25–50%)Large (>50%)Extreme (>100%)

Large gaps vs who must be reviewed by hand

07142128Close (≤10%)Moderate (10–25%)Elevated (25–50%)Large (>50%)
OK for automatic calibrationNeeds manual reviewExcluded

Drainage-area scatter plots

Chart A — NHD vs USGS (map vs catalog)

Chart B — SWAT+ vs NHD (model vs map)

Chart C — SWAT+ vs USGS (model vs catalog)

Chart legend
Chart A — NHD vs USGS (map vs catalog)
x: USGS catalog, y: NHD map. Dot color = |NHD − USGS| / USGS.
Chart B — SWAT+ vs NHD (model vs map)
x: NHD map, y: SWAT+ model. Dot color = |NHD − USGS| / USGS (map–catalog gap at this gage).
Chart C — SWAT+ vs USGS (model vs catalog)
x: USGS catalog, y: SWAT+ model. Dot color = |SWAT+ − USGS| / USGS.
Dot colors
Green / blue / amber = percent gap band (see each chart above).
Close (≤10%)
Moderate (10–25%)
Elevated (25–50%)
Large (>50%)
Extreme (>100%)
Axes & 1:1 line
All three charts use the same km² range and matching tick marks on x and y (square plot). The dashed diagonal is perfect agreement for that chart's pair. Log scale when areas span more than one order of magnitude.
How to compare A vs C
If Chart C is tighter to the 1:1 line than Chart A, simulation drainage is closer to the USGS catalog than NHD was. Chart B then shows whether SWAT+ tracked the map.

Full Peace inventory (76 gages)

Every in-basin USGS station after v3 assignment. Amber rows: |NHD−USGS| or |SWAT+−USGS| >50%. Cal-ready = auto-cal class + usable 2000–2024 obs + SWAT/NHD in 0.5–2.0×.

USGSAssignmentUSGS (km²)NHD (km²)SWAT+ (km²)NHD−USGSSWAT+−USGSSWAT/NHDObsCal-ready
02293681lake_outlet_reviewreview53.0978.53126.94+47.91%+139.09%×1.03no
02293694canal_or_artificial_reviewreview150.2278.539.8-47.72%-93.48%×0.12no
02293986canal_or_artificial_reviewreview414.40.140.14-99.97%-99.97%×0.99no
02293987canal_or_artificial_reviewreview419.58386.91404.85-7.79%-3.51%×1.05yes
02294068lake_outlet_reviewreview59.5737.8129.98-36.52%-49.67%×0.79no
02294161lake_outlet_reviewreview530.43503.9590.62-5%+11.35%×1.17partial
02294260lake_outlet_reviewreview50.0461.04×1.22partial
02294261lake_outlet_reviewreview52.1761.04×1.17partial
02294290lake_outlet_reviewreview157.99135.27335.26-14.38%+112.2%×2.48partial
02294330lake_outlet_reviewreview55.4348.7463.59-12.06%+14.72%×1.3partial
02294405canal_or_artificial_reviewreview48.6932.9648.53-32.31%-0.33%×1.47partial
02294655lake_outlet_reviewreview1,023.05865.341,046.57-15.42%+2.3%×1.21yes
02294705lake_outlet_reviewreview865.341,046.57×1.21no
02294775lake_outlet_reviewreview1,025.64865.341,046.57-15.63%+2.04%×1.21yes
02295163lake_outlet_reviewreview111.37114.31126.51+2.64%+13.6%×1.11partial
02296750lake_outlet_reviewreview3,540.513,036.013,415.87-14.25%-3.52%×1.13yes
02297105lake_outlet_reviewreview4,325.283,071.183,754.94-28.99%-13.19%×1.22partial
280242081531600canal_or_artificial_reviewreview7.887.88×1no
280441081520200canal_or_artificial_reviewreview8.9413.74×1.54no
280531081520500canal_or_artificial_reviewreview4.625.56×1.2no
280531081520501canal_or_artificial_reviewreview4.625.56×1.2no
280557081512300canal_or_artificial_reviewreview2.042.04×1no
02294217tributary_cleanauto-cal137.27106.14120.73-22.67%-12.05%×1.14yesyes
02294491tributary_cleanauto-cal349.65281.84335.26-19.39%-4.12%×1.19partial
02294650mainstem_known_nhd_offsetauto-cal1,010.1842.37987.62-16.61%-2.22%×1.17yesyes
02294747tributary_cleanauto-cal891.561,046.57×1.17yesyes
02294760tributary_cleanauto-cal4.064.87×1.2yesyes
02294781mainstem_known_nhd_offsetauto-cal1,064.49910.651,066.47-14.45%+0.19%×1.17yesyes
02294898mainstem_known_nhd_offsetauto-cal1,243.19995.391,162.67-19.93%-6.48%×1.17yesyes
02295013tributary_cleanauto-cal122.25133.14123.18+8.91%+0.77%×0.93yesyes
02295194mainstem_known_nhd_offsetauto-cal1,587.661,342.31,537.73-15.45%-3.14%×1.15partial
02295203mainstem_known_nhd_offsetauto-cal1,590.251,352.061,548.04-14.98%-2.65%×1.14no
02295420tributary_cleanauto-cal313.39181.28231.22-42.15%-26.22%×1.28yesyes
02295435tributary_cleanauto-cal13.7513.1513.73-4.41%-0.18%×1.04no
02295440mainstem_known_nhd_offsetauto-cal1,952.851,572.441,818.91-19.48%-6.86%×1.16no
02295520tributary_cleanauto-cal49.2857.28×1.16partial
02295521tributary_cleanauto-cal49.289.47×1.01no
02295580tributary_cleanauto-cal92.5110.72×1.2partial
02295607mainstem_known_nhd_offsetauto-cal2,092.711,683.971,949.98-19.53%-6.82%×1.16no
02295637mainstem_known_nhd_offsetauto-cal2,139.331,731.622,001.16-19.06%-6.46%×1.16yesyes
02295755tributary_cleanauto-cal9.717.637.62-21.47%-21.52%×1no
02295798mainstem_known_nhd_offsetauto-cal1,897.452,167.13×1.14no
02295850tributary_cleanauto-cal38.8558.9860.19+51.82%+54.92%×1.02no
02296057tributary_cleanauto-cal45.3244.0141.42-2.9%-8.61%×0.94partial
02296180tributary_cleanauto-cal54.9137.9446.28-30.91%-15.7%×1.22no
02296191mainstem_known_nhd_offsetauto-cal79.2580.9989.29+2.2%+12.67%×1.1no
02296207tributary_cleanauto-cal98.6886.5794.87-12.27%-3.86%×1.1no
02296222mainstem_known_nhd_offsetauto-cal108.5295.58103.86-11.93%-4.29%×1.09partial
02296223tributary_cleanauto-cal108.5295.58103.86-11.93%-4.29%×1.09no
02296260tributary_cleanauto-cal497.28468.69492.29-5.75%-1%×1.05yesyes
02296389tributary_cleanauto-cal168.61140.64732.11-16.59%+334.21%×5.21partial
02296500tributary_cleanauto-cal854.7805.46870.02-5.76%+1.79%×1.08yesyes
02296525mainstem_known_nhd_offsetauto-cal2,873.33,228.51×1.12no
02297000tributary_cleanauto-cal172.95183.19×1.06no
02297100tributary_cleanauto-cal341.88289.74312.12-15.25%-8.7%×1.08yesyes
02297153tributary_cleanauto-cal34.9623.8487.72-31.82%+150.88%×1.48no
02297155tributary_cleanauto-cal108.7889.11125.58-18.08%+15.45%×1.41yesyes
02297220tributary_cleanauto-cal123.897.08101.44-21.59%-18.07%×1.04no
02297251tributary_cleanauto-cal336.7287.28327.86-14.68%-2.62%×1.14partial
02297272tributary_cleanauto-cal39.1137.6341.39-3.77%+5.82%×482.92no
02297290tributary_cleanauto-cal74.3372.5374.07-2.43%-0.36%×1.02no
02297310tributary_cleanauto-cal564.62516.2423.72-8.57%-95.8%×1.02yesyes
02297345mainstem_known_nhd_offsetauto-cal4,007.54,463.27×1.11no
02297350mainstem_known_nhd_offsetauto-cal4,610.184,013.34,468.19-12.95%-3.08%×1.11no
02297460mainstem_known_nhd_offsetauto-cal4,843.284,130.564,595.75-14.72%-5.11%×1.11no
02297600tributary_cleanauto-cal153.72165.61×1.08partial
02297635tributary_cleanauto-cal233.36202.59221.57-13.19%-5.05%×1.09partial
02297733mainstem_cleanauto-cal17.20.310.3-98.19%-98.25%×0.97no
02297875mainstem_cleanauto-cal37.366.7767.04+79.03%+79.75%×1no
02298110tributary_cleanauto-cal409.66161.13×1.06partial
02298123tributary_cleanauto-cal603.475.8206.18-99.04%-65.83%×1.04yesyes
02298124tributary_cleanauto-cal631.96626.39651.37-0.88%+3.07%×1.04no
02298170tributary_cleanauto-cal673.4692.46720.84+2.83%+7.05%×1.04partial
02298202tributary_cleanauto-cal966.07929.9977.24-3.74%+1.16%×1.05yesyes
02298300mainstem_known_nhd_offsetauto-cal5,956.975,229.55,755.82-12.21%-3.38%×1.1no
274319081452000tributary_cleanauto-cal0.310.10.1-69.24%-68.83%×1.01no
Next step — does the assigned channel carry the right area?

Assignment (this page, QA step 2) ties each gage to a channel. The drainage-area audit (step 3) then verifies that the assigned channel actually carries the correct drainage area in the executable TxtInOut model — investigating outliers, process-audit gages, and the systematic SWAT+-vs-NHD offset, before calibration begins.

FAQ

  • Why not assign stations using nearest channel or SWAT drainage area alone?

    Nearest-channel rules fail at tributary–mainstem confluences, lake outlets, and canals. Area-only matching can pick a mainstem reach with plausible TotDASqKm while the gage is on a tributary. SWATGenX therefore selects an NHDPlus HR reference reach first, then maps it to SWAT+ output.

  • Does SWAT+ drainage area choose the reference reach?

    Not in the improved method. QSWAT AreaC and chandeg.con areas are used only after assignment to audit agreement and classify calibration readiness. That keeps assignment errors separate from true SWAT+ vs NHDPlus HR area differences.

  • What stations are used on the drainage-area audit page?

    Drainage-area closure should be interpreted on stations classified as calibration-ready (mainstem_clean, tributary_clean, or mainstem_known_nhd_offset with documented offset). Lake, canal, ambiguous, and missing-output stations require review or exclusion first.

  • What is mainstem_known_nhd_offset?

    The station is on the correct mainstem channel, but SWAT+ chandeg area is systematically higher than NHD TotDASqKm (about 10–17% on Peace mainstem gages). That is treated as a delineation-definition offset, not fixed by moving the gage to a smaller side channel.

Related guides

Explore related

Last updated 2026-06-02.