I'm getting info from GPS And I have 4 data :

  • latitude
  • longitude
  • altitude
  • precision

Can I store the precision in M coordinate in PostGIS?

Ex :

 CREATE TABLE gps_pos ( id uuid primary key, position Geometry(Point, 4326))
 INSERT INTO gps_pos (id, position) VALUES (<uuid>, ST_MakePoint(0.0, 0.0; 400.0, 20)

I never used this 4th coordinate and don't know the best practice about it.

1 Answer 1


The M is usually reserved for Linear Referenced positions (in a Linear Referencing System). There are GIS tools that understand and operate specifically on the M values.

The precision values from GNSS do not indicate positions of any kind (but rather the quality of the XYZ), and thus is best kept in a normal field to avoid confusion.

  • 2
    It's also worth noting that dillution of precision can be split in in horizontal and vertical components, and sometimes even in a time component. It's nearly impossible to have those two/three values in the same M field, so keeping them separate makes even more sense. Feb 19, 2018 at 11:39
  • Ok so if i read correctly. I should have a table like : CREATE TABLE gps_pos (id SERIAL, precision float, position Geometry(Point, 4326) Do you have any reference about this M values, I'm currious Feb 19, 2018 at 12:22
  • Yes. And, as Ivan Sanchez had commented, it would be good if you know which precision you were given although my guess is that it is (usually) PDOP (under most situations). [HDOP and VDOP are always given together, and TDOP is of interest for timing-related operations.] And, for more explanations for the M value, lookup Wikipedia - search for "Linear Referencing System".
    – Ralph Tee
    Feb 19, 2018 at 13:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.