How to Calculate Flow Rate with Pipe Size and Pressure
by
Flow Rate Calculator (Pipe Size & Pressure)
Calculate water flow based on pipe diameter and PSI
Sharp Edged Orifice (0.61)
Average Pipe/Valve (0.80)
Smooth Nozzle (0.98)
Standard pipes usually use a coefficient between 0.7 and 0.9.
Calculation Results
Gallons Per Minute0.00GPM
Liters Per Minute0.00LPM
Gallons Per Hour0.00GPH
Velocity0.00ft/s
How to Calculate Flow Rate with Pipe Size and Pressure
Understanding the relationship between pipe diameter and water pressure is critical for plumbing, irrigation, and engineering projects. This calculator uses a hydraulic formula derived from Bernoulli's principle to estimate the discharge rate of water from a pipe or orifice.
The Formula for Water Flow
The standard formula to calculate the flow rate (Q) when the pressure and pipe diameter are known is:
Q = 29.84 * C * d² * √P
Where:
Q = Flow rate in Gallons Per Minute (GPM).
C = Coefficient of discharge (dimensionless, accounts for friction and turbulence).
d = Inside diameter of the pipe in inches.
P = Pressure at the point of discharge in PSI (pounds per square inch).
Practical Example
Suppose you have a 0.75-inch (3/4″) copper pipe and your home water pressure is 50 PSI. Assuming an average discharge coefficient of 0.8:
Note: Real-world flow rates are often lower due to the length of the pipe, elbows, and friction losses (head loss). This calculation provides the flow at the point of discharge.
Factors Affecting Flow Rate
Pipe Length: Longer pipes increase friction, which reduces the effective pressure and flow at the end of the line.
Pipe Material: Smoother pipes (like PEX or PVC) have higher flow efficiency than old galvanized steel pipes.
Obstructions: Every elbow, tee, or valve added to a system creates "equivalent length" and reduces flow.
Elevation: If water must travel uphill, pressure drops by approximately 0.433 PSI per foot of vertical rise.
function calculateFlowRate() {
var diameter = parseFloat(document.getElementById("pipeDiameter").value);
var pressure = parseFloat(document.getElementById("waterPressure").value);
var coeff = parseFloat(document.getElementById("dischargeCoeff").value);
var resultArea = document.getElementById("resultArea");
if (isNaN(diameter) || diameter <= 0 || isNaN(pressure) || pressure <= 0) {
alert("Please enter valid positive numbers for diameter and pressure.");
return;
}
// Formula: Q = 29.84 * C * d^2 * sqrt(P)
// Q is in GPM
var gpm = 29.84 * coeff * Math.pow(diameter, 2) * Math.sqrt(pressure);
// Calculations for other units
var lpm = gpm * 3.78541;
var gph = gpm * 60;
// Calculate Velocity: V = Q / A
// Area in square inches: A = pi * (d/2)^2
// Convert GPM to cubic inches per second: (gpm * 231) / 60
var area = Math.PI * Math.pow((diameter / 2), 2);
var flowInCubicInchesPerSec = (gpm * 231) / 60;
var velocityInchesPerSec = flowInCubicInchesPerSec / area;
var velocityFeetPerSec = velocityInchesPerSec / 12;
// Display Results
document.getElementById("gpmResult").innerText = gpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById("lpmResult").innerText = lpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById("gphResult").innerText = gph.toLocaleString(undefined, {minimumFractionDigits: 0, maximumFractionDigits: 0});
document.getElementById("velocityResult").innerText = velocityFeetPerSec.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
resultArea.style.display = "block";
}