Reading your Mac's battery with ioreg: amperage, voltage and the MaxCapacity trap
ioreg shows a Mac battery's raw readings, and two of them mislead on Apple silicon: MaxCapacity says 100 and amperage prints as a huge number. How to read them.
The three commands
system_profiler SPPowerDataType | grep -E 'Cycle Count|Condition|Maximum Capacity'
pmset -g batt
ioreg -rn AppleSmartBattery | grep -E '"(CycleCount|Voltage|Amperage|IsCharging|DesignCycleCount9C)"'| Field on our MacBook Air | Value | From |
|---|---|---|
| Cycle Count | 618 | system_profiler |
| Condition | Normal | system_profiler |
| Maximum Capacity | 82% | system_profiler |
| Charge and estimate | 21%, discharging, 1:21 remaining | pmset -g batt |
| Design cycle count | 1000 | ioreg DesignCycleCount9C |
| Voltage | 11,082 mV | ioreg |
How do I work out the draw?
Multiply Voltage by Amperage. On Apple silicon ioreg prints a negative amperage as a huge unsigned number while discharging; ours read 18446744073709551037, which is minus 579 mA. 11.08 V times 0.579 A is about 6.4 W.
Which field misleads?
MaxCapacity in ioreg read 100 on our Mac while health was 82%. On Apple silicon it is the ceiling of a 0 to 100 scale, not health. See maximum capacity.
See it live
Free Mac's System tab shows what the Mac is drawing from the adapter and the battery, and ranks what is draining it by energy impact, every second. See also cycle count.
Related: Low Power Mode: what it changes and powerd.
Common questions
Why does ioreg show MaxCapacity 100 on my Mac?
On Apple silicon it is the ceiling of a 0 to 100 scale, not battery health. Read Maximum Capacity in System Information instead.
Why is ioreg Amperage a huge number?
It is a negative value printed as unsigned. Subtract it from 2 to the 64th to get milliamps; ours was minus 579 mA.
How do I work out power draw from ioreg?
Multiply Voltage by Amperage. 11.08 V times 0.579 A came to about 6.4 W on our Mac.