diff --git a/program/management/commands/cleanup_defaultshow.py b/program/management/commands/cleanup_defaultshow.py
new file mode 100644
index 0000000000000000000000000000000000000000..2f6ccca40f479c71768cf1952bf63c6873a62ae8
--- /dev/null
+++ b/program/management/commands/cleanup_defaultshow.py
@@ -0,0 +1,21 @@
+from django.core.management.base import NoArgsCommand
+from django.db import transaction
+
+from program.models import Show, TimeSlot, ProgramSlot
+
+class Command(NoArgsCommand):
+    @transaction.commit_manually
+    def handle_noargs(self, **options):
+        help = 'removes default shows without note'
+
+        default_show = Show.objects.get(pk=1)
+        try:
+            TimeSlot.objects.filter(show=default_show, note__isnull=True).delete()
+            for programslot in ProgramSlot.objects.filter(show=default_show):
+                if programslot.timeslots.count() == 0:
+                    programslot.delete()
+        except:
+            transaction.rollback()
+        else:
+            transaction.commit()
+