Support Website Contact Support Blog

Geoid 12B

We recently flew a project in which we are comparing our results to field run data based on the Geoid 12B.  What settings do I need to have for my output coordinates?  We are outputting the data in NAD83 SPC.  Our images are geotagged in WGS84.

For smaller sites, we have used the NGS 12B tools to compute the manual geoid height, but this is a rather large site and it appears the geoid varies quite a bit from one end to the other. About 1.5 feet.

I would also like to know how this works in Pix4D as well. Would like to know how to use and or apply Geoids 3, 9, 12a and 12b conus.

Any update on this?  I utilized Geoid 12B as well and would be interested to hear some feedback from Pix4D on the subject.

Hi all,

Currently Pix4Dmapper can do some altitude conversions for known geoids (egm84, egm96, egm2008)

For other geoids, we can only apply 1 constant difference (Geoid Height Above a known ellispoid):

If the geoid varies a lot (not a constant difference), then the only solution is to have GCPs with geoid altitudes (in your case Geoid 12B altitudes).

In the future, we want to offer more options to our users: The user should be able to import a grid geoid file into Pix4Dmapper that will define the geoid altitudes for his/her area. This is something that our Product Development team will consider for future version of the software.

Best regards,


1 Like

any updates on the ability to import different geoid models?  this would be a great help

Hi Jake,

This kind of implementation takes time and our product development team applies some priority in the many features that are relevant to be considered. Our developers are also continuously working on improving the algorithms of Pix4Dmapper.

You will be notified through our release notes every time we put a new version of the software on line, if you follow this section of this webpage:

Best regards,

Hi Julie,

Does a conflict occur if Geoid 12B is applied to a given output coordinate and RTK GCP are added to the project? Is it a “one or the other” type thing?  

Hi Dillan, 

Do you apply the Geoid 12B using the GCPs? In other words, do your GCPs have altitudes based on the Geoid 12B? 
If this is not the case, how do you apply the Geoid 12B to your outputs? Do you use the Geoid Height Above a known ellispoid?

Hi Christina,

No they do not. They’re typically in a different projection from the egm 2008 or 96 you offer in Geoid Height Above Known Ellipsoid option in the advanced output coordinates box. So if I use the 12B, I’m unable to use RTK coordinates in another projection?

My understanding is the following (please correct me if I am wrong)

  • You have GCPs with a different altitude (neither Geoid 12B, nor  egm 2008 or 96).

  • You want your outputs to have altitudes based on the Geoid 12B. 

If this is the case, then it is a bit complicated :slight_smile:

Normally, our users want their outputs to have the same altitudes’ reference as the one of the GCPs.

To apply this into Pix4Dmapper, you need to know

  1. the difference between your GCPs’ geoid and the known geoid that appears in the option Geoid Height Above Known Ellipsoid when defining your GCPs coordinate system

  2. the difference between Geoid 12B and the known geoid that appears in the option Geoid Height Above Known Ellipsoid when defining your output coordinate system

This is where you can define the output and GCPs coordinate system:

I hope it helps!

Please note, that the altitudes’ definition does not affect the X,Y (horizontal) definition.
Let me know if there are more questions!


Any update on this? The EGM geoids that are available in Pix4D are any where from .8’ to 2’ off on our projects. The drones we fly are capable of great accuracy without needing several GCP’s, but that can never happen unless we can define a more accurate geoid model. Sites we fly are far too large to apply a singular constant vertical shift.


Unfortunately, right now we do not support local geoids (different than the egm84, egm96, egm2008). The only solution is to use GCPs or the offset (constant vertical shift).

A workaround would be to change the altitudes of the images (convert them to the desired output geoid) and then import them into our software by selecting as a reference for the altitudes Arbitrary:

I hope it helps :slight_smile:


Can you just process the data using the same Horizontal and Vertical Coordinate System as the image geotags and then do any transformations or reprojections on the backend with the data deliverables (ortho, point cloud, DSM)?


Hi Neill,

If you process the data using the same Horizontal and Vertical Coordinate System as the image geotags, your outputs will be at the UTM zone of your area (horizontally) and the same vertical system as the images. You could, then, convert their coordinates using a 3rd party software.

To do the conversion/trsnsformations within Pix4Dmapper, you need to select the Output Coordinate System here

Let me know if this answers your question :slight_smile:

Okay, just to clarify… this thread is a little confusing…

If my GCPs were measured using Geoid 12A, and I want to output vertical coordinate system to also be Geoid 12A, I don’t need to do anything, It will automatically adjust? Or do I need to switch the Vertical Coordinate System to “Arbitrary” in the “advanced coordinate options”?

From my understanding, your GCPs are going to basically override whatever you put in as your output coordinate system. So you’re moving whatever you set as your output coordinate system in the model to your GCPs essentially. When I’m using GCPs I set the output coordinate system to the horizontal coordinate system of my GCPs so that they will initially be closer to the model when marking the GCPs. I set my vertical to arbitrary and let the GCPs take care of that, hope this helps.

Hello Colby and Neil,

When you use GCPs, the whole project will be tied to them so answering to Colby, if you have GCPs given in Geoid 12A, you do not need to do anything, your result will be given in that system too.

As Neil says, set the output coordinate system to the horizontal coordinate system of the GCPs and set the vertical to arbitrary.

Please bear also in mind that the georeferenced outputs will be given in the selected system. For example, the orthomosaic will be written together with a prj file which contains the output coordinate system that the user selects.


Pix4D is extremely frustrating to use in my opinion. Until it will support local sites and the geoid models that everyone uses in the US, I will continue to prefer UASMaster. I love Pix4D for its ease of use, but when trying to do very precise work with high-end sensors, there is just too much of a chance that something will introduce error. Not everyone works in UTM and EGM96.

Hello Jay,

It is true that Pix4D does not support precise geoid models, but regarding coordinate systems, there is a long list of supported systems and in case you need to use one which is not supported, you can always import it and work with it with no problem.

You can also work in your local arbitary system and compute the 7 parameters transformation from WGS84.

How to compute the site calibration for GCPs in anarbitrarycoordinate system




Is it not true however, that if we are to use the the manual parameters found in the advanced site calibration menu, that we would be choosing either meters or international feet, and not US survey feet? Does this not bring up additional problems if the GCP’s were shot in a coordinate system that utilizes US survey feet?

I do share the same sentiments as Jay, It seems that if you work in any US coordinate system, there is no way for Pix4D to align with any project vertically. This forces us to need way more ground control than what is required of some of the high end RTK/PPK photogrammetry hardware that many people have invested in. Many projects we fly are large enough to have several undulations throughout the geoid, a planar vertical calibration, or constant adjustment would never be able to match up with these sites accurately unless we are to place targets on a 200’ grid.