Flow rate is one of the most critical factors when designing or troubleshooting a pumping system. It represents the volume of fluid that passes through a specific point in the system over a given period of time. This calculator uses the velocity method, which relates the internal diameter of your pipe to the speed of the fluid movement.
The Formula Used
To calculate the flow rate based on velocity and pipe size, we use the following mathematical relationship:
Q = A × v
Q: Flow Rate
A: Cross-sectional area of the pipe (π × r²)
v: Velocity of the fluid
In standard US units, the simplified formula for GPM is: GPM = Velocity (fps) × Diameter² (inches) × 2.448
Common Velocity Recommendations
Choosing the right velocity is essential for system longevity. If the velocity is too high, you risk pipe erosion and high pressure drops. If it's too low, solids may settle in the pipe. General industry standards suggest:
Suction Lines: 2 to 4 feet per second (fps)
Discharge Lines: 5 to 10 feet per second (fps)
Water Supply: 3 to 7 feet per second (fps)
Practical Example
Suppose you have a 3-inch internal diameter pipe and you want to maintain a fluid velocity of 5 feet per second. Using the calculator:
Input Pipe Diameter: 3
Input Velocity: 5
The result would be approximately 110.16 GPM.
This information helps you select a pump capable of delivering that specific volume against the system's total dynamic head.
function calculatePumpFlow() {
var diameter = parseFloat(document.getElementById('pipeDiameter').value);
var velocity = parseFloat(document.getElementById('flowVelocity').value);
var resultDiv = document.getElementById('pumpResults');
if (isNaN(diameter) || diameter <= 0 || isNaN(velocity) || velocity <= 0) {
alert("Please enter valid positive numbers for both diameter and velocity.");
resultDiv.style.display = "none";
return;
}
// Calculation: GPM = Velocity (ft/s) * (Diameter (in))^2 * 2.448
// The constant 2.448 comes from:
// Area (sq ft) = (pi * (d/12)^2) / 4
// GPM = Area (sq ft) * Velocity (ft/s) * 7.48 (gal/cu ft) * 60 (sec/min)
var gpm = velocity * Math.pow(diameter, 2) * 2.448;
var gph = gpm * 60;
var lpm = gpm * 3.78541;
var m3h = gpm * 0.227125;
document.getElementById('resGPM').innerText = gpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resGPH').innerText = gph.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resLPM').innerText = lpm.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
document.getElementById('resM3H').innerText = m3h.toLocaleString(undefined, {minimumFractionDigits: 2, maximumFractionDigits: 2});
resultDiv.style.display = "block";
}