Wire gauge selection calculator
This wire gauge selection calculator recommends the smallest standard AWG conductor that keeps the estimated voltage drop within your chosen percentage.
Run — free
Enter the load current, one-way cable run, supply voltage, conductor material, and circuit arrangement. The result includes the selected gauge, conductor area, calculated drop, and the minimum area required by the voltage-drop formula. It is a planning calculation, not an ampacity or electrical-code approval, so final conductor selection must also account for installation conditions and applicable regulations.
Start with the electrical load and the complete run
Reliable selection begins with the current that the conductor must carry during the condition you want to evaluate. Enter current in amperes and the physical one-way distance from the source to the load in metres. For a DC or single-phase circuit, the calculator includes both the outgoing and returning conductor in the resistance path, so you should not double the distance yourself. For a balanced three-phase circuit, it applies the square-root-of-three relationship used for line voltage drop. Enter the nominal supply voltage and an allowed percentage drop that reflects the equipment and project requirement. A lower percentage demands a larger conductor because the permitted loss in volts is smaller. Use the expected sustained or design load rather than an optimistic average when continuity of voltage matters. The calculator accepts copper or aluminum and uses each material's resistivity at 20 degrees Celsius. Those inputs establish a clear, reproducible baseline, but conductor resistance generally rises with operating temperature, so a hot installation may experience more drop than this baseline predicts.
How the recommended AWG size is calculated
The allowed loss in volts is the supply voltage multiplied by the chosen percentage. The calculator then rearranges the conductor voltage-drop equation to find the minimum cross-sectional area needed for the specified current and path length. It uses a path multiplier of two for DC or single-phase circuits and the square root of three for balanced three-phase circuits. After computing that minimum area, it examines standard AWG sizes from the thinnest toward the thickest and chooses the first size whose nominal circular area is large enough. This method makes the recommendation conservative with respect to the stated voltage-drop formula: it rounds up to an available gauge instead of presenting a theoretical area that cannot be purchased as an AWG conductor. The result also recalculates resistance and voltage drop using the selected gauge, allowing you to see the margin created by rounding up. AWG numbering runs in the opposite direction from physical size, so a smaller gauge number means a larger conductor; 0, 00, 000, and 0000 continue that progression beyond gauge 1.
Treat voltage drop as one part of conductor selection
A voltage-drop result does not establish that a wire is safe or code compliant. Ampacity can require a larger conductor because allowable current depends on insulation temperature rating, ambient temperature, conductor count in a raceway or cable, installation method, termination ratings, duty cycle, and the rules enforced in your jurisdiction. Protective-device sizing and special requirements for motors, transformers, continuous loads, photovoltaic systems, or battery circuits may also control the final choice. Use this result to answer a focused planning question: which AWG size is large enough for the requested electrical loss under the calculator's stated 20-degree-Celsius resistance basis? Then compare that size with the minimum allowed by the applicable ampacity tables and design rules, choosing the larger conductor whenever those checks disagree. For long runs, consider testing nearby gauges to understand the tradeoff between material cost and delivered voltage. Aluminum conductors also need compatible terminals and installation practices. Have a qualified electrical professional review designs where failure could create fire, shock, equipment damage, or service interruption risks.
What you can do with it
Plan a low-voltage DC cable run
Choose a starting AWG size for a battery, lighting, control, or communications power circuit with a defined voltage-loss budget.
Compare copper and aluminum
Run the same load and distance with each conductor material to see how resistivity changes the required cross-sectional area.
Check a long feeder concept
Estimate the voltage-drop-driven gauge for a single-phase or balanced three-phase run before completing code and ampacity checks.
FAQ
Does the recommendation guarantee sufficient ampacity?
No. It selects a gauge for voltage drop only. Verify ampacity, overcurrent protection, temperature corrections, bundling, insulation, terminals, and local electrical code separately.
Should I enter one-way or round-trip length?
Enter one-way physical length. The calculator applies the return-path factor for DC and single-phase circuits and the appropriate factor for balanced three-phase circuits.
Why can a low-voltage circuit need a large wire?
The same loss in volts represents a larger percentage of a low supply voltage. Keeping that percentage small can therefore require substantially lower resistance and a larger conductor.
What temperature does the calculation assume?
The resistivity basis is 20 degrees Celsius. Real conductor resistance rises as temperature increases, so operating voltage drop may be higher.
What does the API request cost?
Each API request costs $0.002. The same deterministic calculation can also run free in the browser.
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/elec/wire-gauge-selection \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"current_amps":20,"one_way_length_m":30,"supply_voltage":120,"max_voltage_drop_percent":3}'const res = await fetch("https://api.kit.forhosting.com/elec/wire-gauge-selection", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"current_amps": 20,
"one_way_length_m": 30,
"supply_voltage": 120,
"max_voltage_drop_percent": 3
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/wire-gauge-selection",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"current_amps": 20,
"one_way_length_m": 30,
"supply_voltage": 120,
"max_voltage_drop_percent": 3
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/wire-gauge-selection", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"current_amps":20,"one_way_length_m":30,"supply_voltage":120,"max_voltage_drop_percent":3}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"current_amps":20,"one_way_length_m":30,"supply_voltage":120,"max_voltage_drop_percent":3}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/wire-gauge-selection", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"current_amps": 20,
"one_way_length_m": 30,
"supply_voltage": 120,
"max_voltage_drop_percent": 3
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.wire_gauge_selection",
"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. |