UPS Runtime Calculator

How long will your UPS last? Peukert-corrected battery runtime with real efficiency losses.

Calculate accurate UPS battery runtime using the Peukert equation, depth of discharge, inverter efficiency and chemistry-specific constants. Supports SLA, AGM, Gel, LiFePO4 and NMC batteries. 100% client-side — nothing is uploaded. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

What is the Peukert equation and why does it matter?

The Peukert equation (1897) describes how battery capacity decreases as discharge rate increases. At light loads a 100 Ah battery may deliver close to 100 Ah; at heavy loads it might only deliver 70 Ah. The formula is t = (C / I) × (C / (I × H))^(k−1), where C is rated capacity, I is discharge current, H is the rated hour and k is the Peukert exponent (1.0 = ideal; real lead-acid batteries are 1.2–1.4). At the rated discharge rate (I = C/H) this correctly returns exactly H hours, verifying the formula. Ignoring Peukert gives runtime estimates that are 15–40% too optimistic for high loads.

A UPS runtime calculator that gives you a realistic answer to the critical question: “if the power goes out right now, how long do my servers, network gear and equipment actually stay on?” It uses the Peukert equation — the industry-standard model for non-linear battery capacity loss — combined with chemistry-specific depth-of-discharge limits and real inverter efficiency figures, so you get a credible estimate instead of the over-optimistic numbers that naive Wh ÷ W arithmetic produces.

How it works

The calculation proceeds through five steps. Start with your connected load in watts. The first step converts that to DC power drawn from the battery bank by dividing through two efficiency factors: the UPS inverter topology efficiency (88–94% depending on whether you have a standby, line-interactive or online double-conversion unit) and the battery’s own round-trip efficiency (80–95% depending on chemistry). This gives the real watts the battery must supply.

The second step divides that DC power by the battery bank voltage to get the discharge current in amperes. The third — and most important — step feeds that current into the Peukert equation:

t = (C / I) × (C / (I × H))^(k − 1)

where C is the total bank capacity in Ah, I is the discharge current, H is the rated hour (typically C20 = 20 h), and k is the Peukert exponent. This exponent is the key parameter: for an ideal battery k = 1.0 (no losses); for a flooded lead-acid or VRLA k ≈ 1.35; for a high-quality LiFePO₄ cell k ≈ 1.05. A higher exponent means heavier penalties at high discharge rates.

The fourth step limits the result to the recommended depth of discharge for your chemistry — SLA/VRLA batteries should only be discharged to 50% of capacity to achieve a reasonable cycle life, while LiFePO₄ cells tolerate 80%. Finally, a configurable safety margin (default 20%) is subtracted to account for battery ageing, temperature derating and measurement error.

Worked example

A small server room has a 500 W load — one 1U rack server and a managed switch — backed by a 48 V, 100 Ah AGM battery bank on a line-interactive UPS (92% inverter efficiency, 82% battery efficiency).

  1. DC power = 500 / (0.92 × 0.82) = 662 W
  2. Discharge current = 662 / 48 = 13.8 A
  3. Peukert runtime (k = 1.30, C20, 100 Ah): t = (100 / 13.8) × (100 / (13.8 × 20))^0.30 = 5.34 h
  4. Apply 50% DoD → 2.67 h usable
  5. Apply 20% safety margin → ~2 h 8 min displayed

A naive calculation (usable Wh ÷ load W) gives (48 × 100 × 0.5) / 662 = 3.62 h — 35% higher than the Peukert-corrected answer. At heavier loads the gap grows further because Peukert’s exponent amplifies with current.

Load (W)Bank (48 V · Ah)ChemistryEstimated runtime
30048 V · 50 AhAGM~1 h 41 min
50048 V · 100 AhAGM~2 h 8 min
1,00048 V · 200 AhLiFePO4~5 h 16 min
2,00048 V · 100 AhLiFePO4~1 h 14 min

Every figure is calculated entirely in your browser — no data is sent anywhere.