How CheckBatteryHealth Calculates Battery Health
A transparent look at the battery data, calculation, validation rules, analyzer tests, limitations, and privacy behind the reported battery-health percentage.
On this page
What this page documents
This page documents the calculation and behavior of the analyzer rather than repeating general battery advice. The goal is reproducibility: users can see the source values, arithmetic, validation rules, test cases, and limits of the result.
01 · Product purpose
Why we built CheckBatteryHealth
Battery reports can contain useful capacity data without turning those numbers into an immediately understandable percentage. CheckBatteryHealth was built to make that relationship easier to calculate and interpret.
The analyzer is deliberately focused on a specific question: how does the battery's currently reported Full Charge Capacity compare with its Design Capacity?
That makes the result useful as a starting point for investigation, while keeping the raw capacity values and other diagnostics in view.
02 · Source data
What the battery report provides
On supported Windows systems, a battery report can expose fields such as Design Capacity and Full Charge Capacity. Those values come from the battery, its controller, firmware, drivers, and the operating system's reporting layer.
CheckBatteryHealth does not create those underlying measurements. It uses the reported values supplied by the device or report and applies the documented calculation and validation rules.
Primary terminology
For Windows battery terminology, see Microsoft's Design Capacity documentationMicrosoft Learn.
03 · Core calculation
The battery-health calculation
When Design Capacity and Full Charge Capacity are available, belong to the same battery, and use compatible units, the reported capacity-health percentage is based on their ratio.
The formula
Example
04 · Worked examples
Simple results you can reproduce
100% — no reported capacity difference
84% — reduced reported capacity
56% — substantially reduced reported capacity
103% — reported capacity above the reference
05 · Data validation
Validation happens before the math
A mathematically correct formula can still produce a meaningless result if the inputs are wrong. The analyzer therefore needs usable, comparable capacity values before treating the calculation as valid.
Same battery
Compatible units
Required values present
Valid denominator
06 · Software verification
Battery Analyzer Test Cases
These cases document the analyzer's expected calculation and validation behavior across normal, unusual, incomplete, and malformed inputs. The numerical cases are independently reproducible from the displayed inputs.
| Test | Input | Expected | Behavior |
|---|---|---|---|
| Test ANormal capacity | Design Capacity50,000 mWhFull Charge Capacity45,000 mWh | 90% | Calculate normally |
| Test BLow capacity | Design Capacity50,000 mWhFull Charge Capacity28,000 mWh | 56% | Calculate normally |
| Test CAbove 100% | Design Capacity50,000 mWhFull Charge Capacity51,500 mWh | 103% | Keep the reported ratio |
| Test DDifferent units | Design Capacity50,000 mWhFull Charge Capacity4,500 mAh | Invalid input | Reject incompatible units |
| Test EMissing capacity | Design CapacityMissingFull Charge Capacity45,000 mWh | Invalid report | Do not calculate |
| Test FMalformed HTML | InputMalformed / invalid HTML | Parsing error | Return an error state |
What these tests demonstrate
- • Normal capacity values produce the expected ratio.
- • Lower capacity values produce proportionally lower results.
- • Values above the design reference are not silently capped at 100%.
- • Incompatible units are not treated as comparable capacity values.
- • Missing required values do not become a fabricated percentage.
- • Malformed report input is handled as an error rather than valid battery data.
07 · Windows workflow
How Windows battery reports fit into the analyzer
A common Windows workflow starts with the built-in powercfg /batteryreport command. Windows generates an HTML report containing battery information that can include the capacity fields needed for this calculation.
The report is the source of the battery values; the analyzer's role is to extract or accept the relevant data, validate it, calculate the ratio, and present the result in understandable terms.
Windows command
Need the complete report explained?
Read the Windows Battery Report guide for report sections, capacity history, estimates, and troubleshooting.
08 · Scope and limitations
What the percentage cannot diagnose
Battery health is only one part of battery condition. A capacity percentage should not be presented as a complete hardware diagnosis.
Runtime
Power consumption
Charger faults
Physical damage
Cell-level faults
Future failure
09 · Data handling
Privacy and battery-data processing
Battery reports can contain device-specific information, so data handling is important when using an online analyzer. CheckBatteryHealth states that calculations are processed securely in the browser or through its API and that submitted data is not stored.
Users should still avoid submitting files containing unrelated personal information and should review the current privacy policy before uploading a report.
Processing
Storage
Review
10 · Methodology summary
The process in six steps
- 1
Obtain the battery data
Use the battery or report values supplied by the device.
- 2
Match the capacity values
Use Design Capacity and Full Charge Capacity from the same battery and compatible units.
- 3
Validate the inputs
Reject missing, unusable, incompatible, or malformed input.
- 4
Calculate the ratio
Full Charge Capacity ÷ Design Capacity × 100.
- 5
Present the result
Show the reported capacity relationship without implying a complete diagnosis.
- 6
Keep limitations visible
Explain what the percentage cannot determine, including runtime and physical safety.
Methodology reviewed
September 15, 2026
Update this page when the product's calculation, validation behavior, privacy behavior, or supported report-processing workflow materially changes.
11 · Questions and answers
Frequently asked questions
How does CheckBatteryHealth calculate battery health?
When usable values are available, CheckBatteryHealth compares Full Charge Capacity with Design Capacity using (Full Charge Capacity ÷ Design Capacity) × 100.
What battery data does the calculation use?
The core calculation uses Design Capacity and Full Charge Capacity from the same battery and compatible capacity units.
Can battery health be above 100%?
Yes. A reported Full Charge Capacity can be higher than the reported Design Capacity, producing a result above 100%. That is a ratio of reported values, not proof that the physical cells gained capacity.
What happens if battery capacity data is missing?
A valid percentage should not be produced when the required capacity values are missing, unusable, or cannot be compared reliably.
Can the battery-health percentage predict runtime?
No. Runtime also depends on workload, display brightness, wireless activity, power settings, temperature, background processes, and other system conditions.
Can CheckBatteryHealth determine whether a battery is physically safe?
No. A capacity calculation cannot inspect swelling, leakage, puncture damage, unusual odor, localized heat, or individual cell faults.
Does CheckBatteryHealth store my battery report?
The site states that battery calculations are processed securely in the browser or through its API and that submitted data is not stored. Review the current Privacy Policy for the latest details.
Helpful next guides
Continue your battery health research
Move from the methodology to the Windows battery report, battery-health percentages, and practical troubleshooting guides.
Troubleshooting
Laptop Battery Draining Fast? Causes, Tests, and Fixes
Find the cause of short runtime, sleep drain, charging problems, background activity, or battery wear.
17 min read
Battery basics
What Is Battery Health?
Learn what battery health means and how capacity, cycle count, runtime, and condition work together.
16 min read
Online checking
How Online Battery Health Checks Work
See what an online checker can read, which values it needs, and what the result can tell you.
16 min read