Calculator overview
Inputs and outputs
This summary comes from the calculator's published input and output contract.
Inputs
- One Row Per Appliance Type Leave Unused Rows At Zero
-
Default 10 rows
About this input
One row per appliance type: its power draw, quantity, hours of use per day and whether it runs at the same time as others. The tool sums these into a daily energy demand and a peak simultaneous load, and leaves rows set to zero out of the total.
Column Range or allowed values Appliance Not declared Power, W At least 0 Hours/day 0 to 24 Quantity At least 0 - Minimum Battery Temperature
-
Unit deg C Default 10 Range -20 to 40
About this input
The coldest temperature the bank is expected to reach in service, in degrees Celsius. Capacity falls in the cold, so a lower value increases the bank size. Set it to 25 to remove the temperature derate.
- Inverter Efficiency
-
Unit fraction Default 0.92 Range 0 to 1
About this input
The efficiency of the inverter that converts battery power to alternating current, as a fraction between 0 and 1. A lower value raises the energy the bank must store.
- Peak Sun Hours
-
Unit h/day Default 4.5 Range 0 to 24
About this input
The daily equivalent hours of full-sun irradiance at the site, in hours per day, used to size the recommended array. It is illustrative; take the real figure for your location from an irradiance source.
- System Voltage
-
Default 48 V Allowed 12 V, 24 V, 48 V
About this input
The nominal direct-current bus voltage of the battery bank, such as 12, 24 or 48 volts. It sets how many modules go in series in each string.
- Round Trip Efficiency Override
-
Unit fraction Default Not set Range 0 to 1
About this input
Optional override for the battery round-trip efficiency, as a fraction between 0 and 1. Leave it blank to use the chemistry value. Setting it to 1 together with a 25 degree temperature collapses the model to the common formula most free calculators use.
- Pv Array Derate
-
Unit fraction Default 0.8 Range 0 to 1
About this input
The combined derate applied to the photovoltaic array for soiling, wiring, temperature and other real-world losses, as a fraction between 0 and 1. Values around 0.75 to 0.8 are common; confirm against your own loss estimate.
- Charge Path Efficiency
-
Unit fraction Default 0.97 Range 0 to 1
About this input
The efficiency of the charge path from array to stored energy, as a fraction between 0 and 1, covering charge controller and battery charging losses.
- Battery Module
-
Default 12 V 100 Ah Allowed 12 V 100 Ah, 12 V 200 Ah, 24 V 100 Ah, 48 V 100 Ah, 2 V 1000 Ah cell, Custom (type the values below)
About this input
Selects the battery module used to build the bank, either a preset module or the custom module defined by the voltage and capacity above.
- Battery Chemistry
-
Default Lithium iron phosphate (LiFePO4) Allowed Lead-acid, flooded, Lead-acid, AGM, Lead-acid, gel, Lithium iron phosphate (LiFePO4), Lithium NMC
About this input
Selects the battery chemistry, such as flooded lead-acid, sealed lead-acid or lithium iron phosphate. It sets the recommended depth of discharge and the cycle life used.
- Custom Module Capacity Conditional
-
Unit Ah Default 100 Range At least 0
About this input
The rated capacity of a single battery module, in amp-hours, used when you select a custom module rather than a preset.
- Depth Of Discharge Override
-
Unit fraction Default Not set Range 0 to 1
About this input
Optional override for the usable depth of discharge, as a fraction between 0 and 1. Leave it blank to use the value the selected chemistry implies; enter a figure only when your battery datasheet states one.
- Days Of Autonomy
-
Unit days Default 2 Range At least 1
About this input
The number of days the bank must supply the load with no charging, in days, sizing the reserve for cloudy weather or an outage.
- Custom Module Voltage Conditional
-
Unit V Default 12 Range At least 0
About this input
The nominal voltage of a single battery module, in volts, used when you select a custom module rather than a preset.
Outputs
- Recommended Pv Array
-
Unit W
About this output
The photovoltaic array size suggested to recharge the daily draw, in watts. It is sized from the energy the bank must RECEIVE, so the round-trip efficiency divides alongside the charge path efficiency, peak sun hours and array derate, and the figure therefore varies with the battery chemistry. An estimate; size the array against site data.
- Required Bank Capacity
-
Unit Ah
About this output
The nominal capacity the bank must have at the system voltage, in amp-hours, before rounding up to whole modules.
- Peak Simultaneous Load
-
Unit W
About this output
The largest instantaneous load, in watts, from the appliances that can run at the same time. It sizes the inverter and the discharge current.
- Model Status
-
No unit declared
About this output
The overall check on your entries, shown above the results. It reads OK when the inputs are usable, NOT VALID with a reason when an entry makes the model meaningless, or CHECK with a reason when a result is valid but worth a second look. Read it before you trust the numbers below.
- Parallel Strings
-
Unit count
About this output
The number of parallel strings needed to reach the required capacity.
- Total Batteries Required
-
Unit count
About this output
The total number of modules in the bank: modules in series times the number of parallel strings.
- Usable Depth Of Discharge
-
Unit fraction
About this output
The fraction of nominal capacity that may be used each cycle, between 0 and 1, from the selected chemistry. Discharging deeper than this shortens life.
- Temperature Derate Factor
-
Unit factor
About this output
The factor applied to rated capacity for the minimum temperature, as a multiplier. It is below 1 in the cold and equals 1 at 25 degrees Celsius, where this model reduces to the common formula.
- Required Nominal Bank Capacity
-
Unit kWh
About this output
The nominal stored energy the bank must have, in kilowatt-hours, before rounding up to whole modules.
- Roundtrip Efficiency
-
Unit fraction
About this output
The fraction of energy returned after a charge and discharge, between 0 and 1. This sizing includes it, so results run larger than a common formula that ignores it; set the override to 1 to match that formula.
- Minimum Charge Controller Current
-
Unit A
About this output
The minimum charge controller current rating, in amperes, to handle the recommended array at the system voltage.
- Daily Ac Energy Demand
-
Unit Wh/day
About this output
The total alternating-current energy the loads consume in a day, in watt-hours per day, before inverter and battery losses.
- Daily Energy Drawn From The Bank
-
Unit Wh/day
About this output
The direct-current energy the bank must supply each day, in watt-hours per day, after the inverter efficiency is applied to the alternating-current demand.
- Batteries In Series
-
Unit count
About this output
The number of modules connected in series in each string to reach the system voltage.
- Autonomy Actually Achieved
-
Unit days
About this output
The number of days the built bank can carry the load with no charging, in days. It equals or exceeds the days of autonomy requested because modules are rounded up.
- Average Daily Depth Of Discharge
-
Unit fraction
About this output
The share of the bank cycled on an average day, as a fraction between 0 and 1. A lower value across the bank generally means longer life.
- Installed Nominal Energy
-
Unit kWh
About this output
The nominal energy of the built bank, in kilowatt-hours: installed capacity times system voltage.
- Installed Usable Energy
-
Unit kWh
About this output
The energy the built bank can deliver, in kilowatt-hours, after the usable depth of discharge is applied.
- Installed Bank Capacity
-
Unit Ah
About this output
The actual capacity of the built bank, in amp-hours, at the system voltage after rounding up to whole modules.
- Energy Required Over The Autonomy Period
-
Unit Wh
About this output
The total energy the bank must hold to carry the load through the autonomy period, in watt-hours, after depth of discharge, round-trip and temperature effects.
- Indicative Bank Life At One Cycle Per Day
-
Unit years
About this output
A rough service life at one cycle per day, in years, from the chemistry's cycle life at the average depth of discharge. It is indicative only and ignores calendar ageing and temperature history.
What it is
The Battery Sizing Calculator specifies an off-grid or backup battery bank from the loads it has to carry. You list the appliances with their power, run hours and quantity, choose the system voltage, chemistry and module, set the days of autonomy you want, and it returns the bank capacity required, how many modules that means in series and parallel, what the resulting bank actually delivers, and the PV array and charge controller to keep it charged.
Energy is in watt-hours, capacity in amp-hours, power in watts and temperature in degrees Celsius.
Use it to specify a bank and to see how the losses and derates stack up. The chemistry defaults it applies for depth of discharge and round-trip efficiency are typical values, and both can be overridden.
Methodology
Purpose and model boundary
This model turns an appliance load audit into an indicative off-grid battery-bank arrangement, usable and nominal energy requirements, a PV-array recommendation, and a minimum charge-controller current. It accounts for inverter loss, chemistry-specific depth of discharge and round-trip efficiency, temperature derating, and the integer series/parallel arrangement of the selected module.
It does not design cables, busbars, over-current protection, disconnects, battery management, ventilation, grounding, enclosure heating, generator support, or a code-compliant installation. Manufacturer data and a qualified electrical designer remain necessary.
Inputs and units
Each active load row supplies appliance power in watts, daily run hours, and quantity. Bank assumptions include chemistry, module voltage and amp-hour capacity, system voltage, days of autonomy, inverter efficiency, and minimum battery temperature in deg C. A custom module exposes its voltage and capacity fields. Blank depth-of-discharge or round-trip-efficiency overrides use the selected chemistry's lookup value; a numeric override replaces it.
Charging assumptions are peak sun hours in h/day, charge-path efficiency, and PV-array derate. Efficiencies and depth of discharge are fractions from zero to one. The system-voltage list contains 12, 24, and 48 V; module and chemistry lists contain workbook-owned illustrative choices.
Governing relationships
For appliance row i:
daily Wh_i = power_i x hours_i x quantity_i
and the daily AC demand is the sum of those rows. Peak simultaneous load sums power x quantity for rows whose run hours are greater than zero.
Daily energy drawn from the bank is
E_bank = daily AC Wh / inverter efficiency.
For N autonomy days, usable energy required is E_bank x N. The required nominal energy is
E_nominal = E_bank x N / (DoD x temperature factor x round-trip efficiency)
and required bank amp-hours are E_nominal / system voltage.
The physical arrangement always rounds up:
modules in series = CEILING(system voltage / module voltage);parallel strings = CEILING(required Ah / module Ah);total modules = series x parallel.
Installed bank capacity is parallel strings x module Ah. Installed nominal energy is installed Ah x series x module voltage; installed usable energy multiplies nominal energy by depth of discharge, temperature factor, and round-trip efficiency. Autonomy achieved divides installed usable energy by daily bank energy.
The charging recommendation is
PV watts = E_bank / (charge-path efficiency x peak sun hours x PV derate)
and minimum controller current is PV watts / system voltage x 1.25. Indicative life at one full cycle per day is the chemistry lookup cycle count divided by 365.
Calculation sequence
- Resolve chemistry, module, and system-voltage lookups; apply custom module values and any nonblank performance overrides.
- Select a temperature capacity factor from the chemistry-specific step table.
- Calculate each row's daily energy and coincident watts, then total the load audit.
- Apply inverter, autonomy, depth-of-discharge, temperature, and round-trip factors to obtain nominal kWh and Ah.
- Round series and parallel counts upward and recalculate installed capacity, usable energy, achieved autonomy, and daily depth of discharge from the installed bank.
- Calculate PV-array and charge-controller recommendations when all charging inputs are positive.
- Evaluate
Model_Statususing the exact precedence below.
Outputs and interpretation
Primary outputs are required bank capacity in Ah, required nominal energy in kWh, and recommended PV-array watts. Series count, parallel strings, and total batteries describe the selected module arrangement. Installed values reflect integer rounding and can exceed the mathematical minimum. Achieved autonomy and average daily depth of discharge help reveal that oversizing.
The chemistry's depth of discharge, efficiency, cycle life, and temperature factors are estimation values, not a warranty or manufacturer curve.
Validation and status logic
The workbook returns the first matching status.
| Condition | Returned status |
|---|---|
| Daily AC energy demand is less than or equal to zero | NOT VALID: enter at least one load in the grid |
| Selected or custom module voltage is less than or equal to zero | NOT VALID: module voltage must be greater than zero |
| Selected or custom module capacity is less than or equal to zero | NOT VALID: module capacity must be greater than zero |
| Usable depth of discharge is less than or equal to zero | NOT VALID: depth of discharge must be greater than zero |
| Round-trip efficiency is less than or equal to zero | NOT VALID: round-trip efficiency must be greater than zero |
| Inverter efficiency is less than or equal to zero | NOT VALID: inverter efficiency must be greater than zero |
| System voltage is below module voltage | NOT VALID: system voltage is below the module voltage |
| Temperature derate factor is below 0.75 | CHECK: cold derate below 0.75; a heated enclosure may be cheaper than extra batteries |
| Achieved autonomy exceeds requested autonomy by more than 50% | CHECK: rounding up has oversized the bank by more than 50%; a different module size may fit better |
| Peak sun hours, charge-path efficiency, or PV derate is less than or equal to zero | CHECK: a charging input is zero; the PV array recommendation is not computed |
| None of the preceding conditions applies | OK |
Assumptions and limitations
The workbook assumes each listed load's wattage, run hours, and quantity describe a representative day. It does not model hourly coincidence, surge duration, inverter clipping, starting-current compatibility, battery C-rate, Peukert effects, self-discharge, calendar ageing, partial cycling, charge-temperature restrictions, or reserve for abnormal weather.
Chemistry and temperature tables are explicitly illustrative. Temperature lookup is a step match rather than interpolation; temperatures below the first row clamp to its factor. The bank may not land exactly on nominal system voltage when a module voltage does not divide it; the model rounds series count upward and separately warns only when system voltage is below one module. A real series string and equipment voltage window must be checked against manufacturer specifications.
The PV result is an energy-balance estimate. It does not model irradiance shape, shading, array orientation, controller topology, battery charge acceptance, seasonal solar resource, or generator operation.
Restrictions and non-computing states
At least one load row must produce positive daily energy. Module voltage, module capacity, usable depth of discharge, round-trip efficiency, and inverter efficiency must be positive for a valid bank result. Days of autonomy has a published minimum of one. Fraction inputs are limited to zero through one. If a charging denominator is zero, the bank still computes but PV sizing is intentionally withheld with a CHECK.
Errors and warnings
NOT VALID means the workbook cannot form a meaningful bank arrangement. CHECK preserves computable results while flagging severe cold derating, coarse module rounding, or missing charging assumptions. An entry with the wrong type or a value outside the published limits is rejected before calculation. A calculation-service or network failure is a service error, not the workbook's Model_Status.
References
The workbook derives its relations rather than reproducing any table, chart or figure from a standard or publication. The energy chain, the series and parallel arithmetic and the derates are computed directly, with chemistry defaults from an editable table.
- National Renewable Energy Laboratory. Annual Technology Baseline: Residential Battery Storage, for usable energy, duration and system assumptions. https://atb.nrel.gov/electricity/2021/residential_battery_storage
- Wikipedia. Depth of discharge. https://en.wikipedia.org/wiki/Depth_of_discharge
- Wikipedia. Peukert's law, the discharge-rate effect this tool does not apply. https://en.wikipedia.org/wiki/Peukert%27s_law
- Wikipedia. Stand-alone power system. https://en.wikipedia.org/wiki/Stand-alone_power_system
Chemistry defaults for depth of discharge and round-trip efficiency are typical published values and carry no authority; manufacturer figures for the specific cells should be used where available. Electrical installation is governed by the wiring code adopted where the work is built, none of which is addressed here.
Additional source notes migrated from Methodology
The workbook's References sheet records the appliance energy sum, the common autonomy/DoD/inverter sizing relationship, the added round-trip and temperature derates, integer series/parallel sizing, and the 1.25 controller-current margin. The Data sheet identifies chemistry and temperature figures as illustrative and instructs users to substitute manufacturer data where available.
Frequently asked questions
Why is the required bank so much larger than my daily energy use?
Why does the chemistry change the answer so much?
I asked for 2 days of autonomy and got 2.64. Why?
Does this account for batteries delivering less at high discharge rates?
Why does the minimum temperature matter rather than the average?
Is the recommended PV array enough all year?
Found a problem, or have an idea?
Tell us if a result looks wrong, a label is unclear, or something is missing. We read every message.
LogicCommons is in beta. If a result, label, or reference looks wrong, tell us here; we read every message.