diff --git a/src/main/java/kieker/gui/model/domain/AggregatedExecutionEntry.java b/src/main/java/kieker/gui/model/domain/AggregatedExecutionEntry.java
index 391c0339f62e5f265d4ab00088a9e47388ddbb72..7197b2676042b303cddb016149c6ad3f457f8d81 100644
--- a/src/main/java/kieker/gui/model/domain/AggregatedExecutionEntry.java
+++ b/src/main/java/kieker/gui/model/domain/AggregatedExecutionEntry.java
@@ -28,6 +28,7 @@ public final class AggregatedExecutionEntry {
 	private final String operation;
 	private long minDuration;
 	private long maxDuration;
+	private long avgDuration;
 	private int calls;
 
 	public AggregatedExecutionEntry(final ExecutionEntry execEntry) {
@@ -75,6 +76,11 @@ public final class AggregatedExecutionEntry {
 		this.calls++;
 		this.minDuration = Math.min(this.minDuration, executionEntry.getDuration());
 		this.maxDuration = Math.max(this.maxDuration, executionEntry.getDuration());
+		this.avgDuration += executionEntry.getDuration();
+	}
+
+	public void recalculateValues() {
+		this.avgDuration /= this.calls;
 	}
 
 	public long getMinDuration() {
@@ -85,6 +91,10 @@ public final class AggregatedExecutionEntry {
 		return this.maxDuration;
 	}
 
+	public long getAvgDuration() {
+		return this.avgDuration;
+	}
+
 	public int getCalls() {
 		return this.calls;
 	}
diff --git a/src/main/java/kieker/gui/model/importer/filter/TraceAggregator.java b/src/main/java/kieker/gui/model/importer/filter/TraceAggregator.java
index 3573939333a08eaf478558ba1d93d4d936cbb84b..7d1cb256c88086b5a69b78be3156e978a6b9ff57 100644
--- a/src/main/java/kieker/gui/model/importer/filter/TraceAggregator.java
+++ b/src/main/java/kieker/gui/model/importer/filter/TraceAggregator.java
@@ -46,6 +46,7 @@ public final class TraceAggregator extends AbstractConsumerStage<ExecutionEntry>
 	@Override
 	public void onTerminating() throws Exception {
 		for (final AggregatedExecutionEntry aggregatedExecutionEntry : this.aggregationMap.values()) {
+			aggregatedExecutionEntry.recalculateValues();
 			this.outputPort.send(aggregatedExecutionEntry);
 		}
 		super.onTerminating();
diff --git a/src/main/java/kieker/gui/view/AggregatedTraceDetailComposite.java b/src/main/java/kieker/gui/view/AggregatedTraceDetailComposite.java
index f0e8bc7aa3bd56b693dce0ec26aab8cccb7a5ecf..82733f46c46ed9a67d327542677b17ebdb80f093 100644
--- a/src/main/java/kieker/gui/view/AggregatedTraceDetailComposite.java
+++ b/src/main/java/kieker/gui/view/AggregatedTraceDetailComposite.java
@@ -21,6 +21,8 @@ public final class AggregatedTraceDetailComposite extends Composite {
 	private final Label lblStackDepthDisplay;
 	private final Label lblMinimalDurationDisplay;
 	private final Label lblMaximalDurationDisplay;
+	private final Label lblAverageDuration;
+	private final Label lblAverageDurationDisplay;
 
 	public AggregatedTraceDetailComposite(final Composite parent, final int style) {
 		super(parent, style);
@@ -87,6 +89,14 @@ public final class AggregatedTraceDetailComposite extends Composite {
 		this.lblMinimalDurationDisplay.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
 		this.lblMinimalDurationDisplay.setText("N/A");
 
+		this.lblAverageDuration = new Label(this, SWT.NONE);
+		this.lblAverageDuration.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
+		this.lblAverageDuration.setText("Average Duration:");
+
+		this.lblAverageDurationDisplay = new Label(this, SWT.NONE);
+		this.lblAverageDurationDisplay.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
+		this.lblAverageDurationDisplay.setText("N/A");
+
 		final Label lblMaximalDuration = new Label(this, SWT.NONE);
 		lblMaximalDuration.setBackground(SWTResourceManager.getColor(SWT.COLOR_WHITE));
 		lblMaximalDuration.setText("Maximal Duration:");
@@ -105,6 +115,7 @@ public final class AggregatedTraceDetailComposite extends Composite {
 
 		this.lblMinimalDurationDisplay.setText(Long.toString(trace.getMinDuration()));
 		this.lblMaximalDurationDisplay.setText(Long.toString(trace.getMaxDuration()));
+		this.lblAverageDurationDisplay.setText(Long.toString(trace.getAvgDuration()));
 
 		if (trace.isFailed()) {
 			this.lblFailedDisplay.setText("Yes (" + trace.getFailedCause() + ")");