diff --git a/src/core/utils.py b/src/core/utils.py
index a39e515cbdd1f0560c81d6e65c6943f7c8adecf4..c084a7b45eec011da92cf4228d05c4c86e7714fe 100644
--- a/src/core/utils.py
+++ b/src/core/utils.py
@@ -6,13 +6,13 @@ import subprocess
 import tempfile
 import uuid
 from datetime import UTC, datetime, timedelta
-from io import BytesIO
 from pathlib import Path
 from string import ascii_letters, digits
 from urllib.parse import parse_qs, urlparse, urlunparse
 
 import requests
 
+from django.core.files.base import ContentFile
 from django.urls import NoReverseMatch
 from django.utils.functional import cached_property
 from django.utils.html import strip_tags
@@ -217,7 +217,7 @@ def download_from_url(url: str) -> tuple[str, bytes]:
 
     # read the binary content
     r.raw.decode_content = True
-    data = BytesIO(r.content)
+    data = ContentFile(r.content)
 
     # return the result
     return filename, data