Skip to content
WattMate Guides Features How it works What we measure Pricing Download the trial

Mac battery health checker

Updated 30 September 2026 · the command below was run in both zsh and bash on macOS 27.0; the example output is from macOS 26.5.2. Who measures this.

To check a Mac's battery health, run one Terminal command. Your Mac stores two capacity numbers and System Settings shows one of them, rounded. The command prints both in milliamp hours, next to the design capacity and cycle count. It reads the same registry entry as WattMate, with no download, no password, and nothing leaving the machine.

What command shows your Mac's battery health?

One ioreg command, pasted into Terminal, reads the battery's registry entry and prints the design capacity, the raw and the reported capacity in milliamp hours with their percentages, the cycle count, and the MaxCapacity key, which on Apple silicon is a flag rather than health.

{ ioreg -rw0 -d1 -c AppleSmartBattery; ioreg -rw0 -d1 -c AppleSmartBatteryPack; } 2>/dev/null | grep -oE '"(DesignCapacity|AppleRawMaxCapacity|NominalChargeCapacity|CycleCount|MaxCapacity)" ?= ?[0-9]+' | awk -F'"' 'function g(k){return (k in t) ? t[k]+0 : b[k]+0} {n=$3; s=(n ~ / = /); gsub(/[ =]/,"",n); if(s){if(!($2 in t)) t[$2]=n} else if(!($2 in b)) b[$2]=n} END{d=g("DesignCapacity"); r=g("AppleRawMaxCapacity"); c=g("NominalChargeCapacity"); if(d==0||r==0){print "No internal battery found (desktop Mac?)"; exit} printf "Design capacity %6d mAh\nRaw today %6d mAh %5.1f %%\nReported today %6d mAh %5.1f %%\nCycle count %6d\nMaxCapacity key %6d <- a flag, not health\n", d, r, r/d*100, c, c/d*100, g("CycleCount"), g("MaxCapacity")}'

On the Mac this page was written on, that prints:

Design capacity6249 mAh
Raw today5301 mAh84.8 %
Reported today5453 mAh87.3 %
Cycle count548
MaxCapacity key100a flag, not health

System Settings on the same machine, in the same minute, says 87%. It is rounding the second number. The first one is not shown anywhere in macOS.

On macOS 27 the same Mac reads differently. The battery's figures moved to a child entry in the registry, which is why the command reads two places. On 30 September it printed 81.9% raw and 84.3% reported, with 596 cycles, and System Information said 86% in the same minute. That is neither number rounded, and we have not found where it comes from. On macOS 27, compare macOS's own figure only with macOS's own figure.

What does MaxCapacity mean on Apple silicon?

MaxCapacity = 100 is not your battery's capacity. On Apple silicon it is a flag meaning the system considers the pack serviceable, and it reads 100 on a battery worn down to 84.8%, as it does above. Guides that tell you to divide MaxCapacity by DesignCapacity were written for Intel Macs, where that key really did hold milliamp hours. They were correct when they were written and are wrong on every Mac sold since 2020.

Why does the popular ioreg command return garbage?

Search for this and you will be told to run ioreg -l | grep -i "MaxCapacity\DesignCapacity". It technically works and is unusable: inside the battery's BatteryData blob the same key names appear again without spaces around the equals sign, so grep drags out a two-kilobyte line of raw gauge data and the two useful lines drown in it.

On macOS 26 the fix is one character of punctuation: search for " = " with the spaces, and the blob no longer matches. On macOS 27 the figures live only inside the blob, so the command above reads both and prefers the spaced top-level keys when they exist. The blob is the whole reason the popular command "doesn't work" for people who try it.

How should you read the two numbers?

The two figures are not two attempts at one measurement. They are different quantities: the raw one is what the gauge currently estimates the pack holds, the reported one is what macOS is willing to show after its own smoothing. On this machine they sat 152 mAh apart today and on 15 August, and 308 mAh apart on 18 August, so the gap is not a constant you can subtract. Why your Mac reports two different health numbers takes that apart properly.

Read the whole number, not the decimals. Over a single session on this machine the raw capacity moved from 5270 to 5301 mAh, half a percentage point, as the charge and the temperature changed. The integer stayed at 84 through all of it.

Is your number normal for its mileage?

We collected 1539 pairs of "cycle count and health percentage" that people posted about their own Macs. Of the 441 machines with fewer than 50 cycles, the median was 99% and 225 of them were already below 100. The lowest was 77%. Nothing above 100 exists, so the only direction available from new is down, and it starts immediately.

Compare using the number System Settings shows you, not the raw one. The corpus was built from people reading System Settings, and mixing scales would put a healthy Mac below the average by arithmetic alone.

Questions people ask

Should I reset the SMC to fix a wrong battery percentage?

No. Apple silicon Macs have no separate SMC to reset, the key combinations from Intel-era guides do nothing at all, and the number is a measurement rather than a setting, so there is nothing in it to repair.

Does calibrating the battery help?

Deep discharge calibration applied to batteries Apple stopped shipping years ago. On a modern pack, draining to zero costs you a cycle and changes no reading.

Why does coconutBattery show a lower number than System Settings?

On macOS 26, any tool showing roughly two points less than macOS is reading the raw capacity instead of the reported one. On macOS 27 the gap is wider, about four points on this Mac (81.9 against 86 in System Information), because macOS there shows a third number. Both numbers are real and both come from your battery. The forum answer that "one of them is buggy" is wrong in both directions.

The command printed "No internal battery found"

That is the guard, not a failure: an iMac, Mac mini or Mac Studio has no battery to read. On a laptop, first check that you copied the current command. Until 30 September 2026 this page carried a version that printed this message on every MacBook running macOS 27, because the battery's figures moved there. If the command above still prints it on a MacBook, the pack is not being detected at all, and that is worth a service appointment.

Related: why there are two numbers · health against cycle count · 96% health and four hours of life · checking a used MacBook · the other tools

WattMate

Battery diagnostics for Apple silicon Macs.
Everything is measured and computed on your Mac.

Privacy Terms Refunds How we count What changed Who measures this Guides Press Support

© 2026 WattMate. WattMate is not affiliated with Apple Inc. macOS, Mac and Apple silicon are trademarks of Apple Inc.