How to use the battery life calculator
- Pick a battery preset or type your own capacity (mAh, Ah or Wh) and nominal voltage. Presets are typical values — the label on your battery is better.
- Set the usable capacity. 80 % is a sensible default: cut-off voltage, temperature, age and high currents all reduce what you really get.
- Choose how you know the load:
- Current — the average current your circuit draws (measure it with a multimeter in series).
- Power — the load's power in watts, plus the efficiency of the regulator between the battery and the load.
- Duty cycle — for circuits that wake up, do some work and go back to sleep (ESP32 deep sleep, data loggers, remote sensors).
- Read the runtime, average current, C-rate and charge used per day. Red and yellow notes warn when the current is too high for the battery type.
Formula
The C-rate is the current divided by the capacity: 500 mA from a 2500 mAh pack is 0.2 C. The higher the C-rate, the less of the rated capacity you actually get.
Typical battery capacities and safe currents
| Battery | Nominal voltage | Typical capacity | Comfortable current |
|---|---|---|---|
| AA alkaline | 1.5 V | ~2000–2800 mAh at low current | up to ~100 mA; much less capacity above that |
| 4 × AA holder | 6 V | same as one AA | small gear motors, with reduced runtime |
| 9 V PP3 alkaline | 9 V | ~400–600 mAh | tens of mA — not for motors |
| 18650 Li-ion | 3.7 V | 2000–3500 mAh | 1–2 C for standard cells; more for high-drain cells |
| 1S LiPo pouch | 3.7 V | as labelled | check the C rating |
| CR2032 coin cell | 3 V | ~220 mAh | about 3 mA continuous, short pulses up to ~10–15 mA |
These are typical figures for planning. Always check the datasheet of the exact battery you use.
Typical currents to start with
| Load | Typical current |
|---|---|
| Arduino Uno board, idle | about 40–50 mA |
| ESP32 board with Wi-Fi on | about 80–250 mA, with short peaks |
| ESP32 chip in deep sleep | about 10 µA (dev boards draw far more) |
| Small BO gear motor, running | about 100–200 mA each |
| HC-SR04 ultrasonic sensor | about 15 mA |
| Standard LED | 10–20 mA |
Common mistakes
- Using the chip's sleep current for a whole dev board. An ESP32 chip sleeps at about 10 µA, but a dev board's USB-serial chip, power LED and regulator can draw around 1 mA or more. At 1 mA sleep, the sensor above lasts about 55 days instead of 153.
- Forgetting the regulator. A linear regulator (like the 7805 or an LM317) wastes the voltage difference as heat — use the Power mode with the right efficiency, or see the LM317 calculator.
- Mixing mAh across voltages. 2500 mAh at 7.4 V is twice the energy of 2500 mAh at 3.7 V. Compare batteries in Wh when the voltages differ.
- Ignoring motor peaks. Motors draw several times their running current when starting or stalled. Use the average for runtime, but size the battery for the peaks.
Related tools and guides
Thin wires also waste battery power — check them with the wire gauge and voltage drop calculator. Choosing between 18650, LiPo and AA packs? Read the robot battery guide and the L298N robot car guide. Ready to build? Browse our robotics kits.





