Coconut battery is not reliable. Couple weeks of use on my 13 PM it had it drop to 89. After year and half, today it’s 90 on apple battery health.
CoconutBattery just pulls from Apple's own stats.
Apple Terminal battery readings (type the below in a terminal):
ioreg -l -w0 | grep AppleRawMaxCapacity
ioreg -l -w0 | grep DesignCapacity | tail -1
But yes, you've noticed that Apple definitely has something else going for the health % reader vs what actually gets reported by the system.
I know they have to try pulling from Apples own stats. But the numbers don’t match with Apples own metrics consistently.
Yes, coconutBattery reports legitimate values. However, there are two problems:
1) It’s raw values from that moment. Whereas the Battery Health value shown in the Settings app is some calculated average/guesstimate.
2) Even the battery controller/power management system can’t always keep up with the small volatility of battery technology.
iFixit said:
The fundamental problem is that there’s no reliable way to know exactly how much energy a battery holds at any given moment. (It’s an electrochemical storage system that is always changing and decaying, and never behaves exactly the same way from one charge to the next.) About the only reliable way to gauge it is to fully charge the battery, then fully discharge it and measure the difference (a.k.a. coulomb counting). Obviously, we can't do that every time we want to check the battery level, so we have to use indirect methods—storing all kinds of usage data and using that to calculate an estimated % state of charge from moment to moment. Over time, that calculation tends to drift and become less accurate. And on a brand-new battery, there’s not really any good data to work with, so the model will be way off. Calibration helps keep estimates accurate by setting new “full charge” and “full discharge” anchors in the battery management system so it doesn’t have to guess. We're still playing Pin the Tail on the Donkey, but calibration tells the battery management system, "Hey—the donkey is over that way."
Example: charge your device to near 100% and monitor via coconutBattery. Watch the charge percentage reach 100% (if it even does).
Current charge should (eventually) match
Full Charge Capacity. Continue to watch as long as
Charging with reports a rate (e.g., 0.24 watts). Chances are you’ll see
Full Charge Capacity slowly climb beyond what was reported/identified when you launched the app.
All newly-installed smart batteries should be calibrated as soon as possible. This helps your phone or laptop get an accurate reading on the battery’s state of charge.
www.ifixit.com
So, don’t fall victim to the misinformers (who have no basis other than, from what I’ve seen, Apple no longer recommending it (but also not discouraging it)), battery calibration is useless or harmful.
P.S. As some have noticed, even the current charge shown in iOS (i.e., status bar and Battery section of Settings) is tweaked/rounded somewhat for the aforementioned reason as well as other reasons, such as a trickle charge and discharge cycle ranging ~95 to 100% while connected to a charger to prevent overcharge.
P.P.S. Additionally, 0% and 100% aren’t true charge levels. There is padding/margin to (again) help prevent overcharging, help prevent deep discharge, and allow additional capabilities (e.g., Find My functionality for a period beyond power off in a low battery state).