diff --git a/rhodecode/controllers/admin/repo_groups.py b/rhodecode/controllers/admin/repo_groups.py
--- a/rhodecode/controllers/admin/repo_groups.py
+++ b/rhodecode/controllers/admin/repo_groups.py
@@ -99,7 +99,7 @@ class RepoGroupsController(BaseControlle
         if repo_group.user:
             data.update({'user': repo_group.user.username})
         else:
-            replacement_user = User.get_first_admin().username
+            replacement_user = User.get_first_super_admin().username
             data.update({'user': replacement_user})
 
         # fill repository group users
diff --git a/rhodecode/controllers/admin/user_groups.py b/rhodecode/controllers/admin/user_groups.py
--- a/rhodecode/controllers/admin/user_groups.py
+++ b/rhodecode/controllers/admin/user_groups.py
@@ -88,7 +88,7 @@ class UserGroupsController(BaseControlle
         if user_group.user:
             data.update({'user': user_group.user.username})
         else:
-            replacement_user = User.get_first_admin().username
+            replacement_user = User.get_first_super_admin().username
             data.update({'user': replacement_user})
         return data
 
diff --git a/rhodecode/controllers/admin/users.py b/rhodecode/controllers/admin/users.py
--- a/rhodecode/controllers/admin/users.py
+++ b/rhodecode/controllers/admin/users.py
@@ -403,7 +403,7 @@ class UsersController(BaseController):
         c.active = 'advanced'
         c.perm_user = AuthUser(user_id=user_id, ip_addr=self.ip_addr)
         c.personal_repo_group = RepoGroup.get_by_group_name(user.username)
-        c.first_admin = User.get_first_admin()
+        c.first_admin = User.get_first_super_admin()
         defaults = user.get_dict()
 
         # Interim workaround if the user participated on any pull requests as a
diff --git a/rhodecode/lib/utils.py b/rhodecode/lib/utils.py
--- a/rhodecode/lib/utils.py
+++ b/rhodecode/lib/utils.py
@@ -492,7 +492,7 @@ def map_groups(path):
     # last element is repo in nested groups structure
     groups = groups[:-1]
     rgm = RepoGroupModel(sa)
-    owner = User.get_first_admin()
+    owner = User.get_first_super_admin()
     for lvl, group_name in enumerate(groups):
         group_name = '/'.join(groups[:lvl] + [group_name])
         group = RepoGroup.get_by_group_name(group_name)
@@ -533,7 +533,7 @@ def repo2db_mapper(initial_repo_list, re
 
     sa = meta.Session()
     repo_model = RepoModel()
-    user = User.get_first_admin()
+    user = User.get_first_super_admin()
     added = []
 
     # creation defaults
diff --git a/rhodecode/model/db.py b/rhodecode/model/db.py
--- a/rhodecode/model/db.py
+++ b/rhodecode/model/db.py
@@ -776,8 +776,8 @@ class User(Base, BaseModel):
         Session().add(self)
 
     @classmethod
-    def get_first_admin(cls):
-        user = User.query().filter(User.admin == True).first()
+    def get_first_super_admin(cls):
+        user = User.query().filter(User.admin == true()).first()
         if user is None:
             raise Exception('Missing administrative account!')
         return user
diff --git a/rhodecode/model/repo.py b/rhodecode/model/repo.py
--- a/rhodecode/model/repo.py
+++ b/rhodecode/model/repo.py
@@ -339,7 +339,7 @@ class RepoModel(BaseModel):
         if repo_info.user:
             defaults.update({'user': repo_info.user.username})
         else:
-            replacement_user = User.get_first_admin().username
+            replacement_user = User.get_first_super_admin().username
             defaults.update({'user': replacement_user})
 
         # fill repository users
diff --git a/rhodecode/model/user.py b/rhodecode/model/user.py
--- a/rhodecode/model/user.py
+++ b/rhodecode/model/user.py
@@ -377,7 +377,7 @@ class UserModel(BaseModel):
             raise
 
     def _handle_user_repos(self, username, repositories, handle_mode=None):
-        _superadmin = self.cls.get_first_admin()
+        _superadmin = self.cls.get_first_super_admin()
         left_overs = True
 
         from rhodecode.model.repo import RepoModel
@@ -400,7 +400,7 @@ class UserModel(BaseModel):
 
     def _handle_user_repo_groups(self, username, repository_groups,
                                  handle_mode=None):
-        _superadmin = self.cls.get_first_admin()
+        _superadmin = self.cls.get_first_super_admin()
         left_overs = True
 
         from rhodecode.model.repo_group import RepoGroupModel
@@ -422,7 +422,7 @@ class UserModel(BaseModel):
         return left_overs
 
     def _handle_user_user_groups(self, username, user_groups, handle_mode=None):
-        _superadmin = self.cls.get_first_admin()
+        _superadmin = self.cls.get_first_super_admin()
         left_overs = True
 
         from rhodecode.model.user_group import UserGroupModel
diff --git a/rhodecode/model/user_group.py b/rhodecode/model/user_group.py
--- a/rhodecode/model/user_group.py
+++ b/rhodecode/model/user_group.py
@@ -498,7 +498,7 @@ class UserGroupModel(BaseModel):
                 self.remove_user_from_group(gr, user)
 
         # now we calculate in which groups user should be == groups params
-        owner = User.get_first_admin().username
+        owner = User.get_first_super_admin().username
         for gr in set(groups):
             existing_group = UserGroup.get_by_group_name(gr)
             if not existing_group:
diff --git a/rhodecode/tests/functional/test_feed.py b/rhodecode/tests/functional/test_feed.py
--- a/rhodecode/tests/functional/test_feed.py
+++ b/rhodecode/tests/functional/test_feed.py
@@ -33,7 +33,7 @@ class TestFeedController(TestController)
         assert """<rss version="2.0">""" in response
 
     def test_rss_with_auth_token(self, backend):
-        auth_token = User.get_first_admin().feed_token
+        auth_token = User.get_first_super_admin().feed_token
         assert auth_token != ''
         response = self.app.get(url(controller='feed', action='rss',
                                     repo_name=backend.repo_name, auth_token=auth_token))
diff --git a/rhodecode/tests/functional/test_login.py b/rhodecode/tests/functional/test_login.py
--- a/rhodecode/tests/functional/test_login.py
+++ b/rhodecode/tests/functional/test_login.py
@@ -448,7 +448,7 @@ class TestLoginController:
             assert [] == whitelist['api_access_controllers_whitelist']
             if test_name == 'proper_auth_token':
                 # use builtin if api_key is None
-                auth_token = User.get_first_admin().api_key
+                auth_token = User.get_first_super_admin().api_key
 
             with fixture.anon_access(False):
                 self.app.get(url(controller='changeset',
@@ -471,7 +471,7 @@ class TestLoginController:
             assert ['ChangesetController:changeset_raw'] == \
                 whitelist['api_access_controllers_whitelist']
             if test_name == 'proper_auth_token':
-                auth_token = User.get_first_admin().api_key
+                auth_token = User.get_first_super_admin().api_key
 
             with fixture.anon_access(False):
                 self.app.get(url(controller='changeset',