Had this exact head-scratcher with my shepherd's hut build last winter. Two devices, two wildly different numbers — maddening.
Here's what I eventually landed on: trust the BMS for protection, trust the SmartShunt for trending.
The BMS knows the cell-level truth. It'll pull the plug if something goes dangerously low or high, full stop. But SOC percentage on most budget BMS units is frankly guesswork — they're often just reading voltage and calling it a day.
The SmartShunt does proper coulomb counting, so it's far more accurate over time, but it needs a solid reference point to anchor itself. If you haven't let it sync at 100% recently (full absorption, tail current dropping off cleanly), it'll drift. Mine was showing 67% when the BMS said 84% — turned out I hadn't had a proper full charge since October because the Scots weather had been absolutely dire.
Few things worth checking:
- Peukert exponent — is it set correctly for your chemistry? LiFePO4 should be close to 1.05
- Charged voltage threshold — must match what your charger actually hits
- Tail current setting — too high and it'll think it's full when it isn't
Once I dialled those in via the Victron Connect app, both devices settled within 3-4% of each other, which I'd call acceptable.
What BMS are you running? If it's one of the cheaper JK or Daly units, that'll change the conversation somewhat. And are you on Fogstar or a DIY pack? Curious whether others have found the same pattern.