diff --git a/src/Plugin/better_exposed_filters/filter/SelectiveFilterBase.php b/src/Plugin/better_exposed_filters/filter/SelectiveFilterBase.php
index 589e6b3..dadc600 100644
--- a/src/Plugin/better_exposed_filters/filter/SelectiveFilterBase.php
+++ b/src/Plugin/better_exposed_filters/filter/SelectiveFilterBase.php
@@ -55,13 +55,20 @@ abstract class SelectiveFilterBase {
       $identifier = $filter->options['is_grouped'] ? $filter->options['group_info']['identifier'] : $filter->options['expose']['identifier'];
 
       if (empty($current_view->selective_filter)) {
+        /** @var \Drupal\views\ViewExecutable $view */
         $view = Views::getView($current_view->id());
         $view->selective_filter = TRUE;
         $view->setArguments($current_view->args);
         $view->setItemsPerPage(0);
         $view->setDisplay($current_view->current_display);
         $view->preExecute();
+        // Items_per_page query parameter can override display default
+        // Save original query and replace with one without items_per_page
+        $query_orig = clone $view->getRequest()->query;
+        $view->getRequest()->query->remove('items_per_page');
         $view->execute();
+        // Restore items_per_page for main query
+        $view->getRequest()->query = $query_orig;
 
         if (!empty($view->result)) {
           $hierarchy = !empty($filter->options['hierarchy']);
