HomeCalculatorsElectricalBattery & Energy StorageBattery Runtime with Temperature
Electrical calculator

Battery Runtime with Temperature

Estimate constant-load battery runtime with a generic cold-derating heuristic about 25 °C. Extends Battery Runtime (watts load-side / amps battery-side). Planning model — not chemistry.

Instant result
Result

Enter values to calculate.

Inputs
Mode
Formula
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Engineering assurance
Input interpretation
Enter values to calculate.
Result
Assurance
Engineering
Declared partition coverage
PASS · 6/6 declared partitions (watts, amps, generic-cold, custom-symmetric, clamped-regime, invalid-domain) · Matrix
Known limitations
  • generic_cold_derating default; custom_symmetric_linear advanced
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
Constant-load battery runtime with generic cold-derating temperature capacity factor about 25 °C (first-order planning).
Scope
Default: cold-only linear derating about 25 °C; T≥25 °C → f_T=1 (no high-temp bonus).
Verification
Engine tested · Source checked · v1.2.1 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Engineering assurance· View Manifest · CVP overview · Specification
Versions
Calculation 1.2.1 · CVP protocol 1.0.0-proposed · Evidence 2026-09-11.xcal-meta-derived
Verification revision
2026-09-11.xcal-meta-derived · 16/16 property · digest 742a9a7e3a3b
Legacy regression
31/31 tests · Production surface contract 4/4
Trust layers
Verification VERIFIED · Production CURRENT · overall VERIFIED
Reference
O1 model · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session.
Supplemental domain review
Internal · Pass · electrical-engineer · 2026-08-12
Named expert review
Not performed
CVP suite
4/4 golden · 8/8 CVP boundary · 5/5 invalid · 16/16 property · 3/3 metamorphic · 2/2 cross-interface · 2/2 cross-calculator · 4/4 CVP contract · Manifest
Sources
Sources
Evidence
5 legacy golden · 10 legacy boundary · legacy regression suite · 4/4 oracle-backed golden · 5/5 invalid · Artifact integrity PASS · CalculatorX electrical review
This calculator CURRENT · Public schema 1.2.1 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

Temperature factor (default cold-only)f_T = clamp(1 + k_T·min(T−25, 0), 0.1, 1)
Runtime (watts, load-side)t = (Ah·f_T·V·DoD·η) / P
Runtime (amps, battery-side)t = (Ah·f_T·DoD) / I_battery
iDefault k_T = 0.006 /°C is a planning default — not manufacturer validated, not Arrhenius, Peukert, or a datasheet curve. Clamp is a numerical safeguard, not an operating envelope. Prefer chemistry/manufacturer profiles for design.

How to use

1

Enter capacity, voltage, load

Same modes as Battery Runtime: watts = load-side P; amps = battery-side I (η unused).

2

Enter temperature

Cell/pack temperature in °C. Default model derates only below 25 °C.

3

Temperature model

Generic cold derating (default) or advanced custom symmetric linear. Coefficient k_T is under Advanced.

Example calculations

Common configurations with formula and result.

ϟ

25 °C baseline

10 Ah · 12 V · 20 W · f_T=1

t = E/P
6 h
ϟ

0 °C with default k_T

Same pack · T=0 °C · k_T=0.006 · cold-only

f_T=0.85
t = 5.1 h (−0.9 h vs 25 °C)
ϟ

50 °C — no bonus

Same pack · T=50 °C · default cold-only model

f_T=1
t = 6 h (no high-temp capacity reward)
ϟ

Battery-side amps

10 Ah · 2 A · DoD 0.8 · T=25 °C · η 0.9

t=(10·0.8)/2
t = 4 h (η ignored)

Battery Runtime with Temperature specification

Version 1.2.1 · Engine tested · Supplemental domain review · Internal · 2026-08-12

Calculation status

Review policy · Evidence · Reviewed by CalculatorX electrical review (electrical-engineer)

