PVC / Plastic (150)
Copper / New Steel (140)
Cast Iron / Galv. Steel (120)
Concrete (100)
Old Corroded Pipe (80)
Flow Rate (GPM):0
Flow Rate (CFS):0
Velocity (ft/sec):0
How to Calculate Gravity Pipe Flow
Calculating the flow rate of water through a pipe driven by gravity requires understanding the relationship between the vertical drop (head), the pipe's internal resistance (friction), and its physical dimensions. Unlike pumped systems, gravity systems rely entirely on the potential energy of the water's elevation.
This calculator uses the Hazen-Williams Equation, which is the industry standard for calculating water flow in pressurized and gravity-fed pipes. The formula considers the pipe roughness coefficient (C-factor), the hydraulic radius, and the slope of the hydraulic grade line.
The Science of Gravity Flow
Three main factors determine how much water will come out of the end of your pipe:
The Slope (Head): The steeper the drop relative to the length of the pipe, the faster the water will flow. This is the "driving force."
Pipe Diameter: Larger pipes have a much higher carrying capacity. Doubling the diameter doesn't just double the flow; it can increase it by more than five times due to reduced friction-to-volume ratios.
Internal Roughness: Water molecules "stick" to the walls of the pipe. Smooth pipes like PVC (C=150) allow water to slide easily, while rough pipes like old cast iron (C=80) create turbulence and slow the flow down.
Practical Example
Imagine you are running a 4-inch PVC drainage pipe from a hilltop tank to a garden 200 feet away. If the garden is 20 feet lower than the tank:
Diameter: 4 inches
Length: 200 feet
Drop: 20 feet
Material: PVC (C-Factor 150)
Using these inputs, the calculator would determine the flow velocity and the total Gallons Per Minute (GPM) you can expect at the discharge point, accounting for the friction losses over that 200-foot run.
function calculateGravityFlow() {
var d = parseFloat(document.getElementById('pipeDiameter').value);
var L = parseFloat(document.getElementById('pipeLength').value);
var h = parseFloat(document.getElementById('verticalDrop').value);
var C = parseFloat(document.getElementById('pipeMaterial').value);
if (isNaN(d) || isNaN(L) || isNaN(h) || d <= 0 || L <= 0 || h <= 0) {
alert("Please enter valid positive numbers for all fields.");
return;
}
// Convert diameter to feet for standard Hazen-Williams
var dFeet = d / 12;
// Hydraulic Radius (R) = Area / Wetted Perimeter. For full pipe R = D/4
var R = dFeet / 4;
// Slope (S) = Head / Length
var S = h / L;
// Hazen-Williams Velocity Formula (US Units): V = 1.318 * C * R^0.63 * S^0.54
var velocity = 1.318 * C * Math.pow(R, 0.63) * Math.pow(S, 0.54);
// Cross-sectional Area (A) = pi * r^2
var area = Math.PI * Math.pow((dFeet / 2), 2);
// Flow Rate (Q) = V * A (Cubic Feet per Second)
var cfs = velocity * area;
// Convert CFS to Gallons Per Minute (1 CFS = 448.831 GPM)
var gpm = cfs * 448.831;
// Display Results
document.getElementById('resGPM').innerHTML = gpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resCFS').innerHTML = cfs.toLocaleString(undefined, {minimumFractionDigits: 4, maximumFractionDigits: 4});
document.getElementById('resVelocity').innerHTML = velocity.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2}) + " ft/s";
document.getElementById('results').style.display = 'block';
}