Duct Leakage Rate Calculator

ANALife Services AuthorityNational Calculator Authority›Duct Leakage Rate 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; } }

Duct Leakage Rate Calculator

Calculate duct leakage airflow (CFM) based on duct surface area, leakage class, and test pressure differential. Uses SMACNA and ASHRAE 90.1 standard leakage equations.

Duct Surface Area (ft²)

Leakage Class (CL)

Class 3 — Sealed (CL = 3) Class 6 — Sealed (CL = 6) Class 12 — Unsealed Low Pressure (CL = 12) Class 24 — Unsealed Medium Pressure (CL = 24) Class 48 — Unsealed High Pressure (CL = 48) Custom CL value

Custom Leakage Class (CL)

Test Pressure (in. w.g.)

Pressure Exponent (n)

0.65 — SMACNA / ASHRAE Standard 0.50 — Orifice Flow 0.60 — Intermediate 0.75 — Crack Flow

System Design Airflow (CFM) (optional — for % leakage)

Calculate

(function() { const clSelect = document.getElementById('duc-leakage-class'); const customGroup = document.getElementById('duc-custom-cl-group');

clSelect.addEventListener('change', function() { customGroup.style.display = (this.value === 'custom') ? 'block' : 'none'; });

window.ducCalc = function() { const resultDiv = document.getElementById('duc-result'); resultDiv.style.display = 'none'; resultDiv.innerHTML = '';

// --- Gather inputs --- const surfaceArea = parseFloat(document.getElementById('duc-surface-area').value); const testPressure = parseFloat(document.getElementById('duc-test-pressure').value); const n = parseFloat(document.getElementById('duc-pressure-exponent').value); const systemCFM = parseFloat(document.getElementById('duc-system-cfm').value);

let CL; if (clSelect.value === 'custom') { CL = parseFloat(document.getElementById('duc-custom-cl').value); } else { CL = parseFloat(clSelect.value); }

// --- Validation --- const errors = []; if (isNaN(surfaceArea) || surfaceArea 1) errors.push('Pressure exponent (n) must be between 0 and 1.'); if (!isNaN(systemCFM) && systemCFM 0) { resultDiv.style.display = 'block'; resultDiv.innerHTML = 'Input Error:' + errors.map(e => '').join('') + ''; return; }

// --- Core Formula --- // SMACNA / ASHRAE 90.1: // F_L = CL × A × P^n // Where: // F_L = Leakage airflow (CFM) // CL = Leakage class (CFM/100 ft² at 1 in. w.g.) // A = Duct surface area (ft²) // P = Test pressure (in. w.g.) // n = Pressure exponent (dimensionless)

const leakageCFM = CL * (surfaceArea / 100) * Math.pow(testPressure, n);

// Leakage per 100 ft² at given pressure const leakagePer100ft2 = CL * Math.pow(testPressure, n);

// Percentage of system airflow (if provided) let pctHTML = ''; if (!isNaN(systemCFM) && systemCFM > 0) { const pct = (leakageCFM / systemCFM) * 100; const pctClass = pct Leakage as % of System Airflow \${pct.toFixed(2)}%

Assessment \${pctLabel} `; }

// Leakage at 1 in. w.g. reference (for comparison) const leakageAt1inWG = CL * (surfaceArea / 100);

resultDiv.style.display = 'block'; resultDiv.innerHTML = ` ### Results

ParameterValue

Duct Surface Area\${surfaceArea.toLocaleString()} ft² Leakage Class (CL)\${CL} CFM/100 ft² @ 1 in. w.g. Test Pressure\${testPressure} in. w.g. Pressure Exponent (n)\${n}

Duct Leakage Rate \${leakageCFM.toFixed(1)} CFM

Leakage per 100 ft² at Test Pressure \${leakagePer100ft2.toFixed(2)} CFM/100 ft²

Leakage at Reference (1 in. w.g.) \${leakageAt1inWG.toFixed(1)} CFM

\${pctHTML}

`; }; })();

#### Formula

FL = CL × (A / 100) × Pn

Leakage percentage: % = (FL / Qsystem) × 100

#### Assumptions & References

More Calculators

Read Next

Tile Layout And Pattern Planner ANA › Life Services Authority › National Calculator Authority › Tile Layout and Pattern Planner .calc-container { max-width:...

Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...

References