diff --git a/app/controllers/events_controller.rb b/app/controllers/events_controller.rb
index 1eb2fd7ce5180a220820f3215ffec01fd0150414..64178c12a339d93aa1b445f44dc4d54370e30b78 100644
--- a/app/controllers/events_controller.rb
+++ b/app/controllers/events_controller.rb
@@ -83,7 +83,8 @@ class EventsController < ApplicationController
   private
 
   def set_events
-    @events = apply_scopes Event.moderated
+    # The 3000 limit is purely arbitrary...
+    @events = apply_scopes Event.moderated.limit(3000)
     @events = @events.limit(20) if params[:format] == 'rss'
   end
 
diff --git a/app/controllers/stats_controller.rb b/app/controllers/stats_controller.rb
index dd8deed60de8b45ea3cc17f6e621df7e7d1cd15c..76056a2e04f7993849ede5c15d79f07e9414a914 100644
--- a/app/controllers/stats_controller.rb
+++ b/app/controllers/stats_controller.rb
@@ -30,7 +30,7 @@ class StatsController < ApplicationController
 
   def set_events
     # Remove the ordering which can occur after geocoding
-    @events = apply_scopes(Event.moderated).reorder nil
+    @events = apply_scopes(Event.unscoped.moderated).reorder nil
   end
 
   def year_grouping
diff --git a/app/models/event.rb b/app/models/event.rb
index cd218c70c638a352fe062b526ab81967b17422db..a87685715666c9a882fd867fdb62110ee3a86f13 100644
--- a/app/models/event.rb
+++ b/app/models/event.rb
@@ -42,8 +42,7 @@ class Event < ApplicationRecord
 
   after_destroy EventCallbacks
 
-  # The 3000 limit is purely arbitrary...
-  default_scope { includes(:base_tags).order('events.id desc').limit(3000) }
+  default_scope { includes(:base_tags).order('events.id desc') }
   scope :moderated, ->(*) { where moderated: true }
   scope :unmoderated, ->(*) { where moderated: false }
   scope :past, -> { where 'start_time <= ?', Time.zone.now }