GO terms do not occupy strict fixed levels in the hierarchy. Because GO is structured as a graph, terms would appear at different 'levels' if different paths were followed through the graph. This is especially true if one mixes the different relations used to connect terms. Thus it is more proper to ask: "what is the maximum depth of such and such a term" (or minimum, average, etc.).
But you may want to reconsider whether you want this information at all! The (maximum) depth of a term may not be as informative as you think.
A more informative metric would be the information content of the node based on annotations. See, for example, the work of Alterovitz et al. .