ESP32 Deep Sleep Battery Life Calculator
Estimate how long an ESP32 project can run from a battery using active current, sleep current, wake interval, active time, battery capacity, regulator efficiency and real-world derating.
Project Settings
Estimated Runtime
Battery Life Rating
Common ESP32 Current Draw Examples
| Mode / Board | Typical Current | Notes |
|---|---|---|
| ESP32 Wi-Fi Active | 80–240 mA | Wi-Fi connection and transmit spikes can be high. |
| ESP32 Deep Sleep Bare Module | ~10–150 µA | Depends heavily on board design. |
| ESP32 Dev Board Deep Sleep | 0.1–10 mA | USB chips, LEDs and regulators can waste power. |
| ESP32-CAM Active | 160–300 mA+ | Camera, Wi-Fi and flash LED increase power use. |
| Sensor Node | Varies | Sensors may consume more than the ESP32 if left powered. |
Arduino Deep Sleep Example
MicroPython Deep Sleep Example
How to Improve ESP32 Battery Life
Deep sleep is one of the best ways to make an ESP32 project run from a battery for days, weeks or even months. The basic idea is simple: keep the ESP32 awake only long enough to read sensors, send data and store results, then return to deep sleep as quickly as possible.
The biggest battery drain usually happens while Wi-Fi is active. If your project connects to Wi-Fi every time it wakes, reducing connection time can make a large difference. Fixed IP settings, fewer retries, local MQTT servers and shorter data payloads can all help reduce active time.
Development boards often consume more power than bare ESP32 modules because they include USB-to-serial chips, power LEDs and inefficient regulators. For serious battery projects, consider using a low-quiescent-current regulator, disabling onboard LEDs, and powering sensors only when needed.
For best results, measure your own board with a multimeter, USB power meter or low-current measurement tool. Real-world current draw can vary dramatically between ESP32 boards, sensors, regulators and battery types.
Understanding ESP32 Deep Sleep Battery Life
ESP32 deep sleep is useful when a project only needs to wake occasionally, take a reading, send data, and then switch off most of the chip again. Instead of keeping Wi-Fi, Bluetooth, sensors, and the processor running continuously, the ESP32 spends most of its time in a very low-power state.
This is ideal for battery-powered projects such as weather stations, soil moisture sensors, mailbox alerts, door sensors, remote data loggers, wildlife monitors, and outdoor IoT nodes.
Why Battery Life Estimates Vary
Battery life calculations are useful, but real-world results can be different because every board is slightly different. A bare ESP32 module can use very little current in deep sleep, while a development board may still draw extra power through the USB-to-serial chip, voltage regulator, power LED, battery charging circuit, or connected sensors.
For the most accurate result, measure your own project in both active mode and deep sleep mode. Even small differences in sleep current can make a big difference over weeks or months.
What Affects ESP32 Battery Life Most?
The biggest factors are:
- how long the ESP32 stays awake
- how often it wakes up
- whether Wi-Fi is used
- how much current sensors draw
- whether sensors are powered during sleep
- battery capacity and quality
- regulator efficiency
- temperature and battery age
Wi-Fi is often the largest power draw. A project that wakes for 2 seconds can last much longer than one that wakes for 20 seconds, even if both use the same sleep interval.
Practical Ways to Improve Runtime
Use shorter active periods whenever possible. Read sensors quickly, send only the data you need, and return to deep sleep immediately.
Power sensors from a GPIO pin or load switch so they are turned off during sleep. Many sensors use more current than expected when left permanently powered.
Remove or disable power LEDs on development boards where practical. A single LED can drain more current than the ESP32 uses in deep sleep.
Use a low-quiescent-current voltage regulator. Some cheap regulators waste too much power for long-term battery projects.
Avoid using a full ESP32 development board for finished outdoor sensors. A bare module or low-power ESP32 board is usually better for serious battery-powered builds.
Good Starting Targets
For a simple ESP32 sensor project, a good target is:
| Setting | Sensible Target |
|---|---|
| Active time | under 5 seconds |
| Wake interval | 5–60 minutes |
| Active current | 80–200 mA |
| Deep sleep current | under 0.5 mA on dev boards |
| Deep sleep current | under 100 µA on low-power builds |
| Battery life | several weeks to several months |
A development board drawing 2–5 mA during “sleep” may still work for short projects, but it is not ideal for long-term sensors.
Example Project Scenarios
Weather Sensor
A weather sensor might wake every 10 minutes, read temperature, humidity, and pressure, send the data over Wi-Fi, then return to sleep. The key optimisation is reducing Wi-Fi connection time.
Soil Moisture Monitor
A plant monitor may only need to wake every 30–60 minutes. This kind of project can achieve excellent battery life if the moisture sensor is not powered continuously.
Door or Mailbox Sensor
A door or mailbox sensor may spend nearly all its time asleep and only wake when triggered. These projects can run for a long time if the wake circuit is designed efficiently.
ESP32-CAM Project
ESP32-CAM projects usually consume much more power because the camera, Wi-Fi, SD card, and flash LED can all draw significant current. Larger batteries or solar charging are often needed.
Common Mistakes
One common mistake is assuming the ESP32 chip’s deep sleep current applies to the whole development board. In reality, the board may draw much more.
Another mistake is leaving sensors, voltage dividers, LEDs, or modules powered during sleep. These small loads can quietly drain the battery.
A third mistake is using long Wi-Fi connection attempts. If the router is unavailable, the ESP32 may stay awake far longer than expected unless the code includes a timeout.
Final Tip
Use the calculator as a planning tool, then test the real project with actual measurements. Once you know the active current, sleep current, and wake timing, you can make much better decisions about battery size, sleep interval, and whether solar charging is needed.
