A smart battery that predicts whether or not a battery can provide a requested amount of additional power based on battery-specific capacity, self-discharge, and discharge characteristics. A non-volatile memory stores the battery-specific characteristics which are functions of the environmental conditions of the battery and/or the battery current. One circuit measures the environmental conditions of the battery, such as temperature. Another circuit measures the battery current (charge or discharge). In response to a request, the smart battery determines whether or not the additional power can be provided based on the present battery capacity, the present discharge rate of the battery, the environmental conditions of the battery, and the battery characteristics. A user or power management system can use such power availability information to tune the power consumption and performance of an electronic system powered by the battery.