Many Android users notice that the battery percentage jumps erratically, shows a lower capacity than expected, or reports a "full" charge after only a few hours of use. In most cases the underlying issue is not a faulty cell but stale battery statistics that Android keeps in its internal battery service. Those stats are used to estimate remaining capacity, predict charging time, and adjust power‑saving algorithms. When they become out‑of‑sync, the OS displays misleading numbers, which can lead to premature charging cycles or unnecessary anxiety.
adb command could affect apps that rely on battery‑related permissions.Settings → About phone.Build number seven times until you see "You are now a developer".Settings → System → Developer options (location may vary by OEM).USB debugging on.adb and works on Windows, macOS, and Linux.Android maintains several counters in the BatteryStats service:
/data/system/batterystats.bin) that only the system can write to. Resetting them does not delete the actual battery health data stored in the hardware; it merely clears the software’s historical view so that the next full charge cycle can rebuild a fresh profile.
Open a terminal (Command Prompt on Windows, Terminal on macOS/Linux) and run:
adb devices
You should see your device listed with the status device. If it shows unauthorized, check the phone for a prompt asking to allow USB debugging and tap Allow.
Run the following command to gain a shell with the same permissions that the OS uses for battery services:
adb shell
Now you are inside the device’s shell (you’ll see a # prompt).
Execute the built‑in service command:
dumpsys battery reset
This tells the battery service to clear its internal counters. You should see no output if the command succeeds.
Run:
stop batteryinfo
start batteryinfo
On most devices the batteryinfo service is part of system_server, so the above may return "service not found". That is fine – the reset already took effect.
Although not strictly required, a reboot ensures that all system components start with a clean slate.
adb reboot
Wait for the phone to power back on.
Resetting the stats does not magically improve the physical health of the cell. It simply gives the OS a fresh baseline. To let the new baseline become accurate you need to perform a controlled charge‑discharge cycle.
Battery HD) until it shuts down at 0 %.
adb shell dumpsys battery
Look for the line capacity=. It may still show a number like 95 % – that is the software’s estimate of the design capacity. If the number is dramatically lower than before, the reset helped.
The battery controller measures voltage, current, and temperature throughout a charge. When the stats are cleared, the controller has no historical reference for how long a full charge should take or how quickly the voltage drops under load. By providing a clean, uninterrupted charge from 0 % to 100 %, the controller can rebuild a reliable profile.
If you cannot use a computer, some OEMs expose a hidden menu to reset battery stats. The steps differ per manufacturer, but the general idea is:
*#*#4636#*#* to open the Testing menu (works on many stock Android builds).Because this hidden menu is not guaranteed to exist on newer Android versions, the ADB method remains the most reliable cross‑device approach.
adb devicesadb server: adb kill-server && adb start-server.dumpsys battery resetThe command must be executed from a privileged shell. If you only have a regular adb shell prompt (shown as $), try using adb root first. Note that adb root works only on userdebug or engineering builds, not on production devices. In that case, the dumpsys battery reset command still works without root because the system service accepts the request from any shell session.
Settings → Battery → Battery usage. A rogue app can cause rapid voltage changes that look like inaccurate readings.battery service is resetting can leave the stats file in a corrupted state, requiring a factory reset to fix.If after three full cycles the battery still reports a capacity under 80 % of the original design, the issue is likely hardware‑related. At that point you may:
Resetting Android battery statistics with ADB is a quick, no‑root fix for erratic charge readings. By following the controlled discharge‑charge routine, the system rebuilds a trustworthy capacity profile, often restoring a more realistic battery‑percentage display and improving power‑saving decisions. The process is safe, requires only a computer and a USB cable, and can be repeated whenever the stats drift again. Remember the safety warnings, verify the results with adb shell dumpsys battery, and consider hardware replacement only after multiple recalibration attempts.









