Why Is Elasticsearch So Slow? Fixing Slow Searches
Workaround available Self-hosted, Elastic Cloud Updated November 15, 2026Based on 2 user reportsHow we research
Quick answer
Slow Elasticsearch searches usually come from too little filesystem cache, scripts, nested queries, too many fields or shards. Turn on the slow log and the profile API to find the expensive part first.
Most likely fix: Find the slow part
How to fix it
Try these in order — the most common fix is first.
1. Find the slow part
- Enable the search slow log
- Run the query with the profile API or Kibana Search Profiler (timings are relative)
Did this fix it?2. Fix the cluster
- Leave at least half of memory to the filesystem cache
- Use local SSDs where possible
- Set search.default_search_timeout
Did this fix it?3. Fix the query and mapping
- Denormalize instead of nested or join
- Combine fields with copy_to; map IDs as keyword
- Round dates like now-1h/m; avoid scripts
- Set a preference value so repeat searches hit the same shard copies
Did this fix it?
Symptoms
Queries take seconds, timeouts under load, high CPU or I/O on data nodes.
Why it happens
- Not enough RAM left for the filesystem cache
- Scripts in sorting, aggregations or script_score
- nested and parent-child joins
- Querying many fields or very many shards
- Unrounded dates that defeat the query cache
- No search timeout set
This guide also covers
- why is elasticsearch so slow
- elasticsearch slow queries
- elasticsearch search performance
Still not working?
If Elasticsearch keeps failing, you're not alone. See every Elasticsearch problem users report or the alternatives people switch to.
Have an app idea? Our small team builds any software: web and mobile apps, games, desktop, AI tools. Price agreed together.
Talk to usThe same problem in other apps
All slow, laggy or resource-hungry guides →
Meilisearch Indexing Slow (Meilisearch)
Typesense Out of Memory (OOM) and RAM Sizing (Typesense)
Algolia Search Slow or High Latency (Algolia)
Other Elasticsearch errors
- Elasticsearch Cluster Health Yellow: Causes and Fixes
- Elasticsearch Cluster Health Red: How to Fix It
- Elasticsearch Unassigned Shards: Why and How to Fix
- Elasticsearch circuit_breaking_exception: Data Too Large
- Elasticsearch High JVM Memory Pressure and Out of Memory
- Elasticsearch Disk Watermark: Index Read-Only (FORBIDDEN/12)
- Elasticsearch Limit of Total Fields [1000] Exceeded
- Elasticsearch Cannot Change Field Mapping: Reindex Guide