Set units: ? Hide this line
Length Map coordinates Diameter Elevation and head Pressure Flow Velocity Head loss gradient Water age Roughness

Map size
Rotate the map
X: -- Y: --
Not georeferenced
© OpenStreetMap contributors © Mapbox © OpenStreetMap © Maxar Improve this map
Visibility

Nothing is docked here yet. Everything that belongs to the whole project is in Settings.

Profile along a path
Ground surface Hydraulic grade line Pressure
Values versus time
Distribution of values
Flow balance
Properties
Find and replace
Settings

Symbology

Node labelsSaved with the project
Node colorsSaved with the project
Link labelsSaved with the project
Link colorsSaved with the project
CustomerSaved with the project
AllSaved with the project

Map and page

AppearanceSaved with the project
PageSaved in this browser

Assets

ID prefixesSaved with the project
ValuesSaved with the project
Custom properties ?Saved with the project

Calculation

UnitsSaved with the project
TimeSaved with the project
HydraulicsSaved with the project
EnergySaved with the project
QualitySaved with the project

Credits

Libraries
Fire flow analysis
Criticality analysis
Demand scaling
Pump energy report
Contour plot
Scenario comparison
EPANET run report

	
Status report
Alternatives preview
Full report
Calibration report
Fire flow run
New project
Coordinate system ?
Units ?
Convert as
Coordinate system ?
Units ?
Round converted values ?
Round converted values Suffix ?

Converting back is a second conversion, not an undo. A number converted and converted back may not return exactly as it was entered.

Coordinate system
About

EPANET++

You are loved and cherished forever, you have nothing to fear, and you are not ruining everything.

Licensed under the GNU General Public License v3.0 or later.
Copyright © 2009–2026 Thomas Gail Haws

How it is solved
The EPANET solver works this network out. Set a total run time and every reporting step is calculated in turn: tanks fill and drain, demands follow their patterns, and the toolbar plays the run back.
What it does not do
Water quality is modeled: water age, source trace, and a chemical that reacts in the pipe walls and in the body of the water. Surge and water hammer are not: every answer here is for water already flowing steadily, not for the pressure wave when a valve slams.

Credits

2026-10-05 22:58 UTC · 89248ed2

Notes on this page

Notes

Saving projects
Every project is a tab, and every tab is saved in this browser as you work. Clearing your browser data deletes them all, so keep your work in a file: File, Save as. An asterisk on a tab means it holds changes that are not in a file. Nothing is ever written to a file unless you ask. In some browsers a project connects to the file you save it to, and File, Save writes back to that same file from then on; in others no connection is possible, so Save is disabled and only Save as is available. When a project file is kept on a shared drive, this page tells you if a colleague already has it open, so that two people do not write over each other.
Pump curve
A pump follows H = H₀ − aQ^b, where H is the head the pump adds and Q is the flow through it. Enter one, two, or three points from the manufacturer’s curve. Three points, the head at zero flow, the normal working point, and the point of highest flow, fit H₀, a and b directly, and follow a published curve most closely. Two points fit a parabola (b = 2) with its peak at zero flow. One point uses a common rule: the head at zero flow is 1.33 × the head you enter, and the highest flow is 2 × the flow you enter, which again gives b = 2. A pump with no points entered adds no head at all. The curve is not cut off where the head reaches zero, so asking a pump for more flow than its curve can deliver gives a negative head. The fix is a bigger pump or a smaller demand, not a different curve fit. A curve can hold more than three points, and every point you gave it is read.
Color band boundaries stay the same
Color band boundaries are set when you choose a data classification method. They are not set again at each time step, because that would make the colors mean something new at every step, and that is not helpful for visualizing your system. EPANET works the same way. To get new boundaries, choose a method again or enter your own boundaries.
Hazen-Williams constants match EPANET
In August 2026 the Hazen-Williams coefficient and exponent were changed to match EPANET. Head loss results differ from earlier versions of this page by up to 0.1 percent, which is far smaller than the uncertainty in the C value itself.
Which EPANET this page runs
The EPANET solver on this page is OWA-EPANET 2.3.5, released on 20 February 2025. EPANET is developed by Open Water Analytics, a community that works with the United States Environmental Protection Agency, which released version 2.2.0 in December 2019. The run report calls it 2.3.05 because the engine writes the last number in two digits. It reaches this page through epanet-js 0.9.0 by Luke Butler, under the MIT licence, and it runs inside your browser: your network is never sent anywhere to be solved.
Tables and Hotkeys

Tables

Table columns help
Select columnClick heading
Add or extend column selectionCtrl+click or Shift+click another heading
Move (reorder) selected column(s)Drag or use Manage columns… in right-click or ⋮ menu
Menu ⋮ and sort arrow.Hover a heading's top corner, or select or Tab into a heading
Hide, Show all, or Manage visibility and orderRight-click heading or ⋮ menu in heading top right corner
Sort by columnArrow icon in heading top right corner
Paste as new rows at end of tableRight-click, ⋮ menu in heading top right corner, or Ctrl+Shift+V
Table keyboard shortcuts
Arrow keysNavigate.
Tab, EnterFinish entry and navigate across / down one cell.
Shift+Tab, Shift+EnterNavigate backward.
Shift+arrow keysExtend the selection.
Ctrl+CCopy the selection.
Ctrl+DFill the selection down from its top row.
Ctrl+EnterFill the selection with the active cell's value.
Ctrl+ASelect the whole table.
Ctrl+Shift+VPaste as new rows at end of table.
Ctrl+Shift+PageDown, Ctrl+Shift+PageUpSwitch to the next or previous tab, whether a table or a graph.
DeleteClear a cell.
F2Open a cell to edit it.
EscCancel an edit.

Map

Map keyboard shortcuts
1 or EscSelect.
2Add a junction.
3Add a reservoir.
4Add a tank.
5Add a pipe.
6Add a pump.
7Add a valve.
8Add a customer.
9Add text.
DeleteDelete the selection.
Ctrl+ZUndo the last change.
+ or =Zoom in.
-Zoom out.

Menus

Menu keyboard shortcuts
Alt+Shift+letterOpen the menu with that letter, then press a row's letter to choose it. The letters show while you use the keyboard. On a Mac, use Ctrl+Option.
F10Go to the menu bar.

May we save a one-digit cookie in this browser to remember that we have already counted this page? It records nothing about you and nothing you enter. Without it we cannot tell your second visit from somebody else’s first.

Privacy notice Terms of use