A weekly-updated streamflow outlook for three popular Montana float runs, built from public USGS, NRCS, and NOAA data.
What you're looking at
Each river card shows three things you can act on:
- A status stamp — is the river runnable right now? Color-coded against a section-specific cfs window (rust = unrunnable, mustard = runnable but bony or pushy, forest = ideal).
- A one-sentence summary — current status, the next time the runnable status is forecast to change, and the projected peak (when relevant).
- A 12-week chart — last 45 days of observed flow, NOAA's 10-day near-term forecast, and our long-range model with a likely range. Color-block bands across the y-axis mark the section's runnable window.
Not for safety-critical decisions. These are rough planning forecasts. Check the live USGS gauge and current NWS conditions before launching. A river inside the runnable zone at the gauge can still be very different at any specific rapid.
The Three Rivers
| Section | Class | Gauge |
|---|---|---|
| Russell Gates → Bonner (Blackfoot) | II–III | USGS 12340000 |
| Alberton Gorge (Clark Fork) | III–IV | USGS 12353000 |
| Middle Fork Wilderness | III | USGS 12358500 |
The runnable windows used to color the status stamps are first-pass values from American Whitewater listings and general Montana paddling knowledge. They are likely to be refined as floaters who actually use these sections weigh in.
How the Forecast Works
Two Models, Blended by Horizon
The long-range trace ("Long Term Forecast" line) is a per-river ensemble of two pieces:
- Tier 2 — SWE Ridge regression. A regularized linear model that predicts next week's flow from recent flow, basin SWE (snow water equivalent), and SWE deltas. It dominates short horizons (1–4 weeks).
- Tier 3 — SWE-analog ensemble. Looks up the eight most-similar past years by current SWE state, and treats their actual flow trajectories as the forecast. It dominates long horizons (5–12 weeks) where physical analogues beat regression.
The two are blended by a sigmoid weighting that shifts emphasis as horizon grows. The "Likely range" band is the analog ensemble's p10–p90 envelope, recentered on the blended point forecast.
Near-term Days 0–10
The rust "7-Day Forecast" line is NOAA's deterministic NWPS stageflow forecast at the same gauge, refreshed every ~6 hours. It's used as-is — we don't model anything in the 0–7 day window. The 7-Day Forecast and Tier-blend lines deliberately overlap on days 7–10 so any disagreement between the two stays visible to the reader.
Skill Horizon
Each gauge has a significance cap — the maximum number of weeks ahead at which our blended model still beats a climatology-only baseline in walk-forward cross-validation. The chart marks this with a vertical line; nothing past that line is shown as a forecast.
Data Sources
- USGS Water Data API — daily mean discharge for all three gauges (1976/1991/1994 to present)
- NRCS AWDB / SNOTEL — basin snow water equivalent, snow depth, precipitation across 14 SNOTEL stations in the Clark Fork and Flathead basins
- NOAA NWPS — 10-day deterministic stageflow at each NWS forecast point
None of this requires authentication; everything here can be reproduced from the same public APIs.
How Often It Updates
- Weekly — every Monday morning Mountain Time, the pipeline pulls the latest week of observed flow + SWE, regenerates each forecast, and redeploys the site.
- Monthly — on the first of each month, the production model is retrained from scratch.
Limits and Caveats
- Snowmelt rivers only. The methodology assumes a SWE-driven hydrograph and won't generalize to rain-driven or regulated rivers without rework.
- Weekly resolution. The long-range forecast is week-by-week, not daily. Day-of-week variation inside a week is not modeled.
- Single-gauge view. For Alberton Gorge in particular, flow at the Cyr put-in differs from the gauge below Missoula; tributary additions matter.
- Live skill not yet evaluated. Production forecasts started in April 2026; a meaningful forecast-vs-observed skill report will be possible after the 2026 snowmelt cycle (mid-July 2026 at the earliest).
Source Code and Methodology
The pipeline, models, evaluation harness, and full v0.3 spec are open-source on GitHub: github.com/pauldjohns/usgs-discharge-poc.