Arte SheetsLearn. Try. Understand.

Electrical & Energy Systems Engineering

Peukert Battery Discharge Runtime and Effective Capacity Formula

Calculate high-current battery discharge runtime t = H * (C_H / (I * H))^k and effective delivered amp-hours C_eff = I * t using the dimensionally balanced Peukert law.

Use the dimensionally balanced H-hour Peukert equation — not raw C / I^k!

Manufacturers rate battery capacity C_H (in Ah) at a specific reference discharge duration H (typically H = 20 hours for deep-cycle AGM/lead-acid or H = 5 hours for traction packs). Writing naive t = C_H / I^k ignores H and gives completely wrong answers even at the rated current I_nom = C_H / H! The exact dimensionally balanced Peukert equation is t_hrs = H * POWER(C_H / (I * H), k_peuk), delivering effective capacity C_eff = I * t_hrs.

Test a 100 Ah battery (B2) rated at H = 20 hours (B3, rated current 5.0 A) with Peukert exponent k = 1.20 (B4): at rated I = 5 A, C_H / (I * H) = 1.00 so t = 20.0000 hours (100.0000 Ah). Quadruple discharge load to I = 20 A (B5): naive C_H / I predicts 5.00 hours, whereas Peukert gives 20 * POWER(0.25, 1.20) = 3.7893 hours — only 75.7858 Ah of usable energy (-24.21% high-rate derating)!

Discharge Scenario (C_20 = 100 Ah)Peukert Runtime t_hrsEffective Capacity C_eff
Rated C/20 Load (I = 5 A, k = 1.20)20.0000 hours100.0000 Ah (100% Rated)
Heavy 4x Load (I = 20 A, k = 1.20)3.7893 hours (vs Naive 5.0 h)75.7858 Ah (-24.21% Loss)
Ideal LiFePO4 Limit (I = 20 A, k = 1.00)5.0000 hours100.0000 Ah (Zero Derating)

Dimensionally Balanced Peukert Runtime t_hrs = H * (C_H / (I * H))^k Formula

Validate C_H > 0, reference time H > 0, discharge current I > 0, and physical Peukert exponent k >= 1.0 before evaluating POWER.

=LET(c_nom, B2, h_ref, B3, k_pk, B4, i_cur, B5, IF(OR(c_nom <= 0, h_ref <= 0, k_pk < 1, i_cur <= 0), "Invalid Peukert Input", ROUND(h_ref * POWER(c_nom / (i_cur * h_ref), k_pk), 4)))

Effective High-Rate Delivered Capacity C_eff = I * t_hrs (Ah) Formula

Compute I * t_hrs unrounded inside LET so battery sizing sheets reflect exact usable amp-hours under inverter surge loads.

=LET(c_nom, B2, h_ref, B3, k_pk, B4, i_cur, B5, IF(OR(c_nom <= 0, h_ref <= 0, k_pk < 1, i_cur <= 0), "Invalid Peukert Input", ROUND(i_cur * h_ref * POWER(c_nom / (i_cur * h_ref), k_pk), 4)))

Try the example

Use the original values or change them to test your understanding.

Further reading