diff --git a/gracedb/search/response.py b/gracedb/search/response.py
index 26179b3c9d7f658af5767184dbc67d3b85ad18ce..bae8f2a214b8ea82f960707a77e8d24ae265e9ff 100644
--- a/gracedb/search/response.py
+++ b/gracedb/search/response.py
@@ -90,9 +90,9 @@ def superevent_flexigrid_response(request, objects):
         end = start+rp
     else:
         start = 0
-        total_pages = 1
+        total_pages = 1 if (total > 0) else 0
         page = 1
-        end = total-1
+        end = max(total, 0)
 
         if total > MAX_FLEXI_ROWS:
             return HttpResponseBadRequest("Too many rows! Please try loading a smaller number.")
@@ -190,9 +190,9 @@ def event_flexigrid_response(request, objects):
         end = start+rp
     else:
         start = 0
-        total_pages = 1
+        total_pages = 1 if (total > 0) else 0
         page = 1
-        end = total-1
+        end = max(total, 0)
 
         if total > MAX_FLEXI_ROWS:
             return HttpResponseBadRequest("Too many rows! Please try loading a smaller number.")