diff --git a/src/main/java/org/olat/course/nodes/SurveyCourseNode.java b/src/main/java/org/olat/course/nodes/SurveyCourseNode.java
index 7b23a2f6a15d441fd77beb69e2f0e8190f912012..66c12c7cffeb1d7aec3e87872c91782fba30a7d9 100644
--- a/src/main/java/org/olat/course/nodes/SurveyCourseNode.java
+++ b/src/main/java/org/olat/course/nodes/SurveyCourseNode.java
@@ -286,6 +286,16 @@ public class SurveyCourseNode extends AbstractAccessableCourseNode {
 		return true;
 	}
 	
+	@Override
+	public void cleanupOnDelete(ICourse course) {
+		super.cleanupOnDelete(course);
+		
+		EvaluationFormManager evaluationFormManager = CoreSpringFactory.getImpl(EvaluationFormManager.class);
+		RepositoryEntry ores = RepositoryManager.getInstance().lookupRepositoryEntry(course, true);
+		EvaluationFormSurvey survey = evaluationFormManager.loadSurvey(ores, getIdent());
+		evaluationFormManager.deleteSurvey(survey);
+	}
+
 	public static RepositoryEntry getEvaluationForm(ModuleConfiguration config) {
 		if (config == null) return null;