Drain Pipe Slope Calculator
ANA›Life Services Authority›National Calculator Authority›Drain Pipe Slope Calculator
.calc-container { max-width: 640px; margin: 2rem 0; padding: 1.5rem; background: #fff; border: 1px solid #ddd; border-radius: 8px; box-shadow: 0 1px 3px rgba(0,0,0,0.06); font-family: system-ui, -apple-system, sans-serif; } .calc-container h3 { font-family: Georgia, serif; font-size: 1.15rem; color: #1a1a1a; margin-bottom: 1rem; padding-bottom: 0.5rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-row { display: flex; align-items: center; gap: 0.75rem; margin-bottom: 0.75rem; flex-wrap: wrap; } .calc-row label { min-width: 160px; font-size: 0.9rem; color: #333; font-weight: 500; } .calc-row input[type="number"], .calc-row select { flex: 1; min-width: 120px; max-width: 200px; padding: 0.5rem 0.6rem; border: 1px solid #ccc; border-radius: 4px; font-size: 0.9rem; font-family: system-ui, sans-serif; color: #1a1a1a; background: #fafaf8; } .calc-row input:focus, .calc-row select:focus { outline: none; border-color: var(--ac, #3d5a80); box-shadow: 0 0 0 2px rgba(26,74,138,0.12); } .calc-row .unit { font-size: 0.82rem; color: #888; min-width: 30px; } .calc-btn { display: inline-block; margin-top: 0.5rem; padding: 0.55rem 1.5rem; background: var(--ac, #3d5a80); color: #fff; border: none; border-radius: 4px; font-size: 0.9rem; font-weight: 600; cursor: pointer; font-family: system-ui, sans-serif; } .calc-btn:hover { opacity: 0.9; } .calc-result { margin-top: 1.25rem; padding: 1rem 1.25rem; background: #f0f6fc; border-left: 3px solid var(--ac, #3d5a80); border-radius: 0 6px 6px 0; display: none; } .calc-result.visible { display: block; } .calc-result-label { font-size: 0.78rem; text-transform: uppercase; letter-spacing: 0.06em; color: #666; margin-bottom: 0.25rem; } .calc-result-value { font-size: 1.6rem; font-weight: 700; color: var(--ac, #3d5a80); } .calc-result-detail { font-size: 0.85rem; color: #555; margin-top: 0.5rem; line-height: 1.5; } .calc-note { margin-top: 1rem; font-size: 0.8rem; color: #888; font-style: italic; } .calc-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; margin-top: 0.75rem; } .calc-grid-item { padding: 0.6rem 0.8rem; background: #f8f9fa; border-radius: 4px; border: 1px solid #eee; } .calc-grid-item .label { font-size: 0.75rem; color: #888; text-transform: uppercase; letter-spacing: 0.04em; } .calc-grid-item .value { font-size: 1.1rem; font-weight: 600; color: #1a1a1a; } @media (max-width: 720px) { .calc-row { flex-direction: column; align-items: flex-start; gap: 0.3rem; } .calc-row label { min-width: auto; } .calc-row input[type="number"], .calc-row select { max-width: 100%; width: 100%; } .calc-grid { grid-template-columns: 1fr; } } .calc-chart { margin: 1rem 0; text-align: center; } .calc-chart svg { max-width: 100%; height: auto; } .calc-chart-legend { display: flex; flex-wrap: wrap; justify-content: center; gap: 0.6rem 1.2rem; margin-top: 0.6rem; font-size: 0.8rem; color: #555; } .calc-chart-legend span { display: inline-flex; align-items: center; gap: 0.3rem; } .calc-chart-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 2px; font-style: normal; } .calc-related { max-width: 640px; margin: 2rem 0 1rem; padding: 1.25rem 1.5rem; background: #f8f9fa; border: 1px solid #e8e8e8; border-radius: 8px; } .calc-related h3 { font-family: Georgia, serif; font-size: 1rem; color: #1a1a1a; margin: 0 0 0.75rem; padding-bottom: 0.4rem; border-bottom: 2px solid var(--ac, #3d5a80); } .calc-related-list { list-style: none; padding: 0; margin: 0 0 0.75rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0.4rem 1.5rem; } .calc-related-list li a { font-size: 0.88rem; color: var(--ac, #3d5a80); text-decoration: none; } .calc-related-list li a:hover { text-decoration: underline; } .calc-browse-all { margin: 0.5rem 0 0; font-size: 0.9rem; font-weight: 600; } .calc-browse-all a { color: var(--ac, #3d5a80); text-decoration: none; } .calc-browse-all a:hover { text-decoration: underline; } @media (max-width: 720px) { .calc-related-list { grid-template-columns: 1fr; } }
Drain Pipe Slope Calculator
Calculate the slope, elevation drop, pipe run length, and estimated flow velocity for drain pipes using standard plumbing and civil engineering formulas.
Solve For
Slope (given drop & run) Drop (given slope & run) Run (given slope & drop) Flow Velocity (Manning's)
Elevation Drop (inches)
Pipe Run / Horizontal Length (feet)
Slope (inches per foot)
Pipe Inner Diameter (inches)
Manning's n (roughness coefficient)
PVC ≈ 0.009–0.011 | Cast Iron ≈ 0.013 | Concrete ≈ 0.013–0.015 | Clay ≈ 0.013
Calculate
function draUpdateMode() { var mode = document.getElementById('dra_calc_mode').value; document.getElementById('dra_group_drop').style.display = (mode === 'slope' || mode === 'drop' || mode === 'velocity') ? '' : 'none'; document.getElementById('dra_group_run').style.display = (mode === 'slope' || mode === 'run' || mode === 'velocity') ? '' : 'none'; document.getElementById('dra_group_slope').style.display = (mode === 'drop' || mode === 'run' || mode === 'velocity') ? '' : 'none'; document.getElementById('dra_group_diameter').style.display = (mode === 'velocity') ? '' : 'none'; document.getElementById('dra_group_manning').style.display = (mode === 'velocity') ? '' : 'none';
// For drop mode: hide drop input if (mode === 'drop') document.getElementById('dra_group_drop').style.display = 'none'; // For run mode: hide run input if (mode === 'run') document.getElementById('dra_group_run').style.display = 'none';
document.getElementById('dra_result').innerHTML = ''; }
function draCalc() { var res = document.getElementById('dra_result'); var mode = document.getElementById('dra_calc_mode').value;
var dropVal = parseFloat(document.getElementById('dra_drop').value); var runVal = parseFloat(document.getElementById('dra_run').value); var slopeVal = parseFloat(document.getElementById('dra_slope').value); var diamVal = parseFloat(document.getElementById('dra_diameter').value); var manningVal = parseFloat(document.getElementById('dra_manning').value);
var html = '';
if (mode === 'slope') { if (isNaN(dropVal) || dropVal Enter a valid elevation drop (≥ 0 inches).'; return; } if (isNaN(runVal) || runVal Enter a valid pipe run (> 0 feet).'; return; }
var slope_in_per_ft = dropVal / runVal; // inches per foot var slope_pct = (dropVal / (runVal * 12)) * 100; // percent var slope_ratio = runVal * 12 / (dropVal > 0 ? dropVal : 1); // 1:X
var status = ''; if (slope_in_per_ft ⚠ Too flat — risk of solids settling (min 1/8" per foot recommended).'; else if (slope_in_per_ft ⚠ Marginal — 1/4" per foot preferred for drain lines.'; else if (slope_in_per_ft ✔ Good slope — within recommended range (1/4"–1/2" per foot).'; else if (slope_in_per_ft ⚠ Steep — acceptable but may cause solids to separate from liquid.'; else status = '⚠ Very steep — solids may be left behind as liquid races ahead.';
html = '### Slope Results ' + '' + 'ParameterValue' + 'Slope' + slope_in_per_ft.toFixed(4) + ' in/ft' + 'Slope (%)' + slope_pct.toFixed(3) + '%' + 'Slope Ratio1 : ' + slope_ratio.toFixed(1) + '' + 'Elevation Drop' + dropVal.toFixed(2) + ' in over ' + runVal.toFixed(2) + ' ft' + '' + '' + status + '
';
} else if (mode === 'drop') { if (isNaN(slopeVal) || slopeVal Enter a valid slope (> 0 in/ft).'; return; } if (isNaN(runVal) || runVal Enter a valid pipe run (> 0 feet).'; return; }
var drop = slopeVal * runVal; // inches var drop_ft = drop / 12;
html = '### Elevation Drop Results ' + '' + 'ParameterValue' + 'Elevation Drop' + drop.toFixed(3) + ' inches' + 'Elevation Drop' + drop_ft.toFixed(4) + ' feet' + 'Slope Used' + slopeVal.toFixed(4) + ' in/ft' + 'Pipe Run' + runVal.toFixed(2) + ' ft' + '';
} else if (mode === 'run') { if (isNaN(slopeVal) || slopeVal Enter a valid slope (> 0 in/ft).'; return; } if (isNaN(dropVal) || dropVal Enter a valid elevation drop (> 0 inches).'; return; }
var run = dropVal / slopeVal; // feet var run_in = run * 12;
html = '### Pipe Run Results ' + '' + 'ParameterValue' + 'Maximum Pipe Run' + run.toFixed(3) + ' feet' + 'Maximum Pipe Run' + run_in.toFixed(2) + ' inches' + 'Slope Used' + slopeVal.toFixed(4) + ' in/ft' + 'Elevation Drop' + dropVal.toFixed(2) + ' in' + '';
} else if (mode === 'velocity') { // Manning's equation for full-flow circular pipe: // V = (1/n) * R^(2/3) * S^(1/2) [SI: m/s] // R = hydraulic radius = D/4 (full pipe) // Convert inputs to SI then back to imperial if (isNaN(slopeVal) || slopeVal Enter a valid slope (> 0 in/ft).'; return; } if (isNaN(dropVal) || dropVal Enter a valid elevation drop (≥ 0 inches).'; return; } if (isNaN(runVal) || runVal Enter a valid pipe run (> 0 feet).'; return; } if (isNaN(diamVal) || diamVal Enter a valid pipe diameter (> 0 inches).'; return; } if (isNaN(manningVal) || manningVal Enter a valid Manning's n (> 0).'; return; }
// Slope as dimensionless (ft/ft) var S = (slopeVal / 12); // in/ft → ft/ft // Hydraulic radius for full circular pipe: R = D/4 var D_ft = diamVal / 12; // inches → feet var R_ft = D_ft / 4; // hydraulic radius (ft)
// Manning's equation (US customary): V = (1.486/n) * R^(2/3) * S^(1/2) [ft/s] var V_fps = (1.486 / manningVal) * Math.pow(R_ft, 2/3) * Math.pow(S, 0.5); var V_mph = V_fps * 0.681818;
// Cross-sectional area (full pipe) var A_ft2 = Math.PI * Math.pow(D_ft / 2, 2); // Flow rate Q = V * A var Q_cfs = V_fps * A_ft2; var Q_gpm = Q_cfs * 448.831;
// Self-cleaning velocity check (min ~2 ft/s for drain pipes) var velStatus = ''; if (V_fps ⚠ Below self-cleaning velocity (min ~2 ft/s) — solids may accumulate.'; else if (V_fps ✔ Adequate velocity for self-cleaning flow.'; else velStatus = '⚠ Very high velocity — may cause pipe erosion over time.';
// Also show slope-only results var slope_in_per_ft2 = dropVal / runVal; var slope_pct2 = (dropVal / (runVal * 12)) * 100;
html = '### Flow Velocity Results (Manning's Equation) ' + '' + 'ParameterValue' + 'Flow Velocity (full pipe)' + V_fps.toFixed(3) + ' ft/s' + 'Flow Velocity' + V_mph.toFixed(3) + ' mph' + 'Flow Rate Q (full pipe)' + Q_cfs.toFixed(4) + ' ft³/s (' + Q_gpm.toFixed(2) + ' GPM)' + 'Hydraulic Radius (R)' + (R_ft * 12).toFixed(4) + ' in (' + R_ft.toFixed(5) + ' ft)' + 'Slope (S)' + S.toFixed(6) + ' ft/ft (' + slope_pct2.toFixed(3) + '%)' + 'Pipe Diameter' + diamVal.toFixed(2) + ' in' + 'Manning's n' + manningVal.toFixed(4) + '' + '' + '' + velStatus + '
'; }
res.innerHTML = html; }
// Initialize display draUpdateMode();
#### Formulas Used
Slope: S (in/ft) = Drop (in) ÷ Run (ft)
Slope %: S% = [Drop (in) ÷ (Run (ft) × 12)] × 100
Elevation Drop: Drop (in) = Slope (in/ft) × Run (ft)
Pipe Run: Run (ft) = Drop (in) ÷ Slope (in/ft)
Manning's Equation (US Customary): V = (1.486 / n) × R2/3 × S1/2 where V = velocity (ft/s), n = Manning's roughness, R = hydraulic radius (ft) = D/4 for full circular pipe, S = slope (ft/ft)
Flow Rate: Q = V × A, where A = π(D/2)² for full pipe
#### Assumptions & References
- Manning's equation assumes full-pipe, steady, uniform flow. Actual drain pipes typically flow at 50–80% full; full-pipe results are conservative upper bounds.
- Recommended residential drain slope: 1/4 inch per foot (2.08%) per IPC/UPC plumbing codes.
- Minimum slope to prevent solids settling: 1/8 inch per foot (1.04%).
- Self-cleaning minimum velocity: 2 ft/s (0.6 m/s) per ASCE and plumbing standards.
More Calculators
- NC EV Tax Credit and Incentive Savings Calculator
- NC Licensed Contractor Verification Cost Savings Calculator
- Charging Station Level Comparison Calculator
- North Carolina Utility Rate Estimator
- Ohio Commercial Building Permit Cost Estimator
- Ohio EV Tax Credit and Incentive Savings Calculator
- Tree & Shrub Pruning Cost Estimator
- Florida DBPR Security License Fee Calculator
- Business Cyber Liability Insurance Cost Estimator
- Incident Response Readiness Score Calculator
- Phishing Attack Exposure Calculator
- Multi-Factor Authentication Risk Reduction Calculator
Read Next
Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...