Electrical Panel Load Calculator
ANA›Life Services Authority›National Calculator Authority›Electrical Panel Load 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; } }
Electrical Panel Load Calculator
Calculate total connected load, demand load (after demand factors), and verify your electrical panel capacity per NEC guidelines.
### Panel Settings
Panel Voltage (V)
120V (Single Phase) 240V (Single Phase) 208V (Three Phase) 480V (Three Phase)
Phase
Single Phase Three Phase
Main Breaker Size (A)
### Lighting & Receptacle Loads
Floor Area (sq ft)
Occupancy Type
Residential (3 VA/sq ft) Office (3.5 VA/sq ft) Warehouse (2 VA/sq ft) Retail (5 VA/sq ft) School (2 VA/sq ft)
Small Appliance Circuits (qty)
Laundry Circuits (qty)
### Fixed Appliance Loads
Range / Oven (W)
Clothes Dryer (W)
Water Heater (W)
Dishwasher (W)
Garbage Disposal (W)
Other Fixed Appliances (W)
### HVAC Loads
Air Conditioning (W)
Electric Heat (W)
Largest Motor (W) — for 125% rule
Calculate Panel Load Results will appear here.
function eleCalc() { // --- Read inputs --- const voltage = parseFloat(document.getElementById('ele-voltage').value); const phase = parseInt(document.getElementById('ele-phase').value); const breaker = parseFloat(document.getElementById('ele-breaker').value); const sqft = parseFloat(document.getElementById('ele-sqft').value); const vaPerSqft = parseFloat(document.getElementById('ele-lighting-type').value); const saCircuits= parseFloat(document.getElementById('ele-small-appliance').value); const laundry = parseFloat(document.getElementById('ele-laundry').value); const rangeW = parseFloat(document.getElementById('ele-range').value); const dryerW = parseFloat(document.getElementById('ele-dryer').value); const whW = parseFloat(document.getElementById('ele-water-heater').value); const dwW = parseFloat(document.getElementById('ele-dishwasher').value); const dispW = parseFloat(document.getElementById('ele-disposal').value); const otherW = parseFloat(document.getElementById('ele-other-fixed').value); const acW = parseFloat(document.getElementById('ele-ac').value); const heatW = parseFloat(document.getElementById('ele-heat').value); const motorW = parseFloat(document.getElementById('ele-motor').value);
const resultDiv = document.getElementById('ele-result');
// --- Validation --- const fields = [voltage, phase, breaker, sqft, vaPerSqft, saCircuits, laundry, rangeW, dryerW, whW, dwW, dispW, otherW, acW, heatW, motorW]; if (fields.some(v => isNaN(v) || v ⚠ Please enter valid non-negative numbers in all fields.'; return; } if (breaker ⚠ Main breaker must be at least 15A.'; return; } if (sqft ⚠ Floor area must be greater than 0.'; return; } const saCircuitsActual = Math.max(2, saCircuits); // NEC requires minimum 2 const laundryActual = Math.max(1, laundry); // NEC requires minimum 1
// ============================================================ // NEC STANDARD METHOD (NEC 220.82 / 220.83 simplified) // ============================================================
// 1. General Lighting Load (NEC 220.12) const generalLighting = sqft * vaPerSqft;
// 2. Small Appliance & Laundry Circuits (NEC 220.52) // Each circuit = 1500 VA const smallApplianceLoad = saCircuitsActual * 1500; const laundryLoad = laundryActual * 1500;
// 3. Subtotal before lighting demand factor const lightingSubtotal = generalLighting + smallApplianceLoad + laundryLoad;
// 4. Apply NEC Lighting Demand Factor (NEC Table 220.42 — Residential) // First 3000 VA @ 100%, next 3001–120000 VA @ 35%, remainder @ 25% let lightingDemand = 0; if (lightingSubtotal 12kW add 5% per kW over 12) let rangeDemand = 0; if (rangeW > 0) { if (rangeW 0 ? Math.max(5000, dryerW) : 0;
// 7. Fixed Appliances Demand (NEC 220.53) // If 4 or more fixed appliances (excl. range, dryer, A/C, heat): apply 75% demand factor const fixedAppliances = [whW, dwW, dispW, otherW].filter(v => v > 0); const fixedCount = fixedAppliances.length; const fixedTotal = fixedAppliances.reduce((a, b) => a + b, 0); const fixedDemandFactor = fixedCount >= 4 ? 0.75 : 1.0; const fixedDemand = fixedTotal * fixedDemandFactor;
// 8. HVAC — Use larger of A/C or Heat (NEC 220.60 — non-coincident loads) // A/C @ 100%, Heat @ 100% (electric resistance), take the larger const hvacDemand = Math.max(acW, heatW);
// 9. Largest Motor 125% adder (NEC 430.24) const motorAdder = motorW * 0.25; // 25% added on top of the motor's full load
// ============================================================ // TOTALS // ============================================================ const totalConnectedVA = generalLighting + smallApplianceLoad + laundryLoad + rangeW + dryerW + whW + dwW + dispW + otherW + acW + heatW + motorW;
const totalDemandVA = lightingDemand + rangeDemand + dryerDemand + fixedDemand + hvacDemand + motorW + motorAdder;
- // Panel capacity (VA) = Voltage × Amperage (single phase) or V × A × √3 (three phase)
- const sqrt3 = 1.7320508;
- const panelCapacityVA = phase === 3
- ? voltage * breaker * sqrt3
- voltage * breaker;
- // Demand current
- const demandCurrentA = phase === 3
- ? totalDemandVA / (voltage * sqrt3)
- totalDemandVA / voltage;
// Load percentage const loadPct = (demandCurrentA / breaker) * 100;
- // NEC 80% continuous load rule
- const continuousLimit = breaker * 0.80;
- const continuousLimitVA = phase === 3
- ? continuousLimit * voltage * sqrt3
- continuousLimit * voltage;
// Status let status, statusColor; if (loadPct s >= minBreakerNeeded) || '> 2000';
// Spare capacity const spareVA = Math.max(0, continuousLimitVA - totalDemandVA); const spareAmps = Math.max(0, continuousLimit - demandCurrentA);
resultDiv.innerHTML = ` ### Panel Load Analysis Results
ParameterValue General Lighting Load\${generalLighting.toLocaleString()} VA Small Appliance Circuits (\${saCircuitsActual} × 1500 VA)\${smallApplianceLoad.toLocaleString()} VA Laundry Circuits (\${laundryActual} × 1500 VA)\${laundryLoad.toLocaleString()} VA Lighting Subtotal (before demand factor)\${lightingSubtotal.toLocaleString()} VA Lighting Demand (after NEC Table 220.42)\${lightingDemand.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA Range Demand (NEC Table 220.55)\${rangeDemand.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA Dryer Demand (NEC 220.54)\${dryerDemand.toLocaleString()} VA Fixed Appliances (\${fixedCount} units × \${(fixedDemandFactor*100).toFixed(0)}% demand)\${fixedDemand.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA HVAC Demand (larger of A/C or Heat)\${hvacDemand.toLocaleString()} VA Motor Load + 25% Adder\${(motorW + motorAdder).toFixed(0)} VA Total Connected Load\${totalConnectedVA.toLocaleString()} VA (\${(totalConnectedVA/1000).toFixed(2)} kVA) Total Demand Load (NEC)\${totalDemandVA.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA (\${(totalDemandVA/1000).toFixed(2)} kVA) Demand Current\${demandCurrentA.toFixed(1)} A Panel Capacity (\${voltage}V, \${phase}Ø, \${breaker}A)\${panelCapacityVA.toLocaleString()} VA (\${(panelCapacityVA/1000).toFixed(2)} kVA) NEC 80% Continuous Limit\${continuousLimit.toFixed(1)} A / \${continuousLimitVA.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA Panel Load Percentage\${loadPct.toFixed(1)}% Spare Capacity (at 80% rule)\${spareAmps.toFixed(1)} A / \${spareVA.toFixed(0).replace(/\B(?=(\d{3})+(?!\d))/g,',')} VA Minimum Recommended Breaker\${recommendedBreaker} A
\${status}
`; }
#### Formulas Used (NEC Standard Method)
1. General Lighting Load (NEC 220.12): Lighting VA = Floor Area (sq ft) × VA/sq ft factor
2. Small Appliance & Laundry (NEC 220.52): Each circuit = 1,500 VA (minimum 2 small appliance + 1 laundry required)
3. Lighting Demand Factor (NEC Table 220.42): First 3,000 VA @ 100% + Next (3,001–120,000 VA) @ 35% + Remainder @ 25%
4. Range Demand (NEC Table 220.55): Single unit ≤ 12 kW → 8,000 VA; >12 kW → 8,000 + 5% per kW over 12 kW
5. Dryer Demand (NEC 220.54): max(5,000 W, nameplate rating) @ 100%
6. Fixed Appliance Demand (NEC 220.53): < 4 appliances → 100%; ≥ 4 appliances → 75% demand factor
7. HVAC — Non-Coincident Loads (NEC 220.60): Use the larger of A/C or Electric Heat (they don't run simultaneously)
8. Largest Motor 125% Rule (NEC 430.24): Motor VA × 1.25 (25% adder on largest motor)
9. Panel Capacity: Single Phase: VA = V × A Three Phase: VA = V × A × √3
10. Demand Current: Single Phase: I = Total Demand VA ÷ V Three Phase: I = Total Demand VA ÷ (V × √3)
11. NEC 80% Continuous Load Rule (NEC 210.20, 215.3): Continuous loads must not exceed 80% of breaker rating. Load % = (Demand Current ÷ Breaker Rating) × 100
#### Assumptions & References
- Calculations follow NEC 2023 (NFPA 70) Standard Method for dwelling units.
- Lighting demand factors from NEC Table 220.42 (residential occupancy = 3 VA/sq ft per NEC 220.12).
- Small appliance circuits: minimum 2 required per NEC 220.52(A); laundry minimum 1 per NEC 220.52(B).
- Range demand based on NEC Table 220.55, Column C (single household cooking appliance).
- Dryer demand per NEC 220.54: 5,000 W minimum or nameplate, whichever is greater.
- Fixed appliance 75% demand factor applies when 4 or more appliances per NEC 220.53.
- Non-coincident HVAC loads: only the larger of A/C or heat is counted per NEC 220.60.
- Motor 125% rule per NEC 430.24 applies to the largest motor only.
- NEC 80% rule for continuous loads per NEC 210.20(A) and 215.3.
- Standard breaker sizes per NEC 240.6(A).
More Calculators
- Mortgage Affordability Calculator
- Annual Home Service Schedule and Cost Planner
- How-To Guide Reading Time Calculator
- Procedure Steps Estimator
- Generator Runtime and Fuel Calculator
- Gutter Sizing Calculator
- Macronutrient Balance Calculator
- Stress & Cortisol Load Estimator
- Intermittent Fasting Window Calculator
Read Next
Annual Home Service Schedule And Cost Planner ANA › Life Services Authority › National Calculator Authority › Annual Home Service Schedule and Cost Planner .calc-container...
Study Time Planner Authority Network America › Life Services Authority › National Calculator Authority .calc-container { max-width: 640px;...