A possible way to estimate this is to use GeoPositionENU[pos, pos0]. It will return GeoPositionENU[{e, n, u}, pos0] with the triple {e, n, u} being a Cartesian vector in meters with respect to a frame centered at pos0 and oriented along the East, North, Up axes (at pos0). The vector {e, n, u} points from pos0 to pos, and therefore u will be negative for any pos on the surface of the Earth. It represents the distance from the tangent plane at pos0 to pos, measured perpendicularly to the plane. That is, measured parallel to the vertical at pos0, and not parallel to the vertical at pos.
For example, take pos = New York and pos0 = Chicago. Then:
In[]:= GeoPositionENU[Entity["City", {"NewYork", "NewYork", "UnitedStates"}], Entity["City", {"Chicago", "Illinois", "UnitedStates"}]]
Out[]= GeoPositionENU[{1.15103*10^6, -37769.2, -104681.}, GeoPosition[{41.8376, -87.6818}]]
That means that NYC is 105 km below the tangent plane at Chicago.