GPS altitude is, by the design of the system, less accurate than the horizontal position.
In addition, it is worth remembering what the GPS altitude is.
GPS 101: The earth is not a perfect sphere. Some people call it an ‘oblate spheroid’ - it is fatter round the equator. If you measure the Earth’s circumference around the equator, and do the same around the poles, the distance around the equator is longer.
In the GPS model of the Earth, the earth is described by a mathematical shape called a geoid, which is not a sphere. This simplified object does not correspond precisely with the actual surface of the Earth. In some places it is lower, in other places it is higher. It is smooth (basically Mean Sea Level, to within a bit)
The GPS altitude is referenced to this mathematical model of the Earth’s shape.
As GPS is a system designed for use in the USA, the mathematical shape (geoid) used corresponds most closely with the shape of the Earth in the area of the North American continent. This means GPS altitudes, on average, will be closest to the true altitudes in North America. Everywhere else they can be way off.
Relative altitudes will be pretty OK, within the accuracy of the system, so if you know the actual altitude of where you start, then go straight up, for every metre of actual altitude gained you will gain a metre of GPS altitude. Of course, if you move horizontally while doing this, the GPS altitude will vary according to the shape of the geoid, which complicates things.
Further reading:
http://gpsinformation.net/main/altitude.htm
GLOBAL POSITIONING SYSTEM
STANDARD POSITIONING SERVICE
PERFORMANCE STANDARD
4th Edition
2008
For example, with current (2007) Signal-in-Space (SIS) accuracy, well designed GPS receivers have been achieving horizontal accuracy of 3 meters or better and vertical accuracy of 5 meters or better 95% of the time.
Note, the geoid used by GPS is the WGS84 ellipsoid, which is not particularly close to the actual shape of the Earth’s surface. The 2004 definition gives a resolution of about 100 km, which is basically the mean sea level averaged over that area. It’s good enough for a rough match, and can be augmented by D-GPS.
So, your GPS altitude can be way off, depending on how well the WGS84 ellipsoid describes the Earth in your vicinity. Relative altitudes should be OK-ish, remembering that the vertical accuracy is less then the horizontal accuracy as well.
Hope that helps.
Edit to add: Explainer for Ephemerides and Almanacs