The symptoms people describe
- "It never goes above 95 %, even on long sunny days."
- "It sits at 99 % for hours, then jumps to 100 %."
- "It shows 100 %, then drops straight to 97 % when the sun goes."
- "One battery says 100 %, the other 92 %."
- "Charging current falls to a trickle long before the battery is full."
Each of these has a different cause, and the inverter screen alone rarely tells you which.
How a Pylontech decides it is full
Lithium iron phosphate cells have a very flat voltage curve in the middle of their range, so the BMS cannot read the state of charge from voltage. It counts the charge going in and out (coulomb counting), and it corrects that count when the battery reaches a recognisable point: the top of charge, when the cells reach their full-charge voltage and the current tapers. That is why a real full charge matters so much: it is the moment the BMS resets its counter to 100 %, and the moment the cells balance against each other.
Two consequences follow. If the charge never reaches that top, the counter is never corrected and the displayed state of charge drifts. And if one cell gets there earlier than the others, the BMS has to slow everything down to protect it.
The six usual causes
1. Charge voltage set too low in the inverter
If the inverter caps the charge voltage below what the cells need to reach full charge, the battery tops out at 90 to 98 % and stays there. This is common when an inverter is left in a generic lithium profile, or deliberately set low to "protect" the battery. Our charge voltage guide explains the BMS's own request, Pylontech's recommended range and the trade-off of a lower ceiling.
2. Absorption too short
Some inverters switch to float as soon as a target voltage is reached. The last few percent, and the balancing that happens there, need time at the top. With a very short absorption, the state of charge stops just short of 100 % most days.
3. One cell reaches the top first
If one cell is a little higher than the others, it reaches its upper limit first. The BMS then requests less and less current to protect it, while the other cells are not yet full. On the inverter it looks like "the battery won't take any more". In the BMS data it shows as one cell clearly above the rest at the end of charge. This is cell imbalance; see the cell balancing guide.
4. State of charge drift
After weeks without a real full charge (typical in winter), the counter drifts. The battery may actually be full while showing 96 %, then jump to 100 % when the BMS finally recognises the top. Or it may show 100 % and fall quickly afterwards. Both are calibration, not capacity loss.
5. Temperature
When the cells are cool the BMS can lower the charge current it requests, and near freezing it may stop charging altogether. A cold battery can take a whole afternoon to reach the top, or not reach it at all.
6. Inverter limits that have nothing to do with the battery
A battery charge current limit set low in the inverter, export or load priority settings, or simply not enough surplus solar late in the day. The battery is willing; the inverter is not sending it current.
How to tell which one it is
| What the BMS data shows at the end of charge | Likely cause | What to do |
|---|---|---|
| All cells close together, but well below full-charge voltage; current stops | Charge voltage too low or absorption too short | Check the inverter's charge voltage and absorption settings |
| One cell clearly higher than the others; current tapers early | Cell imbalance | Give it a long full charge; see Force Balance below |
| Cells at full-charge voltage, current near zero, but SOC shows 95–99 % | State of charge drift | Let it finish; it resynchronises at full charge |
| Low module temperatures, low current all day | Cold | Location, or accept slower winter charging |
| Battery requests current but receives little | Inverter limits or not enough solar | Inverter battery current and priority settings |
| One battery of the stack lower than the others | That module: wiring, imbalance or age | Compare modules; check its cables and cells |
The fix that solves most cases: a long, real full charge
Most "stuck at 9x %" cases go away after a proper full charge held long enough for the cells to balance: the BMS resets its counter, the high cell comes back in line, and the following days reach 100 % again. The difficulty is getting that charge to happen with your particular inverter.
That is what Pylon-Monitor's Force Balance session is for: you start it from the online dashboard, it gives you the exact settings for your inverter brand (14 brands covered), the pack is brought to 100 % and held for two hours, and you receive a before/after report showing every cell. Smart Balance, its automatic companion, scores the balance after every natural full charge and names a weak cell if there is one.
When it is worth worrying
- The same cell is the highest at the end of every charge and the spread keeps growing after balancing.
- One module of the stack consistently ends several percent below the others even after a long full charge.
- The battery reaches 100 % but its usable capacity falls month after month (State of Health dropping faster than its neighbours).
Those are patterns worth documenting, for your installer or for a warranty claim. A single day at 96 % is not.
Seeing it for yourself
All the clues above live in the BMS, not on the inverter screen. Pylon-Monitor queries the BMS through the Console port of the master battery and reads every cell of every battery, the charge current, temperatures, state of charge and State of Health, and the free online dashboard keeps three years of history. You can scroll to the last hour of yesterday's charge and see whether all cells rose together, one cell ran ahead, or the inverter simply stopped sending current.
For the meaning of each value, see Pylontech diagnostics.
Frequently asked questions
- Why is my Pylontech stuck at 95 % or 99 %?
- Usually because the inverter ends the charge too early, because one cell reaches its upper limit first and the BMS tapers the current, or because the state of charge has drifted and only resets at a real full charge.
- Is it bad if my Pylontech never reaches 100 %?
- Not immediately, but the BMS only recalibrates its state of charge and balances the cells at the top of charge. Without regular full charges, the displayed SOC drifts and cells drift apart.
- Why does my Pylontech jump from 99 % to 100 %?
- The BMS counts charge in and out and corrects the count when it recognises the top of charge. A jump means the estimate had drifted and was just corrected.
- Should I raise the charge voltage to reach 100 %?
- Only within Pylontech’s recommended range. If the setting is below it, raising it to the recommendation helps; going above it does not.
- How do I fix a Pylontech that will not charge to full?
- Check the inverter’s charge voltage and absorption, look at the highest cell during the last hour of charge, and give the battery a long full charge held for about two hours so the cells balance.
See the highest cell, the charge current and the state of charge of every battery during the last hour of charging, with three years of history and a guided Force Balance session.
Order now — €59 One-off purchase, €59 all in. No VAT, no subscription.