diff --git a/pretix_matrix_inviter/forms.py b/pretix_matrix_inviter/forms.py
index ce4def826ca0c74c077b116dbf94df29d250012b..f3d4245620e4bff05e945b16f53bb29cc688b7c8 100644
--- a/pretix_matrix_inviter/forms.py
+++ b/pretix_matrix_inviter/forms.py
@@ -1,3 +1,4 @@
+from django.core.exceptions import ValidationError
 from django.forms import (
     CharField,
     CheckboxSelectMultiple,
@@ -7,6 +8,8 @@ from django.forms import (
 from django.utils.translation import gettext_lazy
 from i18nfield.forms import I18nFormField, I18nTextInput
 from pretix.base.forms import SettingsForm
+from urllib3.exceptions import LocationParseError
+from urllib3.util import parse_url
 
 from .helpers import matrix_room_info_for_event
 
@@ -58,6 +61,14 @@ class MatrixInviterSettingsForm(SettingsForm):
         strip=True,
     )
 
+    def clean_matrix_inviter_matrix_server(self):
+        url = self.cleaned_data["matrix_inviter_matrix_server"]
+        try:
+            return parse_url(url).host
+        except LocationParseError:
+            raise ValidationError("Please enter a valid hostname")
+        return url
+
     def __init__(self, *args, **kwargs):
         super().__init__(*args, **kwargs)
         self.fields["matrix_inviter_items"].choices = [