Short answer
A fuel level sensor measures a height, not a quantity. Converting that height into litres needs the tank's geometry, and in a horizontal cylinder the relationship is curved rather than straight. Treat level as volume and the error reaches 5.77 percentage points of capacity, a real, computable gap.
Key takeaways
- A level sensor returns a height in millimetres; litres are a second quantity that only tank geometry can produce.
- In a horizontal cylinder at quarter height the tank holds 19.55% of capacity, not 25%, a 5.45 percentage-point gap.
- The worst case for the linear assumption is 5.77 percentage points, near h/D = 0.19, and it falls to zero at half height.
- Vertical rectangular tanks are the exception where level and volume really are proportional, which is why the mistake survives.
- SAE J1939 broadcasts fuel level as a ratio, not a volume, so litres from CAN also depend on a configured capacity.
01Two different quantities with two different units
A fuel level sensor measures one thing: how high the liquid surface sits above the bottom of the tank. The OMNICOMM listing states a measurement range of 0 to 4,000 millimetres, and millimetres are the honest unit for what the device actually senses. A fleet manager, by contrast, reconciles in litres, because litres are what a supplier invoices, what a driver draws, and what a thief removes. These are two different physical quantities, and no amount of sensor accuracy converts one into the other. The bridge between them is the shape of the tank. Give the same height reading to a vertical drum, a horizontal cylinder and a saddle-shaped truck tank and you get three different volumes, all correct. Understanding that separation is the first step, because a great many fuel-report disputes turn out to be a level number being read as though it were a volume number.
02Where the linear assumption is actually true
The confusion survives because there is a common tank shape in which level and volume genuinely are proportional. In a vertical tank with a constant horizontal cross-section, a rectangular box, or an upright cylinder standing on its end, every millimetre of height adds exactly the same number of litres. Half the height is half the volume, and a level percentage can be printed as a volume percentage without introducing any error at all. Static diesel day tanks and many bunded storage tanks are built this way, so an operator who works only with those tanks may go years without meeting the problem. That is precisely what makes it dangerous: the shortcut is learnt in a setting where it is correct, then carried into a setting where it is not. The moment a horizontal cylinder or a shaped vehicle tank enters the fleet, the same habit starts producing numbers that are wrong in a specific and predictable direction.
03The horizontal cylinder, computed exactly
A cylinder lying on its side is the standard shape for a truck fuel tank and for a great many bulk diesel tanks, and its cross-section is a circle rather than a rectangle. The filled area is a circular segment, given exactly by V/Vtot = (θ − sin θ)/2π with θ = 2·arccos(1 − 2h/D). Working that formula through gives a figure worth committing to memory: at quarter height, h/D = 0.25, the tank holds 19.55% of its capacity, not 25%. At three-quarter height it holds 80.45%, not 75%. So a naive reading of a quarter-full gauge overstates the fuel present by 5.45 percentage points of capacity, and on a 400-litre tank that is a difference large enough to swallow a genuine siphon event. The curve is symmetric about the middle, which is why the error flips sign in the upper half of the tank rather than accumulating.
04The true worst case, and where it sits
Quarter height is a convenient place to look, but it is not where the linear assumption fails hardest. Running the same circular-segment formula across the full range shows the maximum deviation is 5.77 percentage points, and it occurs near h/D = 0.19, somewhat below the quarter mark. At exactly half height the error is zero, because that is the one point where the curve crosses the straight line it is being confused with. This matters operationally because the low end of a tank is where fuel decisions get made: refuel triggers, low-level alerts and theft thresholds all live in the bottom third. That is exactly the region where a level-as-volume shortcut is at its worst, so the mistake concentrates itself precisely where the consequences are largest. Above half height the sign reverses and the reading understates the fuel present, which produces the mirror-image nuisance of false refuel detections.
05Real tanks are not even ideal cylinders
The circular-segment calculation assumes a perfect cylinder, and a tank in service is not one. Eurosens states the manufacturer's rationale for requiring a tank calibration table plainly: a real vessel deviates from the ideal shape through dents, internal ladders and hatches, and installation tilt. Every one of those changes the height-to-volume relationship in a way no formula predicts, because the deviation is specific to that individual tank. A dent removes litres at one height only. An internal baffle displaces a fixed volume across a band of heights. Installation tilt shifts the whole curve sideways, so an empty tank reads non-zero or a full one saturates early. This is why the geometry argument ends not in a better equation but in a measurement: the only conversion that reflects the actual vessel is one built by filling it in known increments and recording what the sensor reported at each step.
06How the conversion is actually built
The industry answer is a calibration table, and Teltonika documents the procedure concretely: fill the tank in 5–10% increments, allow roughly 30 seconds of settling at each step, and record the sensor value against the known litres added. The platform then fits that table, producing cubic coefficients a0, a1, a2 and a3, a curve rather than a straight line, because the underlying relationship is a curve. Teltonika also names the diagnostic that catches a bad run: the recorded voltages must change consistently, and up-and-down values mean a fault to find before continuing rather than data to fit. That instruction is worth taking literally. A non-monotonic calibration set means something physical is wrong, a loose probe, air in the line, a mid-fill movement, and fitting a polynomial through it produces a table that looks authoritative and reports fiction.
07The same trap on the CAN bus, and in litres themselves
Reading fuel from the vehicle bus does not escape the problem, it only hides it. SAE J1939 defines SPN 96 as the ratio of volume of fuel to the total volume of the fuel storage container, a percentage, not litres. Any litre figure derived from it depends on a tank capacity someone configured, and on whatever level-to-volume mapping the vehicle manufacturer built in. Even a correct litre figure then carries one more caveat: litres are temperature-dependent. Measurement Canada publishes volume correction factors for diesel of 1.0000 at 15 °C, 0.9958 at 20 °C and 0.9873 at 30 °C, roughly 0.00085 per °C, which is about 6.8 litres on a 400-litre tank across a 20-degree swing. So the full chain is height, then geometry, then temperature, three conversions, each of which has to be done deliberately.
| Level (h/D) | Naive volume assumption | True volume (circular segment) | Error |
|---|---|---|---|
| 0.19 | 19% | about 13.2% | 5.77 pp, the true maximum |
| 0.25 | 25% | 19.55% | 5.45 pp |
| 0.50 | 50% | 50% | zero, the crossing point |
| 0.75 | 75% | 80.45% | 5.45 pp, opposite sign |
True volume at each level in a horizontal cylindrical tank
ENTEK.AI computation from the exact circular-segment formula, as shown in this article's table
Figures and sources
- OMNICOMM fuel level sensor measurement range, the unit the device actually reports: 0 – 4,000 mm; ±0.5% accuracy (Source: ENTEK.AI product catalogue, as of 2026-08-31)
- OMNICOMM sensor technology, interface and installation method: capacitive (LLS series); RS-485 Modbus RTU; top-mount, standard thread (Source: ENTEK.AI product catalogue, as of 2026-08-31)
- Volume held by a horizontal cylindrical tank at quarter height (exact circular-segment geometry): 19.55% of capacity at h/D = 0.25, and 80.45% at h/D = 0.75 (Source: Computed from V/Vtot = (θ − sin θ)/2π, θ = 2·arccos(1−2h/D); ENTEK.AI computation, independently reproducible, as of 2026-08-31)
- Maximum error of assuming level is linearly proportional to volume in a horizontal cylinder: 5.45 pp at quarter and three-quarter height; true maximum 5.77 pp near h/D = 0.19; zero only at half height (Source: Computed from the exact circular-segment formula; ENTEK.AI computation, independently reproducible, as of 2026-08-31)
- Eurosens manufacturer rationale for requiring a tank calibration table: a real vessel deviates from the ideal shape: dents, internal ladders and hatches, and installation tilt (Source: Mechatronics, Using tank calibration table utility, as of 2026-08-31)
- Teltonika documented calibration procedure and the polynomial it produces: 5–10% tank increments, ~30 s settling; yields cubic coefficients a0, a1, a2, a3 (Source: Teltonika Telematics Wiki, Analog Fuel Sensor, as of 2026-08-31)
- J1939 defines fuel level as a ratio, not a volume, so litres depend on a configured tank capacity: ratio of volume of fuel to the total volume of the fuel storage container (Source: FMS-Standard Interface Description Version 05, SPN 96 per SAE J1939, as of 2026-08-31)
- Diesel volume correction factors per API MPMS Ch. 11.1, and the apparent change they imply: VCF 1.0000 at 15 °C, 0.9958 at 20 °C, 0.9873 at 30 °C ≈ 0.00085 per °C (≈6.8 L on a 400 L tank over 20 °C) (Source: Measurement Canada (ISED), Volume correction factors, diesel fuel, as of 2026-08-31)
Questions
Can a more accurate sensor fix a level-versus-volume error?
No. The two are different quantities. The OMNICOMM listing states ±0.5% on a 0–4,000 mm range, which describes how well it measures height. Converting height to litres is geometry, and a perfect height reading through the wrong geometry still gives the wrong litres.
How big is the error if I just treat level percentage as volume percentage?
In a horizontal cylinder, up to 5.77 percentage points of capacity, with the maximum near h/D = 0.19. At quarter height the tank holds 19.55% rather than 25%. In a vertical rectangular tank the error is genuinely zero, which is why the shortcut spreads.
Does reading fuel from the CAN bus avoid the problem?
No, it relocates it. SAE J1939 SPN 96 is defined as the ratio of fuel volume to total container volume, a percentage. Any litre figure comes from a configured capacity and the manufacturer's own mapping, neither of which you can inspect from the platform.
Do litres change on their own once I have the geometry right?
Yes, with temperature. Measurement Canada publishes diesel volume correction factors of 1.0000 at 15 °C and 0.9873 at 30 °C, about 0.00085 per °C, roughly 6.8 litres on a 400-litre tank across a 20-degree swing. That is expansion, not loss.
Sources
- Mechatronics, Using tank calibration table utility (why a real vessel needs one)
- Teltonika Telematics Wiki, Analog Fuel Sensor (calibration increments and cubic fit)
- Measurement Canada (ISED), Volume correction factors, diesel fuel
- FMS-Standard Interface Description Version 05 (SPN 96 defined as a ratio)

