diff --git a/aleksis/core/util/core_helpers.py b/aleksis/core/util/core_helpers.py
index be26928ad79db5f4ec866d7b40d2cdcd7a2fb456..e71719a64b232e4f9ccfda04843e8f31c46113c1 100644
--- a/aleksis/core/util/core_helpers.py
+++ b/aleksis/core/util/core_helpers.py
@@ -4,8 +4,10 @@ from importlib import import_module, metadata
 from itertools import groupby
 from operator import itemgetter
 from typing import Any, Callable, Optional, Sequence, Union
+from warnings import warn
 
 from django.conf import settings
+from django.core.exceptions import ImproperlyConfigured
 from django.core.files import File
 from django.db.models import Model, QuerySet
 from django.http import HttpRequest
@@ -130,8 +132,11 @@ def get_or_create_favicon(title: str, default: str, is_favicon: bool = False) ->
     """Ensure that there is always a favicon object."""
     from favicon.models import Favicon  # noqa
 
-    if not os.path.isfile(default):
+    if not os.path.exists(default):
+        warn("staticfiles are not ready yet, not creating default icons")
         return
+    elif os.path.isdir(default):
+        raise ImproperlyConfigured(f"staticfiles are broken: unexpected directory at {default}")
 
     favicon, created = Favicon.on_site.get_or_create(
         title=title, defaults={"isFavicon": is_favicon}