diff --git a/aleksis/apps/untis/migrations/0003_guess_school_id.py b/aleksis/apps/untis/migrations/0003_guess_school_id.py
new file mode 100644
index 0000000000000000000000000000000000000000..52e5e02165b06ab834020c10eccce3926ce928e0
--- /dev/null
+++ b/aleksis/apps/untis/migrations/0003_guess_school_id.py
@@ -0,0 +1,28 @@
+from django.db import migrations
+
+from aleksis.core.util.core_helpers import get_site_preferences
+
+
+def guess_school_id(apps, schema_editor):
+    db_alias = schema_editor.connection.alias
+
+    ValidityRange = apps.get_model("chronos", "ValidityRange")
+    try:
+        vr = ValidityRange.objects.using(db_alias).first()
+    except ValidityRange.DoesNotExist:
+        return
+
+    school_id = vr.school_id_untis
+    if school_id:
+        get_site_preferences()["untis_mysql__school_id"] = school_id
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('untis', '0002_auto_20200820_1542'),
+    ]
+
+    operations = [
+        migrations.RunPython(guess_school_id),
+    ]