Victron BMV showing different SOC to my BMS — which one do I trust?

by Jake Crane · 2 weeks ago 34 views 5 replies
Jake Crane
Jake Crane
Active Member
14 posts
thumb_up 3 likes
Joined Apr 2024
2 weeks ago
#28641

Had this exact same head-scratcher when I first set up my tiny house build last year! 🙈

So my Victron BMV-712 was sitting at 78% whilst my BMS app was telling me 85% — drove me absolutely mad for weeks trying to figure out which one was lying to me.

From what I've since learned, the BMV calculates SOC using coulomb counting (tracking charge in and out) and is only as accurate as your configured settings — things like battery capacity, Peukert exponent, and crucially your charge efficiency factor. If those aren't dialled in properly, it'll drift over time.

The BMS on the other hand is typically reading cell voltages and estimating SOC from that, which has its own issues since LiFePO4 has such a flat voltage curve in the middle range.

A few questions that might help narrow it down:

  • What battery are you running? Fogstar, Epoch, something else?
  • Have you done a proper full charge synchronisation on the BMV? That's what resets its reference point
  • How old is the install — has the drift got worse over time?

Personally I ended up trusting the BMV more once I got the settings properly configured, because at least I understood why it was reading what it was. The BMS felt a bit like a black box.

Would love to hear what others reckon though — particularly anyone running Victron alongside a Daly or JK BMS. Do you find one consistently more reliable? And has anyone actually tried integrating the two via Victron's VE.Can to get them talking properly?

WhatsAFuse4
WhatsAFuse4
Member
5 posts
Joined Oct 2025
2 weeks ago
#28673

@JakeCrane Classic setup headache, this one! The short answer is they're measuring differently — your BMS is typically going off cell voltages and estimating SOC from that, whereas the BMV-712 is doing proper coulomb counting (tracking actual current in and out).

Voltage-based SOC is notoriously unreliable, especially mid-range on lithium where the discharge curve is so flat. Your BMV will drift over time if the shunt calibration or charged voltage threshold isn't set correctly though, so worth double-checking those settings.

Personally I'd trust the BMV for day-to-day monitoring once it's properly calibrated, but use your BMS as the safety net for cell-level protection. They complement each other rather than compete. What battery chemistry are you running? LiFePO4 makes the voltage reading even trickier given how flat that curve is! 🔋

BlownFuse
BlownFuse
Senior Member
121 posts
thumb_up 39 likes
Joined Oct 2023
2 weeks ago
#28688

Had this exact situation with my static caravan setup last spring — both readings drifted apart after a few weeks.

Worth checking a few things methodically:

  • BMV-712 settings — is your battery capacity programmed correctly, and have you set the charged voltage/tail current thresholds accurately? These directly affect Peukert calculations
  • Synchronisation — when did the BMV last hit a full 100% sync point? If it's been weeks, coulomb counting drift accumulates
  • BMS SOC method — most BMS units (including ones bundled with Fogstar cells) use voltage curve estimation, which is notoriously unreliable mid-range on LiFePO4 given how flat the curve is

For LiFePO4 specifically, I'd lean toward the BMV after a confirmed full charge sync, since voltage-based SOC on these chemistries is genuinely difficult to read accurately between roughly 20–90%.

What battery chemistry are you running?

Marine Terry
Marine Terry
Member
4 posts
Joined Dec 2025
1 week ago
#28724

Great thread, @JakeCrane! To add a bit more to what @WhatsAFuse4 was getting at — the BMV-712 is going to be your more trustworthy long-term figure in most cases, provided you've nailed your Peukert exponent and charge efficiency factor settings for your specific battery chemistry. Those defaults are set for lead-acid and will give you grief with lithium.

The BMS SOC tends to drift because it's often just doing a rough voltage-based calculation rather than genuine coulomb counting.

My recommendation: do a proper full charge cycle until your BMS signals complete, then sync your BMV manually at that point. Do this periodically and the two figures should stay much closer together. @BlownFuse's drift issue is almost certainly down to the BMV never getting a reliable 100% synchronisation reference point. Worth checking your absorption/float settings too.

Simon Thompson
Simon Thompson
Active Member
45 posts
thumb_up 7 likes
Joined Jan 2024
1 week ago
#28759

Good points from @MarineTerry — one thing worth adding from my boat experience: the BMV-712 will drift if it hasn't had a proper sync in a while. It needs to see a genuine 100% charge cycle (absorption + float complete) to re-anchor itself.

On my narrowboat setup I run both a BMV and a Daly BMS, and I've found they track closely once the BMV has synced correctly. Check your charged voltage and tail current settings in the BMV — if they're off, it'll never trigger a proper sync and the readings just wander further apart over time.

For emergency backup purposes I'd lean on the BMV as primary once it's calibrated correctly, but treat the BMS reading as a useful sanity check — particularly for catching cell-level issues the BMV can't see.

Ray Cross
Ray Cross
Active Member
10 posts
Joined Jan 2026
1 week ago
#28982

Great points all round here. One thing I'd add that hasn't been mentioned yet — have you checked your peukert exponent and charge efficiency factor settings in the BMV-712? These are easy to overlook during initial setup and can cause the BMV to drift pessimistically over time, especially with LiFePO4 where the defaults are really calibrated more towards lead-acid.

For lithium I'd set charge efficiency to 99% and peukert to 1.05 or lower. Also worth making sure your charged voltage and tail current thresholds are correct so the BMV synchronises properly at full charge — if it's not hitting those trigger points it'll never reset to 100% and the drift just compounds. @SimonThompson's point about synchronisation is spot on for exactly this reason. 🙂

Log in to join the discussion.

Log In to Reply