Home circuit count calculator
A 2,000 sq ft home works out to 5 general lighting and outlet circuits at 15 A and 120 V: floor area times 3 volt-amperes per square foot, divided by what each circuit can carry. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Sq ft
- 2,000
- Circuit amps
- 15 circuits
- Voltage
- 120
- Va per sqft
- 3
- Load factor
- 0.8
Planning a panel, permit package, or renovation budget often starts with a simple question: roughly how many general lighting and receptacle circuits does this house need? Residential design practice sizes general lighting and outlet loads from floor area using a unit load in volt-amperes per square foot, then divides that total by the usable capacity of each branch circuit. This calculator takes total conditioned square footage and optional circuit rating, voltage, unit load, and continuous-load factor, then returns a deterministic circuit count plus the intermediate volt-ampere figures. Dedicated kitchen small-appliance, laundry, and fixed-appliance circuits still need separate allowances; this tool focuses on general lighting and outlets from area.
Why square footage drives general lighting and outlet circuits
Dwelling unit design commonly assigns a unit load of three volt-amperes per square foot of floor area for general lighting and receptacles. That figure is not a measurement of every lamp and plug in the finished home; it is a planning load that scales with size so larger conditioned footprints demand more branch-circuit capacity. Once total volt-amperes are known, you divide by the usable capacity of each general-purpose circuit.
A fifteen-ampere, one-hundred-twenty-volt circuit has a nameplate of one thousand eight hundred volt-amperes, but continuous-load sizing practice often uses eighty percent of that rating so the usable circuit volt-amperes become one thousand four hundred forty. Twenty-ampere general-purpose circuits raise usable capacity and therefore lower the estimated circuit count for the same floor area. The estimate deliberately excludes dedicated ranges, dryers, HVAC compressors, water heaters, and other fixed loads that are sized from nameplate data rather than floor area.
Using square footage keeps early planning honest: you get a repeatable baseline for general lighting and outlets before room-by-room takeoffs and special circuits are finalized.
What you can do with it
Early electrical takeoffs for new homes
Convert conditioned square footage into a baseline count of general lighting and outlet branch circuits before room-by-room receptacle plans are finished.
Renovation and addition sizing checks
Estimate how many extra general-purpose circuits an addition of known square footage may need under 15 A or 20 A assumptions.
Estimator dashboards and unit-type comparisons
Store deterministic circuit counts next to floor-plate area so multifamily unit types share one formula across bids and seasons.
FAQ
What formula does this circuit count calculator use?
Defaults are 3 VA/ft², 15 A, 120 V, and 0.8 load factor.
Does this include kitchen small-appliance or laundry circuits?
No. Those are separate dwelling allowances. This tool estimates general lighting and receptacle circuits from floor area only.
How many circuits does a 2,000 square foot house need?
For general lighting and outlets, 5 circuits at the default 15 A and 120 V. The house adds up to a planning load of 6,000 volt-amperes, each circuit can take 1,440 of them, and the result is rounded up to a whole circuit.
Why is only 80% of each circuit counted as usable?
A 15 A, 120 V circuit is rated for 1,800 volt-amperes, but sizing practice for loads that run for hours keeps them at 80% of that, which leaves 1,440 usable. You can change that share if your design rule is different.
My floor plan is in square meters. What do I enter?
Convert the area to square feet first by multiplying it by 10.764, then enter that total. The planning load of 3 volt-amperes is stated per square foot, so entering square meters would undercount the circuits.
Related tools
For developers — API access
Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.
API endpoint
Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/home/circuit-count \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"sq_ft":2000}'const res = await fetch("https://api.kit.forhosting.com/home/circuit-count", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"sq_ft": 2000
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/home/circuit-count",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"sq_ft": 2000
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/home/circuit-count", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"sq_ft":2000}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"sq_ft":2000}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/home/circuit-count", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"sq_ft": 2000
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "home.circuit_count",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
The free browser tool and the API share the same arithmetic library, so the number on the page matches a task response—no network lookup, no randomness, and no dependence on the current date.
How to call the calculator and read every returned field
Convert square meters to square feet by multiplying by ten point seven six four before calling if your plans use metric area, and leave dedicated appliance circuits out of this count so the general lighting and outlet estimate stays clean. Provide sq_ft as the total conditioned floor area in square feet. Optional circuit_amps defaults to fifteen, voltage to one hundred twenty, va_per_sqft to three, and load_factor to zero point eight. The service computes total_va equals square feet times unit load, circuit_va equals amps times volts times load factor, then lighting_outlet_circuits equals the ceiling of total_va divided by circuit_va with a minimum of one. It also returns sq_ft_per_circuit so you can see how many square feet each usable circuit covers under your assumptions. Aliases such as square_feet, sqft, area_sq_ft, conditioned_sq_ft, amps, breaker_amps, volts, unit_load, and derate are accepted so forms and scripts are not locked to a single field name. Square footage, amps, voltage, and unit load must be strictly greater than zero; load_factor must be greater than zero and at most one. Missing or non-numeric required fields fail with invalid_input naming the field. There is no network lookup and no model inference—the same inputs always produce the same JSON.
Where teams use it and how pricing works
Batch jobs bill each successful computation as one item. The interactive tool above runs free in the browser for interactive checks. Source inputs and outputs are retained only for the platform retention window and are never used to train models. Use this endpoint when a builder takeoff sheet, electrical estimator dashboard, renovation planner, or permit worksheet needs a repeatable general-circuit count without embedding ad-hoc spreadsheet formulas in every client. Design firms can post many independent tasks—one per floor plate or unit type—and store lighting_outlet_circuits next to conditioned area for portfolio comparisons. Homeowners comparing a two-thousand-square-foot ranch to a three-thousand-square-foot two-story can change only sq_ft and see how the baseline general circuit demand scales. Educators can demonstrate continuous-load derating by toggling load_factor between one point zero and zero point eight while holding area fixed. Programmatic calls use the ForHosting KIT prepaid balance at $0.002 per successful request, with no subscription and no charge when validation fails. Because the arithmetic is tiny and fully local to the Worker, latency is dominated by the task queue handshake rather than by computation, which makes the capability suitable for high-frequency form validation as well as offline reprocessing of historical plan tables.
Technical questions
Should I use 15 A or 20 A general-purpose circuits?
Both are common. Pass circuit_amps as 15 (default) or 20. Higher ampacity raises circuit_va and can reduce the estimated circuit count for the same area.
What happens if sq_ft is zero or negative?
The request fails with invalid_input and is not charged. sq_ft must be a finite number strictly greater than zero.
Is the home circuit count calculator free?
The browser tool is free. API calls cost $0.002 per successful request from your prepaid KIT balance; failed validation is never charged.