GPS' horizontal accuracy is good - about 1m. But its vertical accuracy is horrible - anywhere from tens of meters to a hundred meters or more. GPS was never made with vertical accuracy in mind.
GPS vertical accuracy is just as good as it's "horizontal" accuracy. It is just that the GPS receiver does not have accurate topological data, which is difficult to comeby. Early GPS receivers didn't have any topological data at all.