Resistance from power and voltage calculator
This resistance from power and voltage calculator finds the resistance of an unknown resistive load when you know the voltage applied across it and the real power it consumes.
Run — free
It uses the direct relationship R = V² / P, returning resistance in ohms from voltage in volts and power in watts. It is useful for checking heaters, lamps, resistors, and other approximately resistive devices when a resistance measurement is unavailable or impractical. Results can be rounded to a chosen precision for clear documentation or automated engineering workflows.
When voltage and power reveal an unknown resistance
A resistive load converts electrical energy into heat, so its voltage, power, and resistance are linked. If voltage and real power are already known, rearranging the familiar power relationship P = V² / R gives R = V² / P. Enter the applied voltage in volts and the dissipated power in watts, and the calculator returns the equivalent resistance in ohms. This reverse calculation is especially helpful when a label provides a voltage and wattage rating but no resistance, or when operating measurements are easier to obtain than a direct ohmmeter reading. Use DC voltage for a DC circuit. For an AC resistive load, use RMS voltage and real power rather than peak voltage or apparent power. The returned value describes the operating point represented by the inputs. A heating element, incandescent filament, or other temperature-sensitive load may have a substantially different cold resistance, so the calculated operating resistance should not automatically be treated as its unpowered meter reading. The tool validates both quantities and rejects zero or negative power because dividing by zero has no finite result and negative dissipation is outside this calculator’s passive-load model.
How to calculate and interpret the result
The algorithm squares the voltage and divides that value by power. For example, a load using 60 watts at 120 volts has an equivalent resistance of 120² / 60, or 240 ohms. Units matter: volts squared divided by watts produces ohms directly, so enter volts and watts without silently substituting millivolts or kilowatts. Convert those prefixes first if necessary. The optional precision setting controls the maximum number of decimal places displayed, which is convenient for calculations that do not divide evenly. More displayed digits do not create more physical accuracy; the uncertainty of the answer still depends on the accuracy, resolution, and timing of the voltage and power measurements. Because voltage is squared, a voltage measurement error has an amplified influence on the inferred resistance. Measurements should describe the same steady operating condition, particularly for loads that warm up or use thermostatic control. The response repeats the normalized voltage and power alongside `resistance_ohms`, the precision, and the formula, making the result easy to audit in an API pipeline. It does not add a guessed tolerance or choose a preferred resistor series value.
Practical limits and safe engineering use
Treat the result as an equivalent resistance for a load behaving resistively at the stated operating point. The equation is appropriate for fixed resistors, many heating elements, and other devices whose real power is dominated by resistance. It is not a complete impedance calculator for motors, transformers, capacitors, inductors, switching power supplies, or any load with a meaningful power factor. In those cases, voltage and real power alone are not enough to recover impedance because phase and waveform information are missing. The result also does not specify a safe replacement component. A replacement resistor must satisfy resistance tolerance, continuous and surge power ratings, voltage rating, insulation, temperature rise, cooling, and applicable safety margins. Mains measurements are hazardous and should be made only with properly rated equipment and suitable training; nameplate values are preferable when live measurement is unnecessary. For reverse engineering, compare the calculated operating resistance with schematic expectations and, when safe, an isolated resistance measurement after the device has cooled. Browser use is free, while an automated API request costs $0.002. The same deterministic calculation serves both paths, with no network lookup or changing reference data involved.
What you can do with it
Identify a heater’s operating resistance
Convert a heater’s rated voltage and wattage into its approximate hot resistance for comparison or documentation.
Check an unknown resistive load
Use simultaneous voltage and real-power measurements to estimate the equivalent resistance at that operating point.
Plan a resistive test load
Find the resistance implied by a target power at a chosen voltage before selecting adequately rated hardware.
FAQ
What formula does the calculator use?
It uses R = V² / P, where R is resistance in ohms, V is applied voltage in volts, and P is real power in watts.
Should I use RMS or peak voltage for AC?
Use RMS voltage for an approximately resistive AC load, together with real power measured over the same operating condition.
Why must power be greater than zero?
Zero power would require division by zero and cannot produce a finite resistance from this formula. Negative power is outside the passive resistive-load model.
Will this equal the resistance measured while the device is cold?
Not necessarily. Filaments, heaters, and other temperature-dependent loads can have a cold resistance very different from their operating resistance.
Can I use the result to select a replacement resistor?
Use it as one input only. You must also consider tolerance, power and voltage ratings, surge energy, temperature, cooling, and safety margin.
What does an API calculation cost?
Each API request costs $0.002. The calculator is also available 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/resistance-from-power-voltage \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"voltage":120,"power":60}'const res = await fetch("https://api.kit.forhosting.com/elec/resistance-from-power-voltage", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"voltage": 120,
"power": 60
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/resistance-from-power-voltage",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"voltage": 120,
"power": 60
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/resistance-from-power-voltage", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"voltage":120,"power":60}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"voltage":120,"power":60}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/resistance-from-power-voltage", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"voltage": 120,
"power": 60
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.resistance_from_power_voltage",
"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. |