Checking battery health and capacity accurately [Full Guide]

Hey everyone,

I wanted to share my go-to method for getting a real, raw look at my android battery’s health using ADB. While many guides assume you have a PC handy, I’ll also cover how you can run these commands directly on your device using Shizuku and LADB. This way, you’re never stuck if you’re on the go.

First of all let me be clear many android devices don't expose the correct battery data

Method 1: Using a PC with ADB

If you have a PC or laptop follow this method otherwise method 2 is for you.

Connect your android device

  • Go to Settings > Developer options on your device
  • Enable USB Debugging
  • Connect your device to PC using USB cable

if you are asked to for any permission on your android device click allow (you can google for detailed guide on how to connect)

Dump the battery data

Open CMD or whatever terminal you prefer and run the following command

adb shell dumpsys battery

Here you will see various details about your android device's battery

Status:

Important: Make sure the Status field is not equal to 1. If it is 1, it indicates that there are issues with reading the battery info. Only continue if Status ≠ 1.

mSavedBatteryAsoc:

This value shows the percentage of the battery’s original capacity that remains. For instance, if it’s near 100%, your battery is still holding its maximum charge, though slight variances are normal over time.

Charge Counter:

The first four digits of the "charge counter" represent the current battery capacity in mAh for the present battery level.

Example:

On my phone, the charge counter was 1410381 when the battery was at 42%.

Calculation:

1410 ÷ 42% ≈ 3357 mAh

This means that at 42%, the battery is showing approximately 3357 mAh, suggesting that the full charge capacity is around 3500 mAh. In my case, this indicates that my battery has lost about 5% of its capacity over 2.5 years of heavy use—even though I take excellent care of it!

mSavedBatteryUsage:

The first four digits of this value give you an idea of the charging cycle count. Although not as precise as dedicated hardware counters, it provides a rough estimate of how many full charges your battery has undergone.

A Word on Calibration

For accurate results, calibrate your battery using a full discharge/charge cycle. Without proper calibration, the numbers might be off. Also, I don’t recommend using *#0228# for this purpose—it can be risky and isn’t always reliable.


Method 2: No PC? Use Shizuku and LADB

If you don’t have access to a PC, you can still run these ADB commands directly on your device using Shizuku and LADB (Local ADB Shell).

What You Need:

Shizuku: An app that grants ADB-level permissions without needing root.

LADB (Local ADB Shell): An app that allows you to run ADB commands locally on your phone.

Steps to Get Started:

Here are the steps to get started

1. Install Shizuku:

Download Shizuku from the Play Store.

Follow the in-app instructions to grant it the required ADB permissions. (You might need a one-time PC connection to set it up; after that, you can work entirely on your phone.)

2. Install LADB:

Download LADB from the Play Store. It's paid but you can download it free from many websites

Alternatively you can use other free apps such as aShell

Open LADB; it should detect that Shizuku is running. Grant the necessary permissions.

3. Run Your Commands:

In LADB’s shell, type:

adb dumpsys dumpsys battery

To check specific details, use:

cat /sys/class/power_supply/battery/charge_full

cat /sys/class/power_supply/battery/cycle_count

This way, you get the same raw battery info—capacity, cycle count, and more—directly on your device without needing a PC.


Hope this guide helps you get a clear picture of your battery’s health. Have any additional tips or questions? Let’s discuss in the comments!

Hey everyone,

I wanted to share my go-to method for getting a real, raw look at my android battery’s health using ADB. While many guides assume you have a PC handy, I’ll also cover how you can run these commands directly on your device using Shizuku and LADB. This way, you’re never stuck if you’re on the go.

First of all let me be clear many android devices don't expose the correct battery data

Method 1: Using a PC with ADB

If you have a PC or laptop follow this method otherwise method 2 is for you.

Connect your android device

  • Go to Settings > Developer options on your device
  • Enable USB Debugging
  • Connect your device to PC using USB cable

if you are asked to for any permission on your android device click allow (you can google for detailed guide on how to connect)

Dump the battery data

Open CMD or whatever terminal you prefer and run the following command

adb shell dumpsys battery

Here you will see various details about your android device's battery

Status:

Important: Make sure the Status field is not equal to 1. If it is 1, it indicates that there are issues with reading the battery info. Only continue if Status ≠ 1.

mSavedBatteryAsoc:

This value shows the percentage of the battery’s original capacity that remains. For instance, if it’s near 100%, your battery is still holding its maximum charge, though slight variances are normal over time.

Charge Counter:

The first four digits of the "charge counter" represent the current battery capacity in mAh for the present battery level.

Example:

On my phone, the charge counter was 1410381 when the battery was at 42%.

Calculation:

1410 ÷ 42% ≈ 3357 mAh

This means that at 42%, the battery is showing approximately 3357 mAh, suggesting that the full charge capacity is around 3500 mAh. In my case, this indicates that my battery has lost about 5% of its capacity over 2.5 years of heavy use—even though I take excellent care of it!

mSavedBatteryUsage:

The first four digits of this value give you an idea of the charging cycle count. Although not as precise as dedicated hardware counters, it provides a rough estimate of how many full charges your battery has undergone.

A Word on Calibration

For accurate results, calibrate your battery using a full discharge/charge cycle. Without proper calibration, the numbers might be off. Also, I don’t recommend using *#0228# for this purpose—it can be risky and isn’t always reliable.


Method 2: No PC? Use Shizuku and LADB

If you don’t have access to a PC, you can still run these ADB commands directly on your device using Shizuku and LADB (Local ADB Shell).

What You Need:

Shizuku: An app that grants ADB-level permissions without needing root.

LADB (Local ADB Shell): An app that allows you to run ADB commands locally on your phone.

Steps to Get Started:

Here are the steps to get started

1. Install Shizuku:

Download Shizuku from the Play Store.

Follow the in-app instructions to grant it the required ADB permissions. (You might need a one-time PC connection to set it up; after that, you can work entirely on your phone.)

2. Install LADB:

Download LADB from the Play Store. It's paid but you can download it free from many websites

Alternatively you can use other free apps such as aShell

Open LADB; it should detect that Shizuku is running. Grant the necessary permissions.

3. Run Your Commands:

In LADB’s shell, type:

adb dumpsys dumpsys battery

To check specific details, use:

cat /sys/class/power_supply/battery/charge_full

cat /sys/class/power_supply/battery/cycle_count

This way, you get the same raw battery info—capacity, cycle count, and more—directly on your device without needing a PC.


Hope this guide helps you get a clear picture of your battery’s health. Have any additional tips or questions? Let’s discuss in the comments!