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.
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
- 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
- Victron Lithium Battery Smart — Operation (capacity vs temperature example)
- Victron SmartShunt — temperature capacity compensation note
- Trojan Battery — temperature effects FAQ
- CalculatorX Battery Runtime capability
- Evidence
- 5 legacy golden · 10 legacy boundary · legacy regression suite · 4/4 oracle-backed golden · 5/5 invalid · Artifact integrity PASS · CalculatorX electrical review
- Semantic contract
- PASS
Full verification
Formulas
Core equations used by this calculator.
How to use
Enter capacity, voltage, load
Same modes as Battery Runtime: watts = load-side P; amps = battery-side I (η unused).
Enter temperature
Cell/pack temperature in °C. Default model derates only below 25 °C.
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
0 °C with default k_T
Same pack · T=0 °C · k_T=0.006 · cold-only
50 °C — no bonus
Same pack · T=50 °C · default cold-only model
Battery-side amps
10 Ah · 2 A · DoD 0.8 · T=25 °C · η 0.9
Battery Runtime with Temperature specification
Version 1.2.1 · Engine tested · Supplemental domain review · Internal · 2026-08-12
- Engine tested 31/31 tests · Production surface contract 4/4
- Supplemental domain review Internal · Pass · electrical-engineer · 2026-08-12
- Named expert review Not performed
- Calculation version 1.2.1
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 simplificationSupports: 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 / lifeSupports: 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
- Victron Lithium Battery Smart — Operation (capacity vs temperature example) — Capacity vs temperature (product example)
- 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 °C → f_T = 0.85 → 5.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.
Related tools
Other calculators in this family: Battery Pack Sizing Calculator, Battery Runtime Calculator, Linear Battery Aging Calculator . Explore all Battery & Energy Storage.
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.