Hydrant Flow Test Calculator

Work out how much water a hydrant delivers. Enter the pressures you read and the flow you measured, and this works out the flow during the test, the flow projected to 20 psi residual - the figure NFPA 291 rates a hydrant on - and the resulting hydrant class.

#{ mode === 'singleHydrant' ? 'Pressure and flow are both read at the same hydrant.' : 'Residual pressure is read at one hydrant while another is flowed.' }

#{ mode === 'singleHydrant' ? 'Hydrant Pressures' : 'Residual Hydrant' }

#{ mode === 'singleHydrant' ? 'Static pressure with the hydrant closed, at the hydrant you are flowing.' : 'Read at a hydrant next to the one being flowed.' }

psi
With no hydrant flowing.
psi
Measured at this hydrant while the other one is flowing.
Residual pressure
#{ residualDisplay }
In a single-hydrant test the residual reading is the flow pressure at the same hydrant, so it is taken from the outlet below rather than entered twice.

#{ mode === 'singleHydrant' ? 'Flowed Outlet' : 'Flow Hydrant' }

gpm
Outlet ##{ i + 1 }
psi
in

Result

Flow during test #{ fmt(result.flowRate) } gpm What the outlets actually delivered.
Projected at #{ targetPressure } psi #{ fmt(result.projected) } gpm The NFPA 291 rated fire flow. Rated fire flow at #{ ratingPressure } psi is #{ fmt(result.ratingFlow) } gpm.
Hydrant class #{ flowClass.label } #{ flowClass.marking } NFPA 291 class, from the flow at #{ ratingPressure } psi.
psi

Water Supply Curve

How much this hydrant delivers at each residual pressure. The marked point is the flow at #{ targetPressure } psi.

Against Your Own Water Supply

Every flow test this department has recorded, so you can tell whether this reading is ordinary for your system or worth a second look.

Recorded tests #{ fmt(context.tests) }
Hydrants tested #{ fmt(context.hydrantsTested) }
Average fire flow #{ fmt(context.avgFireFlow) }
Lowest recorded #{ fmt(context.minFireFlow) }
#{ seg.label } - #{ fmt(seg.count) } (#{ seg.pct }%)

#{ comparison }