diff --git a/AKModel/migrations/0068_aktype_slug.py b/AKModel/migrations/0068_aktype_slug.py
new file mode 100644
index 0000000000000000000000000000000000000000..c0b66dbe671c580fe2463e6daa469afdecb921e4
--- /dev/null
+++ b/AKModel/migrations/0068_aktype_slug.py
@@ -0,0 +1,43 @@
+# Generated by Django 5.1.6 on 2025-05-11 15:21
+
+from django.db import migrations, models
+
+
+def create_slugs(apps, schema_editor):
+    """
+    Automatically generate slugs from existing type names
+    """
+    AKType = apps.get_model("AKModel", "AKType")
+    for ak_type in AKType.objects.all():
+        slug = ak_type.name.lower().split(" ")[0]
+        ak_type.slug = slug[:30] if len(slug) > 30 else slug
+        ak_type.save()
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('AKModel', '0067_eventparticipant_requirements_and_more'),
+    ]
+
+    operations = [
+        migrations.AddField(
+            model_name='aktype',
+            name='slug',
+            field=models.SlugField(max_length=30, null=True, verbose_name='Slug'),
+        ),
+        migrations.RunPython(create_slugs, migrations.RunPython.noop),
+        migrations.AlterUniqueTogether(
+            name='aktype',
+            unique_together={('event', 'name')},
+        ),
+        migrations.AlterField(
+            model_name='aktype',
+            name='slug',
+            field=models.SlugField(max_length=30, verbose_name='Slug'),
+        ),
+        migrations.AlterUniqueTogether(
+            name='aktype',
+            unique_together={('event', 'name'), ('event', 'slug')},
+        ),
+    ]
diff --git a/AKModel/models.py b/AKModel/models.py
index 02160ec4a5024a2a76844ef30d63c80446f82b00..ce33bc0b31b5b15cc7dd8c81c2e5516a8dc64968 100644
--- a/AKModel/models.py
+++ b/AKModel/models.py
@@ -859,7 +859,7 @@ class AKType(models.Model):
     or to which group of people it is addressed. Types are specified per event and are an optional feature.
     """
     name = models.CharField(max_length=128, verbose_name=_('Name'), help_text=_('Name describing the type'))
-
+    slug = models.SlugField(max_length=30, blank=False, verbose_name=_('Slug'),)
     event = models.ForeignKey(to=Event, on_delete=models.CASCADE, verbose_name=_('Event'),
                               help_text=_('Associated event'))
 
@@ -867,7 +867,7 @@ class AKType(models.Model):
         verbose_name = _('AK Type')
         verbose_name_plural = _('AK Types')
         ordering = ['name']
-        unique_together = ['event', 'name']
+        unique_together = [['event', 'name'], ['event', 'slug']]
 
     def __str__(self):
         return self.name