How is the State-of-Charge (SoC) determined?

The amount of usable energy in a battery is expressed as state-of-charge, or SoC for short.

The value ranges from 0 – 100% where 0% means that the battery is fully discharged and 100% means that the battery is fully charged and, depending on the BMS type, also completely balanced.

SoC measurement methods

There are several methods for measuring and calculating the SoC:

Based on battery voltage


  • Simple method of measurement


  • Only works when the battery is at rest
  • Does not work well with LiFePO4 as this technology has almost the same voltage between 40% and 80% SoC.

Based on measuring the chemical balance


  • Accurate


  • Invasive method requiring the cell to be opened up
  • Difficult to apply

Measuring the current going into or out of the battery pack

This method is called coulomb counting. It essentially is the itegration of the measured currents over time. For example, if the system measures a discharge current of 2A for 4 hours, you have a total discharge of 2A x 4h = 8Ah.


  • When the current meter is accurate, the SoC is also fairly accurate
  • Non-invasive so easy to measure


  • Only works if the current measurement is accurate
  • When the SoC is not synchroniszed frequently by the BMS, the SoC may not be accurate anymore

Accurate results

Without an invasive method, the SoC cannot be determined directly under many circumstances. To still get reliable results, several methods must be combined, along with high-quality measuring equipment.

The 123\SmartBMS does this by using dual-range current sensors. This means that small currents in the range of mA’s can be measured up to very high currents like 500A. In addition, the BMS synchronizes the SoC at multiple voltages when the battery is at rest.

Useful information: as long as not all cells are over the full threshold, the battery is not properly balanced yet. The SoC will stay maximum at 99%. When all cell voltages are over the full threshold and when the charging power is low, the battery is fully charged and balanced, and the SoC will be synced to 100%.

Of course, do not forget to do the one-time calibration procedure for the current sensors after the installation. This ensures the most accurate current sensing result. See the 123\SmartBMS manual how to calibrate the current sensor.