A computing device has an energy storage device system with multiple energy storage devices. Various different criteria are used to determine which one or more of the multiple energy storage devices to charge or discharge at any given time to provide power to the computing device. The criteria can include characteristics of the energy storage devices as well as hardware and/or physical characteristics of the computing device, characteristics of the energy storage devices and/or the computing device that change while the computing device operates, and predicted behavior or usage of the computing device. These criteria are evaluated during operation of the computing device, and the appropriate energy storage device(s) from which to draw power or to charge at any given time based on these criteria are determined.