A defibrillator system and associated methodology for determining capacity of a battery and/or a number of battery cells contained in a pack. The system measures and stores the battery or battery pack voltage signal data and uses an algorithm to determine the remaining capacity. The algorithm takes into account the operating mode of the device, historical information of the device including, but not limited to, how long it has been since the device has been used, how the device has been used (e.g. shocking mode or idle mode), how many times the device has been used with its installed battery or battery pack, how many charging cycles and/or shocks have been delivered etc. The output from the system is fed back to the user to inform the user when the battery is low, needs to be replaced and/or how many remaining shocks are left the battery.