Battery charge time calculator
Calculates charge time with a phase model instead of a rule of thumb: “100 Ah, 20 A → 5 hours” is unrealistic for lead — the absorption phase charges the last 20 % at falling current; 5.6 instead of 4.2 h in the example. In solar mode charging follows your location’s daily profile in your modules’ tilt AND orientation, and for an outdoor battery the site monthly mean applies — only then can the LiFePO4 charge cut-off below 5 °C warn at all (Berlin in January: 0.6 °C).
The formulas behind the calculator
Every number above can be recomputed: the full calculation path, all assumptions and the data source with retrieval date — plus cross-validation against independent references. Disclosed, not claimed.
An estimate based on the stated assumptions. The final design must be checked by a qualified professional against the rules that apply where you are.
Data as of: 2026-07-30
| Step | Formula | Value | Provenance |
|---|---|---|---|
| Rule of thumb (constant current only) | C*(SoC_ziel-SoC_start)/(I*eta) | 4.2105 h | exact |
| Bulk phase | C*(SoC_umschalt-SoC_start)/(I*eta) | 3.1579 h | exact |
| Absorption phase | t_abs = tau*ln(I_bulk/I_schluss) | 2.4238 h | assumed |
| Energy charged | C*U*(SoC_ziel-SoC_start) | 960 Wh | exact |
- Formula
t_bulk = C·(SoC_sw−SoC_0)/(I·η) · t_abs = τ·ln(I_bulk/I_tail) · solar: SoC(t) from the TMY mean daily profile- Valid for
- Phase model from data/batteries/charging.json (Victron, Trojan, Panasonic; retrieved 2026-08-03); a golden test keeps engine and dataset in sync. In solar mode charging follows the TMY mean-day profile of the chosen month in the plane of the configured modules (tilt AND orientation), calibrated to the climate mean. For outdoor installation the battery temperature is the site monthly mean — only then can the chemistry-dependent charge cut-off take effect at all (LiFePO4 below 5 °C, NMC below 10 °C).
- Not covered
- Active battery heating, temperature dependence of charge efficiency, cell balancing at end of charge, charging from several sources at once, shading of the module during the day, cloud gaps (the 30 percent scenario is a named simplification, not a weather series).
- Data sources
- Manufacturer datasheets (Victron, Fronius, BYD) and IEC 61427-1, aggregated · retrieved 2026-06-15
- JRC Photovoltaic Geographical Information System (PVGIS), European Commission — endpoints tmy, MRcalc, printhorizon · PVGIS API v5_3, solar radiation database PVGIS-SARAH3 · retrieved 2026-07-30
Frequently asked questions
Why does charging take longer than “capacity divided by current”?
Because only the bulk phase charges at full current. From the switch point (typically 80%) the charger holds the voltage and current falls exponentially — the absorption phase. In the example (AGM 100 Ah, 20 A, 20→100%) the rule of thumb says 4.2 hours; in reality it is 5.6 hours, 2.4 of which are absorption. Simple calculators omit exactly this phase.
Why does LiFePO4 finish so much faster than lead?
Not because of the bulk current — that is the same with the same charger — but because of the absorption phase: LiFePO4 needs a fixed 2 hours per the Victron datasheet (at 14.2 V), and the cell accepts nearly full current until shortly before the end. A lead battery tapers exponentially instead. Additionally, lead should not exceed 0.2C of charge current (20 A per 100 Ah) — LiFePO4 tolerates far more per datasheet.
Where do the charging parameters per chemistry come from?
From reference-manufacturer datasheets stored in the batteries/charging.json dataset with source and retrieval date: Victron for LiFePO4 (14.2 V, 2 h absorption, charging only above +5 °C), AGM (14.2–14.6 V, max. 0.2C) and gel (14.1–14.4 V), Trojan for flooded batteries (14.8 V, equalize 16.2 V), Panasonic NCR18650B for NMC cells (CC-CV 4.2 V, cutoff at 4% of charge current). Other manufacturers differ — the datasheet of your battery remains authoritative.
What does solar mode calculate differently?
It replaces the constant charge current with the site’s daily curve: the climate-calibrated mean daily profile of the selected month from the same PVGIS hourly series the yield calculators use. The answer is a clock time (“start 9:00 → full at 15:20”) instead of an abstract number of hours — and the 30% case shows what an overcast day does to it. If the daily yield is insufficient, the calculator warns explicitly.
Why does the battery count as “full” at a small residual current?
Because the CV phase tapers asymptotically: current approaches zero without ever reaching it. End of charge is therefore a current threshold — typically 1–4% of capacity (adjustable under “advanced assumptions”); for NMC cells Panasonic specifies 65 mA at 1,625 mA charge current, i.e. 4%. A tighter threshold extends absorption time considerably while adding hardly any capacity.
What does the temperature warning mean when charging?
Two manufacturer limits: LiFePO4 may only be charged between +5 and +50 °C per Victron, NMC cells between +10 and +45 °C per Panasonic — below that, lithium plating looms, an irreversible damage. Lead may be charged cold but then needs a higher charge voltage (temperature compensation, −24 mV/°C per 12 V block at Victron); charging gets slower, not dangerous.
Where does the battery temperature come from?
If the battery sits outdoors or in a vehicle, from the monthly mean at your location — in January in Berlin that is 0.6 °C. If it sits in a heated house it remains your entry, because the site value would simply be wrong there. Previously a fixed 20 °C was used, regardless of month and place.
Why is this more than a precision question?
Because the charge cut-off depends on it. LiFePO4 must not be charged below 5 °C, NMC not below 10 °C — otherwise lithium plating causes irreversible damage. With a fixed 20 °C this warning could never appear, at any location or in any month. Outdoors in January it now does, and there it is the most important sentence on the page.
Why the monthly mean and not the temperature of sunlit hours?
Because a battery cools down overnight and is charged in the morning — it has the temperature of its surroundings, not of the midday peak. That distinguishes it from a module, where the temperature during generation counts because that is when it heats up. The two calculators therefore deliberately average the same data series differently.
Can I set the orientation in solar mode?
Yes, since 5 August 2026. Previously tilt was adjustable but orientation was not — it was fixed to south in the calculation core, even though vehicles and balconies are rarely mounted facing south. In January in Berlin the same 400 Wp deliver 193 Wh per day facing east instead of 322 facing south.
Why does charging take so much longer in January?
Because the daily yield does not cover the charge requirement. In the reference case the battery needs 1,011 Wh while the array delivers only 322 Wh per day in January — charging stretches over several days, 73.8 hours in the example. The calculator states this as its own warning instead of printing a time of day that does not exist on that day.