diff --git a/src/main/java/kieker/analysis/util/graph/Vertex.java b/src/main/java/kieker/analysis/util/graph/Vertex.java
index 7e12eefdfc50d729c0f8203c64d4f1f7c28a97c5..1ed1bf83e263ad3f2507bd12134be0fb3379933f 100644
--- a/src/main/java/kieker/analysis/util/graph/Vertex.java
+++ b/src/main/java/kieker/analysis/util/graph/Vertex.java
@@ -10,6 +10,8 @@ public interface Vertex extends GraphElement {
 
 	public void removeChildGraph();
 
+	public int getDepth();
+
 	public Iterable<Edge> getEdges(Direction direction);
 
 	public Iterable<Vertex> getVertices(Direction direction);
diff --git a/src/main/java/kieker/analysis/util/graph/impl/VertexImpl.java b/src/main/java/kieker/analysis/util/graph/impl/VertexImpl.java
index 7dd55e0b3587d1a1b5aea15146cd5d06032ebc4f..fe7c7ba8b21154b46ddad95a8d241e5c73abea97 100644
--- a/src/main/java/kieker/analysis/util/graph/impl/VertexImpl.java
+++ b/src/main/java/kieker/analysis/util/graph/impl/VertexImpl.java
@@ -40,6 +40,16 @@ class VertexImpl extends GraphElementImpl implements Vertex {
 		childGraph = null;
 	}
 
+	public int getDepth() {
+		int depth = 0;
+		GraphImpl graph = this.graph;
+		while (graph.parentVertex != null) {
+			graph = graph.parentVertex.graph;
+			depth++;
+		}
+		return depth;
+	}
+
 	@Override
 	public Iterable<Edge> getEdges(final Direction direction) {
 		if (direction.equals(Direction.OUT)) {