diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 648fef21a58c33a10fc9b41fe81bea9daa369888..2ea9e00cb62938becbcf82695a8349b9bf38cfc2 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -13,6 +13,7 @@ Fixed
 ~~~~~
 
 * Fix creation on email addresses
+* Fix duplication of form fields in layout
 
 `1.1`_
 ----------
diff --git a/aleksis/apps/paweljong/forms.py b/aleksis/apps/paweljong/forms.py
index 06cc92109a005751ceff3926f0125786ac00ab43..1fb58f1fe1b904c9cd5aa496ff7ecb838ba2f7ac 100644
--- a/aleksis/apps/paweljong/forms.py
+++ b/aleksis/apps/paweljong/forms.py
@@ -300,15 +300,18 @@ class RegisterEventAdditional(ExtensibleForm):
     def __init__(self, event, *args, **kwargs):
         super().__init__(*args, **kwargs)
 
+        self.__class__.layout_filled = getattr(self.__class__, "layout_filled", False)
+
         for field in event.linked_group.additional_fields.all():
             field_instance = getattr(fields, field.field_type)(
                 required=field.required,
                 help_text=field.help_text,
             )
             self.fields[field.title] = field_instance
-            node = Fieldset(f"{field.title}", f"{field.title}")
-            self.add_node_to_layout(node)
-
+            if not self.layout_filled:
+                node = Fieldset(f"{field.title}", f"{field.title}")
+                self.add_node_to_layout(node)
+        self.__class__.layout_filled = True
 
 class RegisterEventFinancial(ExtensibleForm):
     """Form to register for an event."""