Aquarium Sump Flow Rate Calculator

Aquarium Sump Flow Rate Calculator .aquarium-calc-container { max-width: 800px; margin: 0 auto; font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif; padding: 20px; border: 1px solid #e0e0e0; border-radius: 8px; background-color: #f9fbfd; color: #333; } .aquarium-calc-container h2 { text-align: center; color: #0277bd; margin-bottom: 25px; } .calc-row { display: flex; flex-wrap: wrap; gap: 20px; margin-bottom: 15px; } .calc-col { flex: 1; min-width: 250px; } .calc-col label { display: block; font-weight: 600; margin-bottom: 5px; color: #455a64; } .calc-col input, .calc-col select { width: 100%; padding: 10px; border: 1px solid #cfd8dc; border-radius: 4px; font-size: 16px; } .calc-col small { display: block; margin-top: 4px; color: #78909c; font-size: 12px; } .calc-btn { width: 100%; padding: 15px; background-color: #0277bd; color: white; border: none; border-radius: 4px; font-size: 18px; font-weight: bold; cursor: pointer; transition: background-color 0.3s; margin-top: 10px; } .calc-btn:hover { background-color: #01579b; } .result-section { margin-top: 30px; padding: 20px; background-color: #ffffff; border: 1px solid #b3e5fc; border-radius: 6px; display: none; } .result-header { font-size: 20px; color: #0277bd; margin-bottom: 15px; border-bottom: 2px solid #e1f5fe; padding-bottom: 10px; } .result-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; } .result-item { margin-bottom: 10px; } .result-label { font-size: 14px; color: #546e7a; font-weight: 600; } .result-value { font-size: 24px; color: #263238; font-weight: bold; } .result-note { grid-column: 1 / -1; margin-top: 15px; padding: 10px; background-color: #fff3e0; border-left: 4px solid #ff9800; font-size: 14px; color: #ef6c00; } .calc-article { margin-top: 40px; line-height: 1.6; color: #37474f; } .calc-article h3 { color: #0277bd; margin-top: 25px; } .calc-article ul { margin-bottom: 20px; padding-left: 20px; } .calc-article li { margin-bottom: 8px; } @media (max-width: 600px) { .result-grid { grid-template-columns: 1fr; } }

Aquarium Sump Flow Rate Calculator

Total volume of your main display tank in Gallons.
4x (Low / Planted) 5x (Standard Freshwater) 6x (High Flow Freshwater) 8x (Reef / Saltwater) 10x (High Flow Reef) Times per hour the tank volume cycles through the sump.
Distance from the return pump to the top of the tank.
Each elbow adds friction, reducing flow.
Calculation Results
Target Flow Rate (Actual)
0 GPH
Total Dynamic Head Pressure
0 ft
Rec. Min Drain Diameter
Overflow Linear Length
0 inches
Pump Buying Advice: To achieve 0 GPH, you should buy a return pump rated for approximately 0 GPH at 0 head, because head pressure will reduce output.

Understanding Sump Flow Rates

Designing an aquarium sump system requires balancing the water going up (return pump) with the water coming down (drain/overflow). If your pump is too strong, your tank will overflow. If your drain is too small, it cannot handle the flow.

Key Metrics Explained

  • Turnover Rate: This is how many times per hour your entire tank volume passes through the filtration system. For freshwater tanks, a turnover of 4-6x is standard. For saltwater and reef tanks, 8-10x is recommended to ensure proper nutrient export and oxygenation.
  • Head Height (Head Pressure): Pumps have to fight gravity. The vertical distance from the water level in your sump to the rim of your display tank creates "Head Pressure." As height increases, the flow rate of the pump decreases significantly.
  • Friction Loss (Elbows): Plumbing fittings like 90-degree elbows add resistance. A general rule of thumb is that every 90-degree elbow is equivalent to adding 1 foot of vertical head height in terms of pressure.

Choosing the Right Return Pump

Never buy a pump based solely on the number on the box (the "Zero Head" rating). You must look at the pump's Flow Curve chart. You need a pump that delivers your Target Flow Rate specifically at your Calculated Head Height.

Drain Pipe Sizing Guide (Gravity Flow)

Based on standard gravity-fed drains (Durso, Herbie, or Bean Animal styles), ensure your plumbing diameter can handle the flow:

  • 3/4″ Pipe: Max ~350-600 GPH
  • 1″ Pipe: Max ~600-900 GPH
  • 1.5″ Pipe: Max ~1300-1500 GPH
  • 2″ Pipe: Max ~2500+ GPH
function calculateFlowRate() { // 1. Get Inputs var volume = parseFloat(document.getElementById('tankVolume').value); var turnover = parseFloat(document.getElementById('turnoverRate').value); var height = parseFloat(document.getElementById('headHeight').value); var elbows = parseFloat(document.getElementById('elbowCount').value); // 2. Validation if (isNaN(volume) || volume <= 0) { alert("Please enter a valid tank volume."); return; } if (isNaN(height) || height < 0) { height = 0; } if (isNaN(elbows) || elbows < 0) { elbows = 0; } // 3. Calculate Target Flow (The actual water moving through pipes) var targetFlow = volume * turnover; // 4. Calculate Dynamic Head Pressure // Rule of thumb: 1 foot of head per elbow is a conservative estimate for standard plumbing friction var frictionHead = elbows * 1; var totalDynamicHead = height + frictionHead; // 5. Estimate Rated Pump Requirement // This calculates what the pump box should likely say (Zero Head Rating) // to achieve the target flow at the calculated head pressure. // Approximation: Pumps lose ~15-20% efficiency per few feet, highly variable. // We will add a safety buffer factor. // Formula: Target / (1 – (Head / MaxHead)) — simpler heuristic used here: // Assume an average pump shuts off at 12-15ft head. var estimatedLossFactor = 1 + (totalDynamicHead * 0.15); var recommendedRatedFlow = Math.ceil(targetFlow * estimatedLossFactor); // 6. Calculate Drain Size Recommendation var drainRecommendation = "Unknown"; if (targetFlow <= 350) { drainRecommendation = 'Minimum 3/4"'; } else if (targetFlow <= 900) { drainRecommendation = 'Minimum 1"'; } else if (targetFlow <= 1500) { drainRecommendation = 'Minimum 1.5"'; } else { drainRecommendation = 'Minimum 2" or Dual 1.5"'; } // 7. Calculate Recommended Linear Overflow Length // Formula: Gallons per Hour / 67 = Linear inches of weir needed var linearOverflow = Math.ceil(targetFlow / 67); // 8. Update DOM document.getElementById('targetGPH').innerHTML = Math.round(targetFlow) + " GPH"; document.getElementById('totalHead').innerHTML = totalDynamicHead.toFixed(1) + " ft"; document.getElementById('drainSize').innerText = drainRecommendation; document.getElementById('overflowLength').innerHTML = linearOverflow + " inches"; document.getElementById('adviceGPH').innerText = Math.round(targetFlow); document.getElementById('ratedGPH').innerText = recommendedRatedFlow; // Show results document.getElementById('results').style.display = "block"; }

Leave a Comment