🔋

Batbrief

Your phone already wrote down what drained the battery. Batbrief reads it back to you.

Android can produce a bug report: a complete record of what the phone did, minute by minute, including every time the battery level moved and why. It is the file developers ask for when something is wrong. Everything needed to explain a bad night is already in it.

The tools that read it show you charts. Batbrief gives you a verdict.

What it tells you

Claim, proof, action

Every finding has three parts, and it is not shown unless it has all three:

Without the proof it is a horoscope. Without the action it is a chart.

Measured, not modelled

Android’s own per-app battery estimates come from a model, and on many phones the model’s components add up to a fraction of what the battery actually lost. Batbrief reads the coulomb counter instead — the hardware register that says how many milliamp-hours are left — so the headline figures are measured rather than guessed.

Where a number is an estimate it says so, and where the device’s model disagrees with the charge actually lost, Batbrief tells you its per-app figures are not worth much on that phone rather than ranking your apps by them.

Honest about the limits. The battery history lives in a ring buffer that fills up and drops its oldest entries — a truncated history looks exactly like a quiet night, so Batbrief says when it is looking at one. Wakelocks are attributed to whoever took them first, because that is all the history records. And system components at the top of the app ranking are a symptom of what other apps are doing, not a culprit; they are labelled as such, because restricting them is a mistake worth preventing.

Privacy is the reason for half the design

A bug report is the most identifying file your phone can produce. It contains your Wi-Fi network names, your accounts, the text of your notifications and a complete list of your apps.

So Batbrief asks for no permissions at all — not even internet access. The file reaches it through the standard Android share sheet, it is unpacked into the app’s own private cache, analysed there, and deleted when you close it. There is no server, no account, and no analytics of any kind compiled into the app.

This is not a policy that could be changed quietly: an app with no internet permission cannot send anything anywhere. The Privacy Policy says the same thing at greater length.

How to feed it a report

  1. In Settings → Developer options, tap Bug report and choose Full report. (No developer options? Settings → About phone → tap Build number seven times.)
  2. Wait a couple of minutes. A notification arrives when it is ready.
  3. Tap Share, and pick Batbrief.

From a computer, adb bugreport report.zip produces the same file. A plain adb shell dumpsys batterystats dump works too, with fewer per-app figures in it — and that one no other tool will read at all.

Get it

Batbrief requires Android 8.0 or later.