diff --git a/profiles/views.py b/profiles/views.py
index 72e9cf1c3feeb787519537300eec7125821f0a5f..ac761c5566a8a18539b3e01c42b768d190fb4f35 100644
--- a/profiles/views.py
+++ b/profiles/views.py
@@ -228,7 +228,7 @@ class ProfileListView(PermissionsMixin, PaginationMixin, ListView):
         context.update({
             'subject_areas': SCIPOST_SUBJECT_AREAS,
             'searchform': SearchTextForm(initial={'text': self.request.GET.get('text')}),
-            'nr_contributors_w_duplicate_email': contributors_w_duplicate_email.count(),
+            'nr_contributors_w_duplicate_emails': contributors_w_duplicate_email.count(),
             'nr_contributors_w_duplicate_names': contributors_w_duplicate_names.count(),
             'nr_contributors_wo_profile': contributors_wo_profile.count(),
             'nr_potential_duplicate_profiles': nr_potential_duplicate_profiles,
diff --git a/scipost/managers.py b/scipost/managers.py
index 9037134c7b44dc6249cc28f4e8559799d9a2cee9..affd24618f5f2049250628f0c1afd0798e3b4568 100644
--- a/scipost/managers.py
+++ b/scipost/managers.py
@@ -58,20 +58,20 @@ class ContributorQuerySet(models.QuerySet):
         ).exclude(user__is_superuser=True).exclude(user__is_staff=True
         ).annotate(full_name=Concat('user__last_name', 'user__first_name'))
         duplicates = contribs.values('full_name').annotate(
-            nr_count=Count('full_name')).filter(nr_count__gt=1)
-        return contribs.filter(full_name__in=[item['full_name'] for item in duplicates]
-                              ).order_by('user__last_name', 'user__first_name', '-id')
+            nr_count=Count('full_name')).filter(nr_count__gt=1).values_list('full_name', flat=True)
+        return contribs.filter(
+            full_name__in=duplicates).order_by('user__last_name', 'user__first_name', '-id')
 
     def with_duplicate_email(self):
         """
         Return Contributors having duplicate emails.
         """
-        duplicates = self.exclude(status=DOUBLE_ACCOUNT
-        ).exclude(user__is_superuser=True).exclude(user__is_staff=True
-        ).values(lower_email=Lower('user__email')).annotate(
-            Count('id')).order_by('user__last_name').filter(id__count__gt=1)
-        return self.annotate(lower_email=Lower('user__email')
-        ).filter(lower_email__in=[dup['lower_email'] for dup in duplicates])
+        qs = self.exclude(status=DOUBLE_ACCOUNT
+        ).exclude(user__is_superuser=True).exclude(
+            user__is_staff=True).annotate(lower_email=Lower('user__email'))
+        duplicates = qs.values('lower_email').annotate(
+            Count('id')).filter(id__count__gt=1).values_list('lower_email', flat=True)
+        return qs.filter(user__email__in=duplicates)
 
 
 class UnavailabilityPeriodManager(models.Manager):