Definition
Extends constant-load battery runtime with a temperature capacity factor f_T about 25 °C. Default generic cold derating: f_T = clamp(1 + k_T·min(T_C − 25, 0), 0.1, 1) — no high-temperature capacity bonus. Then Ah_eff = Ah · f_T with the same watts/amps semantics as Battery Runtime 1.2+.
What it calculates
Constant-load battery runtime with generic cold-derating temperature capacity factor about 25 °C (first-order planning).
Inputs
  • mode: watts (P_W load-side) | amps (I_A battery-side) — oneOf schema
  • capacity_Ah XOR capacity_mAh > 0
  • V > 0; P_W or I_A > 0 by mode
  • Optional dod, eta in (0,1]; eta unused in amps mode
  • T_C (finite °C) required
  • Optional temperature_model: generic_cold_derating (default) | custom_symmetric_linear
  • Optional k_T ≥ 0 (default 0.006) — planning default, not validated
Outputs
  • t_h, t_d, E_Wh, temp_factor (f_T), T_C, k_T, capacity_Ah_eff
  • temperature{ model, capacity_factor, clamped, parameter_validated:false, t_h_at_reference, delta_t_h, delta_percent, … }
Formula
default: f_T=clamp(1+k_T·min(T−25,0),0.1,1); watts: E=Ah·f_T·V·DoD·η, t=E/P; amps: E=Ah·f_T·V·DoD, t=(Ah·f_T·DoD)/I
Assumptions
  • Default: cold-only linear derating about 25 °C; T≥25 °C → f_T=1 (no high-temp bonus).
  • Clamp is a numerical safeguard, not an operating-temperature envelope.
  • Default k_T=0.006 is a planning default (parameter_validated=false).
  • Constant load; not Peukert / chemistry Arrhenius / manufacturer curve.
  • Amps mode I_A is battery-side; η does not enter t_h.
Units
  • Ah, V, W or A, °C → h, d, Wh
Boundary conditions
  • Missing capacity/V/T_C/load → MISSING_REQUIRED_INPUT / domain codes
  • Both capacity_Ah and capacity_mAh → INVALID_INPUT
  • dod/eta outside (0,1] → FRACTION_OUT_OF_RANGE
  • k_T < 0 → VALUE_MUST_BE_NON_NEGATIVE
  • Bad mode / temperature_model → INVALID_MODE
  • f_T at clamp → TEMP_FACTOR_CLAMPED warning
Example
10 Ah · 12 V · 20 W · T=0 °C · k_T=0.006 → f_T=0.85 · t=5.1 h (−0.9 h vs 25 °C)
Validation cases

7 published on this page · 31/31 tests · Production surface contract 4/4 · View evidence

  • T_C=25, same as ideal battery runtime → t_h=6, temp_factor=1
  • T_C=0, k_T=0.006, cold-only → temp_factor=0.85, t_h=5.1
  • T_C=50, default cold-only → temp_factor=1, t_h=6 (no bonus)
  • amps + eta=0.9, DoD=0.8 → t_h=4 (η ignored)
  • missing T_C → error MISSING_REQUIRED_INPUT
  • k_T=-0.1 → error VALUE_MUST_BE_NON_NEGATIVE
  • T_C=-200 → temp_factor=0.1 + TEMP_FACTOR_CLAMPED
Sources
  • Victron Lithium Battery Smart — Operation (capacity vs temperature example) — Capacity vs temperature (product example)
    Supports: Illustrative manufacturer evidence that capacity is rated at 25 °C and falls at low T (e.g. ~−20% at 0 °C, ~−50% at −20 °C under their conditions). Motivates a generic first-order cold planning derating — not a universal k_T calibration. CalculatorX default 0 °C ≈ −15% is first-order planning only.
  • Victron SmartShunt — temperature capacity compensation note — Temperature compensation engineering simplification
    Supports: Example of an engineering practice that applies capacity derating below ~20 °C and treats warmer temperatures as lower impact — aligns with CalculatorX default cold-only (no high-temp bonus) planning stance.
  • Trojan Battery — temperature effects FAQ — Temperature and capacity / life
    Supports: High temperature can increase available capacity for some lead-acid chemistries while harming life — reason not to default-reward high T in a generic planning tool.
  • CalculatorX Battery Runtime capability — Constant-load watts/amps model (1.2+)
    Supports: Base runtime model (BatteryRuntimeBaseInput) extended by temperature factor
