In my work I have some challenge with an aircraft altitude values:

I was provided with some data from aircraft flight in my country. The data contains variety sensors data (like lat, long, altitude, out air temperature, pressure,...).

I need a way to do a conversion of barometric altitude to GPS altitude so the conversion would be as much consistent as possible without dependency on environmental parameters like year seasons and aircraft location (for example equator or +-40 deg lat).

  • 2
    $\begingroup$ You have to know the local barometric pressure at the time of the indication you are concerned to be able to do the conversion. Without that data, you are stuck. $\endgroup$
    – John K
    Jul 28, 2022 at 13:07
  • $\begingroup$ Hi user64609, welcome to aviation.stackexchange. Where does this data come from? Is it recorded on-board or was it received via Mode-S radar / ADS-B? Does the data contain accurate date and time stamps? $\endgroup$
    – DeltaLima
    Aug 1, 2022 at 11:20

2 Answers 2


GPS and Barometric altitude are referenced to different datums (geometric vs pressure), so strictly speaking you cannot really convert between the two. Having said that, GPS Height Above Geoid (as opposed to GPS Height Above Ellipsoid) provides the nearest approximation of Barometric Altitude, assuming the barometric altitude you have is referenced to the local QNH. If all you have is pressure altitude (referenced to 1013 QNH, as reported by transponder data) then you will have some error associated with the MSL pressure of the day of the flight. So... if the data you have contains barometric altitude referenced to local QNH, then you can equate this with GPS Height Above Geoid. If you need GPS Height Above Ellipsoid you can convert using the Geoid height corresponding with the location of the measurement. See e.g. https://www.unavco.org/software/geodetic-utilities/geoid-height-calculator/geoid-height-calculator.html


The best way to obtain an accurate GPS height estimate requires a static pressure measurement on board the aircraft and an accurate atmosphere model, valid at the time of measurement.

Pressure is measured on board, but often converted to pressure altitude. If you have static pressure in your dataset, use that. If you have pressure altitude, convert it to pressure using the standard atmosphere model (see ICAO doc 7488)

Now that we have pressure, we take the atmosphere model valid at the time of measurement. This could be obtained from, for example, NOAA or ECMWF. Within the atmosphere model, typically a GRIB2 grid file, you interpolate the position, time and pressure level and obtain the geopotental height.

The interpolatation requires some thought. Linear interpolation will yield inaccurate results for geopotential height, as the variation of geopotential height with pressure is non-linear but logarithmic.

Now that we have the geopotential height, we can convert to geometric height, using the formulas from ICAO DOC 7488.

The resulting geometric height is measured above mean sea level (AMSL). GPS output is typically with give as height above WGS84 ellipsoid (HAE). To convert between AMSL and HAE, you can use EGM2008.


Not the answer you're looking for? Browse other questions tagged .