diff --git a/arkindex/dataimport/api.py b/arkindex/dataimport/api.py
index e25952b77f7de9530f2056e01e9e9ba7563f7855..022c7585ebd2c0b93cbe392247ab848bd9cae14e 100644
--- a/arkindex/dataimport/api.py
+++ b/arkindex/dataimport/api.py
@@ -1326,7 +1326,8 @@ class UpdateWorkerActivity(GenericAPIView):
 )
 class CorpusWorkersActivity(CorpusACLMixin, ListAPIView):
     """
-    Retrieve corpus wise statistics about the activity of all its worker processes
+    Retrieve corpus wise statistics about the activity of all its worker processes.\n
+    Requires a **guest** access.
     """
     permission_classes = (IsVerified, )
     serializer_class = WorkerStatisticsSerializer
@@ -1334,7 +1335,7 @@ class CorpusWorkersActivity(CorpusACLMixin, ListAPIView):
     queryset = WorkerActivity.objects.none()
 
     def list(self, request, *args, **kwargs):
-        corpus = self.get_corpus(self.kwargs['corpus'], role=Role.Admin)
+        corpus = self.get_corpus(self.kwargs['corpus'], role=Role.Guest)
 
         # Retrieve the distribution of activities on this corpus grouped by worker version
         stats = WorkerActivity.objects \
@@ -1361,7 +1362,8 @@ class CorpusWorkersActivity(CorpusACLMixin, ListAPIView):
 )
 class ProcessWorkersActivity(ProcessACLMixin, ListAPIView):
     """
-    Retrieve process statistics about the activity of its workers
+    Retrieve process statistics about the activity of its workers.\n
+    Requires a **guest** access.
     """
     permission_classes = (IsVerified, )
     serializer_class = WorkerStatisticsSerializer
diff --git a/arkindex/dataimport/tests/test_workeractivity_stats.py b/arkindex/dataimport/tests/test_workeractivity_stats.py
index f65bfe4a3df2cf8939622f2dee07a0e79df17447..6e3d8b226633b0ba1e9c2127b98c8dff2b68bc10 100644
--- a/arkindex/dataimport/tests/test_workeractivity_stats.py
+++ b/arkindex/dataimport/tests/test_workeractivity_stats.py
@@ -57,7 +57,7 @@ class TestWorkersActivity(FixtureAPITestCase):
             ]
         ]
 
-    def test_version_stats_requires_login(self):
+    def test_workeractivities_stats_requires_login(self):
         with self.assertNumQueries(0):
             response = self.client.get(
                 reverse('api:corpus-workers-activity', kwargs={'corpus': str(self.corpus.id)})
@@ -65,27 +65,16 @@ class TestWorkersActivity(FixtureAPITestCase):
         self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
         self.assertDictEqual(response.json(), {'detail': 'Authentication credentials were not provided.'})
 
-    def test_version_private_corpus(self):
+    def test_workeractivities_private_corpus(self):
         self.client.force_login(self.user)
         with self.assertNumQueries(6):
             response = self.client.get(
                 reverse('api:corpus-workers-activity', kwargs={'corpus': str(self.private_corpus.id)})
             )
         self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
-        self.assertDictEqual(response.json(), {'detail': 'You do not have admin access to this corpus.'})
+        self.assertDictEqual(response.json(), {'detail': 'You do not have guest access to this corpus.'})
 
-    def test_version_stats_requires_admin(self):
-        user = User.objects.create_user('user42@test.test', 'abcd')
-        self.corpus.memberships.create(user=user, level=Role.Contributor.value)
-        self.client.force_login(user)
-        with self.assertNumQueries(5):
-            response = self.client.get(
-                reverse('api:corpus-workers-activity', kwargs={'corpus': str(self.corpus.id)})
-            )
-        self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
-        self.assertDictEqual(response.json(), {'detail': 'You do not have admin access to this corpus.'})
-
-    def test_versions_unexisting_corpus(self):
+    def test_workeractivities_unexisting_corpus(self):
         self.client.force_login(self.user)
         with self.assertNumQueries(3):
             response = self.client.get(
@@ -93,12 +82,13 @@ class TestWorkersActivity(FixtureAPITestCase):
             )
         self.assertEqual(response.status_code, status.HTTP_404_NOT_FOUND)
 
-    def test_versions_empty(self):
+    def test_workeractivities_empty(self):
         """
-        Handle a version that has absolutely no results on the corpus
+        Handle a corpus that has absolutely no activity
+        A user with a guest access can retrieve statistics
         """
         user = User.objects.create_user('user42@test.test', 'abcd')
-        self.private_corpus.memberships.create(user=user, level=Role.Admin.value)
+        self.private_corpus.memberships.create(user=user, level=Role.Guest.value)
         self.client.force_login(user)
         with self.assertNumQueries(6):
             response = self.client.get(
@@ -109,7 +99,7 @@ class TestWorkersActivity(FixtureAPITestCase):
 
     def test_workers_activity_distributed_states(self):
         self.client.force_login(self.user)
-        with self.assertNumQueries(7):
+        with self.assertNumQueries(4):
             response = self.client.get(
                 reverse('api:corpus-workers-activity', kwargs={'corpus': str(self.corpus.id)})
             )
@@ -138,7 +128,7 @@ class TestWorkersActivity(FixtureAPITestCase):
         self.assertEqual(response.status_code, status.HTTP_403_FORBIDDEN)
         self.assertDictEqual(response.json(), {'detail': 'Authentication credentials were not provided.'})
 
-    def test_process_activity_stats_requires_admin(self):
+    def test_process_activity_stats_private(self):
         self.process.corpus = self.private_corpus
         self.process.save()
         self.client.force_login(self.user)