Who yields - client or developer? Your opinion

I want to receive application rate in a data field (eg. L/Sq.m). There are various forms
of this rate, but ultimately I want to multiply it by the area to find the volume. The
user reads this value from the label of the bottle. But sometimes the rate is written as
Sq.m/L (how many square meters will 1L cover), in which case I would have to divide by the
area.

What is more recommended? Design the db such that it can decipher which form the rate is
being input, which for me (bit of a rookie) would be quite a headache. Or require that the
user does a simple inversion calculation on his hand calculator (or I could make a little
form for him, so he still doesn't have to think) and enters that value, in which case any
future reporting will show the value in L/Sq.m and not what is written on SOME of the
bottles? I guess this last point (report display) is my main concern.

Note: In my particular situation the rate could also be kg/Sq.m, kg/Sq.m/mm, Sq.m/kg,
L/Sq.m/mm, as well as the L/Sq.m and Sq.m/L