diff --git a/openedx/core/djangoapps/credentials/management/commands/notify_credentials.py b/openedx/core/djangoapps/credentials/management/commands/notify_credentials.py
index 0511792ddb586e67c30a03a09ae1ecb9d4101d86..582c3506ccfaf3785e6a7f59fa8d3c118f968211 100644
--- a/openedx/core/djangoapps/credentials/management/commands/notify_credentials.py
+++ b/openedx/core/djangoapps/credentials/management/commands/notify_credentials.py
@@ -59,9 +59,10 @@ def paged_query(queryset, delay, page_size):
         page_end = page_start + page_size
         subquery = queryset[page_start:page_end]
 
+        if delay and page:
+            time.sleep(delay)
+
         for i, item in enumerate(subquery, start=1):
-            if delay:
-                time.sleep(delay)
             yield page_start + i, item
 
 
@@ -119,7 +120,7 @@ class Command(BaseCommand):
             '--delay',
             type=float,
             default=0,
-            help="Number of seconds to sleep between processing certificates, so that we don't flood our queues.",
+            help="Number of seconds to sleep between processing queries, so that we don't flood our queues.",
         )
         parser.add_argument(
             '--page-size',
diff --git a/openedx/core/djangoapps/credentials/management/commands/tests/test_notify_credentials.py b/openedx/core/djangoapps/credentials/management/commands/tests/test_notify_credentials.py
index 7099988aea070933d3734503450ad0b9eb524104..1d5dc7ee3d427df755ee54e221b8a59543ab504c 100644
--- a/openedx/core/djangoapps/credentials/management/commands/tests/test_notify_credentials.py
+++ b/openedx/core/djangoapps/credentials/management/commands/tests/test_notify_credentials.py
@@ -99,12 +99,12 @@ class TestNotifyCredentials(TestCase):
 
     @mock.patch(COMMAND_MODULE + '.time')
     def test_delay(self, mock_time):
-        call_command(Command(), '--start-date', '2017-02-01')
+        call_command(Command(), '--start-date', '2017-01-01', '--page-size=2')
         self.assertEqual(mock_time.sleep.call_count, 0)
         mock_time.sleep.reset_mock()
 
-        call_command(Command(), '--start-date', '2017-02-01', '--delay', '0.2')
-        self.assertEqual(mock_time.sleep.call_count, 4)  # After each cert and each grade (2 each)
+        call_command(Command(), '--start-date', '2017-01-01', '--page-size=2', '--delay', '0.2')
+        self.assertEqual(mock_time.sleep.call_count, 2)  # Between each page, twice (2 pages, for certs and grades)
         self.assertEqual(mock_time.sleep.call_args[0][0], 0.2)
 
     @override_settings(DEBUG=True)