Yep, the factory-installed tank sensors aren't what one would call 'accurate'.
Your system works well -- as long as you *always* fill from the same source (in your case, home), and always have the same flow rate (we'll assume you are running the spigot with unrestricted flow).
If you don't take longer trips where you use all of that water, and need more, then you're fine. But - if you do, then the better (?) solution would be an in-line meter - something like this (I own one):
For what I use it for, it works fine. Accuracy is rated to 1/10th gal (although if you want to be precise, 10% variance isn't exactly what you'd call 'accurate'). Certainly a lot better than something that measures in 25% increments (and for various reasons, isn't even *that* accurate).
For the person who wants to take on 'x gallons' at a time, so that they're carrying only 'what they need' (one example: towing through mountainous terrain), I don't know of a better all-around solution.
There are other, more accurate meters available, I'm sure - but for $16 and change, it does the job, no matter the source. IIRC, it was recommended via this site, so I'm pretty sure there are others here who have / use them.
Now, if you want to know how much water you have *left*, after using part of your tank, the Garnet SeeLevel meter generally gets high marks for 'most accurate'. It reads in 'percent remaining', in 1% increments. A little more expensive, and there's some installation required - but you'll gain accuracy over the grey and black tanks, and the battery, along with the fresh water.
The more expensive versions add LPG level, along with switches for the water heater & water pump.