diff --git a/archivebox/config.py b/archivebox/config.py
index b8acb3f7..f42668b9 100644
--- a/archivebox/config.py
+++ b/archivebox/config.py
@@ -77,6 +77,7 @@ CONFIG_SCHEMA: Dict[str, ConfigDefaultDict] = {
         'PUBLIC_SNAPSHOTS':         {'type': bool,  'default': True},
         'PUBLIC_ADD_VIEW':          {'type': bool,  'default': False},
         'FOOTER_INFO':              {'type': str,   'default': 'Content is hosted for personal archiving purposes only.  Contact server owner for any takedown requests.'},
+        'SNAPSHOTS_PER_PAGE':       {'type': int,   'default': 40},
     },
 
     'ARCHIVE_METHOD_TOGGLES': {
diff --git a/archivebox/core/admin.py b/archivebox/core/admin.py
index bacc53c0..e959a7d0 100644
--- a/archivebox/core/admin.py
+++ b/archivebox/core/admin.py
@@ -21,7 +21,7 @@ from core.mixins import SearchResultsAdminMixin
 from index.html import snapshot_icons
 from logging_util import printable_filesize
 from main import add, remove
-from config import OUTPUT_DIR
+from config import OUTPUT_DIR, SNAPSHOTS_PER_PAGE
 from extractors import archive_links
 
 # Admin URLs
@@ -106,7 +106,7 @@ class SnapshotAdmin(SearchResultsAdminMixin, admin.ModelAdmin):
     actions = [delete_snapshots, overwrite_snapshots, update_snapshots, update_titles, verify_snapshots]
     actions_template = 'admin/actions_as_select.html'
     form = SnapshotAdminForm
-    list_per_page = 40
+    list_per_page = SNAPSHOTS_PER_PAGE
 
     def get_urls(self):
         urls = super().get_urls()
diff --git a/archivebox/core/views.py b/archivebox/core/views.py
index 0e19fad6..9c8313f0 100644
--- a/archivebox/core/views.py
+++ b/archivebox/core/views.py
@@ -22,6 +22,7 @@ from ..config import (
     PUBLIC_ADD_VIEW,
     VERSION,
     FOOTER_INFO,
+    SNAPSHOTS_PER_PAGE,
 )
 from main import add
 from ..util import base_url, ansi_to_html
@@ -94,7 +95,7 @@ class SnapshotView(View):
 class PublicIndexView(ListView):
     template_name = 'public_index.html'
     model = Snapshot
-    paginate_by = 100
+    paginate_by = SNAPSHOTS_PER_PAGE
     ordering = ['title']
 
     def get_context_data(self, **kwargs):