diff --git a/aleksis/apps/ldap/preferences.py b/aleksis/apps/ldap/preferences.py
index 1fee28579d82fe9235b7f90afb4539660e6b48d8..eec40b61e920f360cb37d781de1b2ce1dc878c0b 100644
--- a/aleksis/apps/ldap/preferences.py
+++ b/aleksis/apps/ldap/preferences.py
@@ -35,6 +35,15 @@ class LDAPSyncCreateMissingPersons(BooleanPreference):
     verbose_name = _("Create missing persons for LDAP users")
 
 
+@site_preferences_registry.register
+class LDAPPersonSyncOnLogin(BooleanPreference):
+    section = ldap
+    name = "person_sync_on_login"
+    default = True
+    required = False
+    verbose_name = _("Sync LDAP user with person on login")
+
+
 @site_preferences_registry.register
 class EnableLDAPGroupSync(BooleanPreference):
     section = ldap
@@ -51,6 +60,7 @@ class LDAPGroupSyncFieldShortName(StringPreference):
     default = "cn"
     required = False
     verbose_name = _("Field for short name of group")
+    row = "ldap_group_sync_field_short_name"
 
 
 @site_preferences_registry.register
@@ -59,10 +69,9 @@ class LDAPGroupSyncFieldShortNameRE(StringPreference):
     name = "group_sync_field_short_name_re"
     default = ""
     required = False
-    verbose_name = _(
-        "Regular expression to match LDAP value for group short name against,"
-        "e.g. class_(?P<class>.*); separate multiple patterns by |"
-    )
+    verbose_name = _("Regular expression to match LDAP value for group short name against")
+    help_text = _("e.g. class_(?P<class>.*); separate multiple patterns by |")
+    row = "ldap_group_sync_field_short_name"
 
 
 @site_preferences_registry.register
@@ -71,10 +80,9 @@ class LDAPGroupSyncFieldShortNameReplace(StringPreference):
     name = "group_sync_field_short_name_replace"
     default = ""
     required = False
-    verbose_name = _(
-        "Replacement template to apply to group short name,"
-        "e.g. \\g<class>; separate multiple templates by |"
-    )
+    verbose_name = _("Replacement template to apply to group short name")
+    help_text = _("e.g. \\g<class>; separate multiple templates by |")
+    row = "ldap_group_sync_field_short_name"
 
 
 @site_preferences_registry.register
@@ -84,6 +92,7 @@ class LDAPGroupSyncFieldName(StringPreference):
     default = "cn"
     required = False
     verbose_name = _("Field for name of group")
+    row = "ldap_group_sync_field_name"
 
 
 @site_preferences_registry.register
@@ -92,10 +101,9 @@ class LDAPGroupSyncFieldNameRE(StringPreference):
     name = "group_sync_field_name_re"
     default = ""
     required = False
-    verbose_name = _(
-        "Regular expression to match LDAP value for group name against,"
-        "e.g. class_(?P<class>.*); separate multiple patterns by |"
-    )
+    verbose_name = _("Regular expression to match LDAP value for group name against,")
+    help_text = _("e.g. class_(?P<class>.*); separate multiple patterns by |")
+    row = "ldap_group_sync_field_name"
 
 
 @site_preferences_registry.register
@@ -104,10 +112,9 @@ class LDAPGroupSyncFieldNameReplace(StringPreference):
     name = "group_sync_field_name_replace"
     default = ""
     required = False
-    verbose_name = _(
-        "Replacement template to apply to group name,"
-        "e.g. \\g<class>; separate multiple templates by |"
-    )
+    verbose_name = _("Replacement template to apply to group name")
+    help_text = _("e.g. \\g<class>; separate multiple templates by |")
+    row = "ldap_group_sync_field_name"
 
 
 @site_preferences_registry.register
@@ -117,6 +124,7 @@ class LDAPGroupSyncOwnerAttr(StringPreference):
     default = ""
     required = False
     verbose_name = _("LDAP field with dn of group owner")
+    row = "ldap_group_sync_owner_attr"
 
 
 @site_preferences_registry.register
@@ -130,12 +138,4 @@ class LDAPGroupSyncOwnerAttrType(ChoicePreference):
         ("dn", _("Distinguished Name")),
         ("uid", _("UID")),
     ]
-
-
-@site_preferences_registry.register
-class LDAPPersonSyncOnLogin(BooleanPreference):
-    section = ldap
-    name = "person_sync_on_login"
-    default = True
-    required = False
-    verbose_name = _("Sync LDAP user with person on login")
+    row = "ldap_group_sync_owner_attr"
diff --git a/aleksis/apps/ldap/util/ldap_sync.py b/aleksis/apps/ldap/util/ldap_sync.py
index 766860184fce31880971686a66d5eb5f1a0b6537..a03e096efe299c1dde7ffdc9699283297a71191c 100644
--- a/aleksis/apps/ldap/util/ldap_sync.py
+++ b/aleksis/apps/ldap/util/ldap_sync.py
@@ -76,9 +76,10 @@ def update_dynamic_preferences():
             class _GeneratedPreference(StringPreference):
                 section = section_ldap
                 name = setting_name
-                verbose_name = _(f"LDAP field for {field.verbose_name} on {model._meta.label}")
+                verbose_name = _(f"LDAP field for '{field.verbose_name}' on {model._meta.label}")
                 required = False
                 default = ""
+                row = setting_name
 
             @site_preferences_registry.register
             class _GeneratedPreferenceRe(StringPreference):
@@ -86,20 +87,23 @@ def update_dynamic_preferences():
                 name = setting_name + "_re"
                 verbose_name = _(
                     f"Regular expression to match LDAP value for"
-                    f" {field.verbose_name} on {model._meta.label} against"
+                    f" '{field.verbose_name}' on {model._meta.verbose_name} against"
                 )
                 required = False
                 default = ""
+                row = setting_name
 
             @site_preferences_registry.register
             class _GeneratedPreferenceReplace(StringPreference):
                 section = section_ldap
                 name = setting_name + "_replace"
                 verbose_name = _(
-                    f"Replacement template to apply to {field.verbose_name} on {model._meta.label}"
+                    f"Replacement template to apply to '{field.verbose_name}'"
+                    f" on {model._meta.verbose_name}"
                 )
                 required = False
                 default = ""
+                row = setting_name
 
     @site_preferences_registry.register
     class LDAPMatchingFields(MultipleChoicePreference):