Last reviewed
2026-08-12
Reviewed by
CalculatorX electrical review (electrical-engineer)
Calculation version
1.2.1

Background

Interpretation and common distinctions.

Estimate battery runtime with temperature using a generic cold-derating heuristic about 25 °C, on top of Battery Runtime (watts = load-side power; amps = battery-side current).

Default example: 10 Ah · 12 V · 20 W · 0 °Cf_T = 0.855.1 h (−0.9 h / −15% vs 25 °C).

Formula is deterministic; the temperature model is an assumption. Default k_T = 0.006 /°C is a planning default (not manufacturer validated). Clamp is a numerical safeguard, not an operating envelope.

This page is an intermediate Battery Capability layer — not a chemistry simulator. Prefer manufacturer / chemistry profiles for design.

Supported and not supported

Supported

  • Watts (load-side) / amps (battery-side); Ah XOR mAh
  • Planning DoD; load-side η in watts mode only
  • Default generic cold derating (no high-temp capacity bonus)
  • Advanced custom symmetric linear (opt-in)
  • Clamp warning TEMP_FACTOR_CLAMPED
  • API via electrical.battery.runtime_temp

Not supported

  • Peukert, BMS cutoffs, or pack thermal models
  • Chemistry-specific Arrhenius / manufacturer interpolated curves (future Profile Runtime)
  • Charge-time / solar input

Agent / API notes

Capability id: electrical.battery.runtime_temp · tool id: battery-runtime-temp · pin calculation_version: 1.2.1.

Input Schema: mode-discriminated oneOf (watts / amps) extending BatteryRuntimeBaseInput (shared schema) + required T_C + optional temperature_model / k_T.

At T_C = 25 °C, results match Battery Runtime Basic (evidence parity tests).

Namespace note: public id stays electrical.battery.runtime_temp today; future family taxonomy prefers electrical.battery.runtime.temperature with a deprecated alias (no breaking rename yet).

Stable error codes: MISSING_REQUIRED_INPUT, INVALID_NUMBER, INVALID_MODE, INVALID_INPUT, CAPACITY_MUST_BE_POSITIVE, VOLTAGE_MUST_BE_POSITIVE, LOAD_MUST_BE_POSITIVE, FRACTION_OUT_OF_RANGE, VALUE_MUST_BE_NON_NEGATIVE.

Warning codes: TEMP_FACTOR_CLAMPED, ETA_IGNORED_IN_AMPS_MODE.

}

Frequently asked questions

Key distinctions behind the calculation.

How does temperature affect runtime here?

Capacity is scaled by f_T before DoD and load. Default generic cold derating only reduces capacity below 25 °C; it does not invent extra capacity above 25 °C. This is a first-order planning model, not a chemistry prediction.

What is k_T?

A planning coefficient in 1/°C (default 0.006). It is a planning default — not manufacturer validated. In the default model it is the cold derating coefficient. Edit it under Advanced temperature model.

Why no high-temperature capacity bonus?

A symmetric linear k_T would imply 50 °C → 115% capacity, which is too optimistic for a generic engineering planning tool. High temperature may increase short-term capacity for some chemistries but often harms lifetime. Use Advanced → custom symmetric linear only if you intentionally want that heuristic.

Is the clamp a real battery limit?

No. Clamp [0.1, 1] (cold-only) or [0.1, 1.2] (symmetric) is a numerical safeguard. Manufacturer discharge windows (e.g. −20 °C to +50 °C) are separate — do not read a clamped f_T as an operating envelope.

Is this Peukert or BMS cutoff?

No. Constant-load idealization only — same limitations as Battery Runtime, plus this simple temperature factor.

Does η apply in amps mode?

No. Amps mode uses battery-side discharge current (aligned with Battery Runtime 1.2+); η is ignored.

What if T_C is missing?

The API returns MISSING_REQUIRED_INPUT.