diff --git a/AKModel/models.py b/AKModel/models.py
index 8601a992ff365194fface4b867212353641209f4..f11c66e254d222a7edefb038b5dd7d637a81a3a0 100644
--- a/AKModel/models.py
+++ b/AKModel/models.py
@@ -1006,7 +1006,8 @@ class AKSlot(models.Model):
             ak_time_constraints = []
 
         def _owner_time_constraints(owner: AKOwner):
-            if Availability.is_event_covered(self.event, owner.availabilities.all()):
+            owner_avails = owner.availabilities.all()
+            if not owner_avails or Availability.is_event_covered(self.event, owner_avails):
                 return []
             return [f"availability-person-{owner.pk}"]
 
diff --git a/AKModel/tests/test_json_export.py b/AKModel/tests/test_json_export.py
index d53cd4c526c4372d0443982a0afaf90b71959191..5a604dc76419bb3d6cdc2a8d675c611a774913e1 100644
--- a/AKModel/tests/test_json_export.py
+++ b/AKModel/tests/test_json_export.py
@@ -479,6 +479,10 @@ class JSONExportTest(TestCase):
 
                     for owner in slot.ak.owners.all():
                         # restricted owner availability
+                        if not owner.availabilities.all():
+                            # no availability for owner -> assume full event is covered
+                            continue
+
                         if not Availability.is_event_covered(
                             slot.event, owner.availabilities.all()
                         ):