diff --git a/pagure/lib/__init__.py b/pagure/lib/__init__.py
index dbbe5c8..8de7e57 100644
--- a/pagure/lib/__init__.py
+++ b/pagure/lib/__init__.py
@@ -2657,7 +2657,7 @@ def get_group_types(session, group_type=None):
     return query.all()
 
 
-def search_groups(session, pattern=None, group_name=None, group_type=None):
+def search_groups(session, pattern=None, group_name=None, group_type=None, display_name=None):
     ''' Return the groups based on the criteria specified.
 
     '''
@@ -2681,6 +2681,11 @@ def search_groups(session, pattern=None, group_name=None, group_type=None):
             model.PagureGroup.group_name == group_name
         )
 
+    if display_name:
+        query = query.filter(
+            model.PagureGroup.display_name == display_name
+        )
+
     if group_type:
         query = query.filter(
             model.PagureGroup.group_type == group_type
@@ -2849,6 +2854,11 @@ def add_group(
         raise pagure.exceptions.PagureException(
             'There is already a group named %s' % group_name)
 
+    display = search_groups(session, display_name=display_name)
+    if display:
+        raise pagure.exceptions.PagureException(
+            'There is already a group with display name `%s` created.' % display_name)
+
     grp = pagure.lib.model.PagureGroup(
         group_name=group_name,
         display_name=display_name,
diff --git a/tests/test_pagure_lib.py b/tests/test_pagure_lib.py
index b7ad650..cdfd9c5 100644
--- a/tests/test_pagure_lib.py
+++ b/tests/test_pagure_lib.py
@@ -2201,6 +2201,20 @@ class PagureLibtests(tests.Modeltests):
             blacklist=[],
         )
 
+        # Group with this display name already exists
+        self.assertRaises(
+            pagure.exceptions.PagureException,
+            pagure.lib.add_group,
+            self.session,
+            group_name='foo1',
+            display_name='foo group',
+            description=None,
+            group_type='bar',
+            user='pingou',
+            is_admin=False,
+            blacklist=[],
+        )
+
         # Group with a blacklisted prefix
         self.assertRaises(
             pagure.exceptions.PagureException,