Site search not working

Updated 11 October 2026

Short answer

Search on a website is usually one of two kinds: the site's own database search, or an external search service (Algolia, Elasticsearch, a plugin's index). Run a search with Developer Tools → Network open. An error response points to the server or the search service (expired key, service down, query too slow). Results that are missing new content point to an index that isn't being updated, or a cached results page.

What's the problem

Search returns nothing, shows an error, spins forever, misses new products or pages, or returns the same results for everything.

Why it happens

  • The search service is down, its API key expired, or the plan's limits were reached.
  • The index isn't updating, so new or changed content is missing.
  • A JavaScript error in the search box stops queries being sent.
  • Caching returns the same results page for different searches.
  • Slow database queries on large sites, timing out.

How to fix it

  1. Search with the Network tab open and note the request and its status.
  2. For errors, check the search service's dashboard, keys and status page, or your server logs.
  3. For missing content, reindex, and check whatever keeps the index updated is running.
  4. Exclude search results pages from caching.
  5. For slow searches, use a proper search index instead of database LIKE queries.

What Preventionlabs checks

One click runs the full report on your domain. For this problem it shows whether your site loads, how fast, and where its redirects go; up to 50 pages from your sitemap, listing any that fail or are slow, plus broken links on them. With Cloudflare connected, it also shows which pages returned server errors (5xx) to visitors, and when; which requests the firewall blocked, by Cloudflare's own rule names; recent deploys and account changes, with their times. It doesn't fill in forms, log in or make payments, so test the feature yourself as well.

Run your free report

Your first report is free, no card needed. Then A$50 a month, up to 10 domains. Read-only: it never changes anything.

Sources

  1. MDN Web Docs: HTTP response status codesreferenceHTTP response status codes indicate whether a specific HTTP request has been successfully completed.
  2. MDN Web Docs: JavaScript error referencereferenceBelow, you'll find a list of errors which are thrown by JavaScript.
← All of Broken features