Skip to content

Performance Optimization

Tips and strategies for optimizing Lumenare Search performance on your WordPress site.

Current release: 2.2.01

Understanding Performance Impact

Lumenare Search is designed to be fast and efficient, but performance can vary based on:

  • Site size (number of posts)
  • Index size (number of keywords)
  • Server resources
  • Traffic volume
  • Configuration settings
  • Optional document indexing, fuzzy matching, and impression/click tracking
  • Optional content analysis, meaning reranking and AI-written answers

Keyword search and question understanding run locally. Content analysis sends eligible public passages to the selected embedding service, meaning reranking sends uncached queries for embeddings, and AI-written answers send the question with bounded retrieved passages. Vectors are stored locally. Provider latency and charges are separate from your WordPress hosting costs; installing a connector or adding a key does not enable these features.

Index Optimization

Reduce Index Size

1. Configure Stop Words

  • More stop words = smaller index
  • Reduces storage and query time
  • Improves relevance by focusing on meaningful words

The effect depends on how often those words occur in your content. Reindex after changing stop words to update existing entries.

2. Limit Post Types

  • Only index post types users actually search
  • Exclude private/internal post types
  • Reduces index size and improves performance

3. Use Partial Reindex

  • Instead of full reindex, use partial reindex for updates
  • Faster for incremental changes
  • Less server load

4. Schedule New-Content Reindexing

  • Let WP-Cron catch up new published content in smaller runs
  • Review the last run status in Index Management
  • Keep Lumenare Search at 2.1.02 or later so stale overdue cron events are repaired automatically
  • Keep full reindexing for required schema repairs, stop-word and content-extraction changes
  • Tune positive field weights without rebuilding; reindex when enabling a field excluded by an earlier zero weight

5. Tune Document Indexing

  • Enable only the MIME types visitors actually need to search
  • Cache extracted text for faster repeat reindexes
  • Use the Media Library parse test before turning on broad attachment indexing

Index Maintenance

Regular Optimization:

  1. Review index size periodically
  2. Remove unnecessary post types if added
  3. Update stop words to reduce index bloat
  4. Use partial reindex when possible

Query Optimization

Reduce Dropdown Results

Open Settings → Lumenare Search → Display. Minimum characters and Live Search Trigger Delay are in General; AI-related choices are in Search & Answers. These sections are grouped under Configure search.

Settings:

  • Lower "Dropdown Results" count (default: 10)
  • Fewer results = faster queries
  • Balance between speed and usefulness
  • Increase "Live Search Trigger Delay" if high-traffic pages send too many AJAX requests
  • Disable "Live Result Images" when thumbnails do not materially improve discovery

Recommendation:

  • Small sites: up to 10 results
  • Medium sites: 8-10 results
  • Large sites: 5-8 results

Limit Search Scope

Post Types:

  • Only include post types users search
  • Exclude private/internal content
  • Reduces query complexity

Date Ranges:

  • Use date filters if applicable
  • Reduces searchable content
  • Faster queries

Server Configuration

PHP Settings

Memory Limit:

  • Recommended: 128MB minimum
  • Large sites: 256MB or higher
  • Check with: phpinfo() or hosting control panel

Execution Time:

  • Indexing may need higher limits
  • Default 30 seconds usually sufficient
  • Increase if indexing times out

Max Input Vars:

  • Should be 1000+ for large sites
  • Affects settings page if too low
  • Check with hosting provider

Database Optimization

Regular Maintenance:

  1. Optimize database tables
  2. Remove old analytics data if not needed
  3. Check table sizes
  4. Monitor query performance

Tools:

  • WordPress database optimization plugins
  • phpMyAdmin optimization
  • Hosting provider tools

Caching Configuration

Page Caching:

  • Works with WP Super Cache, W3 Total Cache, etc.
  • Check that your cache respects search parameters, active filters and profiles
  • Verify that live AJAX responses are not being served from a shared page cache

Object Caching:

  • Compatible with Redis, Memcached
  • Can cache query results
  • Improves repeated searches

CDN:

  • Static assets can be served from CDN
  • Reduces server load
  • Faster asset delivery

Feature-Specific Optimization

Fuzzy Matching

Performance Impact:

  • More resource-intensive than exact matching
  • Higher threshold = more processing
  • Disable if not needed

Optimization:

  • Use lower threshold (1-2) if possible
  • Only enable if typo tolerance is important
  • Test performance impact

Result Sorting and Facets

Performance Impact:

  • Content type, taxonomy, date, and sort filters share the same result flow
  • Large facet counts can add query work

Optimization:

  • Enable only the taxonomies users actually need
  • Keep facet value caps reasonable
  • Use date sorting for user-facing control, and keep relevance as the default for broad discovery

Synonyms

Performance Impact:

  • Minimal impact
  • Slight query expansion
  • Usually negligible

Optimization:

  • Keep synonym lists reasonable (not hundreds)
  • Focus on important synonyms
  • Test query performance

Performance Impact:

  • Calculated daily (2 AM by default)
  • Minimal impact on search queries
  • Background processing

Optimization:

  • Adjust calculation schedule if needed
  • Monitor calculation time
  • Increase minimum searches threshold to reduce data

Search Intelligence and Click Boosts

Performance Impact:

  • Impression and click tracking add local database writes
  • CTR-aware ranking is most useful after enough traffic has accumulated

Optimization:

  • Use source filters when imported Ajax Search Pro history is present
  • Keep click boost strength conservative until Search ROI shows improvement
  • Periodically clear or archive stale analytics if storage grows too large

Content Analysis and Meaning Reranking

Preparation:

  • Build the keyword index in Index Management first, then use the separate Analyze site content controls under Search & Answers → Advanced → AI service and model for content analysis
  • Choose and save an approved embedding service and model before starting
  • Keep the tab open during the bounded preparation and embedding batches; use Pause and Resume analysis if needed
  • Compatible analyses are reused; only missing or changed passages need provider work
  • After content or analysis-configuration changes, check pending work for the selected model rather than relying on stored vector totals

Search requests:

  • Meaning reranking reorders existing keyword or question-aware candidates; it does not search the whole corpus or discover pages outside those hits
  • Results to reconsider, in Content analysis tuning, limits this work, with hard limits of 200 hits and 800 passages per request; live typing checks at most 20 hits
  • Query embeddings use a bounded five-minute cache and request limits; a cache miss may make one provider-generation attempt
  • Opted-in live responses bypass the complete-response cache to recheck approval and current passages, while query embeddings can still use their bounded cache
  • Without compatible current public passages, Lumenare keeps local results and skips query generation
  • Explicit date/title sorts, facets and suggestion previews do not request query embeddings
  • Visitor searches do not prepare passages or backfill missing vectors

Optimization:

Start with local keyword search or Understand questions. Enable meaning reranking for the surfaces where it improves your site's queries, and measure response time and result quality. Inheriting a global meaning setting leaves live typing local; the Live dropdown row requires an explicit meaning-search preference, including any assigned profile override. Increasing Live Search Trigger Delay limits how often typing requests are sent, but does not remove provider latency from an opted-in request.

Opening or saving settings and Refresh status remain passive. Refresh model list requests metadata only. Pause stops the browser's analysis run after the current batch; scheduled analysis may still run when meaning search is enabled.

AI-Written Answers

AI answer writing is separate from meaning reranking. Choose and save AI-written answers with citations under Search & Answers → Answers, then enable the desired Ask Site or results-page placement. Sources and cited excerpts can use local search without a provider.

Use sensible Maximum sources and Maximum answer words limits, and measure provider response time before enabling AI writing on busy search surfaces. Results-page cards reuse the filtered first-page retrieval and a bounded passage bundle; they do not perform a second search or send the whole corpus. Live dropdowns continue to show results rather than answer cards.

Provider failures or invalid evidence can retain a supported cited excerpt. Results-page cards show a clear no-answer notice when no supported fallback is available, with ordinary results still available. Review both successful answers and unsupported questions during testing; a fast search result or a completed embedding run does not establish answer quality.

Large Site Optimization

Sites with 1000+ Posts

Strategies:

  1. Comprehensive Stop Words: Reduce index size significantly
  2. Limit Post Types: Only index what's needed
  3. Batch Indexing: Let it complete, don't interrupt
  4. Partial Reindex: Use for updates
  5. Reduce Dropdown Results: Lower count (5-8)
  6. Automatic New-Content Reindexing: Let WP-Cron keep up with normal publishing
  7. Disable Unused Features: Fuzzy matching, document indexing, trending, and click boosts if not needed

Sites with 10,000+ Posts

Additional Strategies:

  1. Database Optimization: Regular maintenance essential
  2. Server Resources: Ensure adequate PHP memory and execution time
  3. Indexing Schedule: Consider off-peak hours for full reindex
  4. Monitoring: Track query performance
  5. Caching: Implement object caching if available
  6. CDN: Use for static assets
  7. Document Controls: Limit attachment MIME types and cache extracted text if document indexing is enabled

High-Traffic Optimization

Sites with High Search Volume

Strategies:

  1. Caching: Implement page and object caching
  2. CDN: Serve static assets from CDN
  3. Database Optimization: Regular maintenance
  4. Query Optimization: Reduce dropdown results
  5. Monitoring: Track performance metrics
  6. Load Balancing: If using multiple servers

Monitoring Performance

Key Metrics:

  • Search query response time
  • Index size
  • Database query performance
  • Server resource usage
  • User experience (page load times)
  • Automatic reindex last-run status
  • Search Intelligence actions still collecting enough data

Tools:

  • WordPress performance plugins
  • Server monitoring tools
  • Browser developer tools
  • Database query loggers

Configuration Recommendations

Small Sites (< 500 Posts)

Configuration:

  • Default settings work well
  • Standard stop words
  • Default weights
  • Enable optional features only when they help visitors; measure provider features separately

Medium Sites (500-5000 Posts)

Configuration:

  • Comprehensive stop words
  • Optimized weights
  • Reduced dropdown results (8-10)
  • Monitor performance

Large Sites (5000+ Posts)

Configuration:

  • Extensive stop words
  • Optimized weights
  • Reduced dropdown results (5-8)
  • Consider disabling unused features
  • Regular database optimization
  • Caching recommended

Troubleshooting Performance Issues

Slow Search Queries

Check:

  1. Index size (too large?)
  2. Dropdown results count (too high?)
  3. Database performance
  4. Server resources
  5. Plugin conflicts
  6. Meaning reranking or AI writing enabled for the affected surface or profile

Solutions:

  • Add more stop words
  • Reduce dropdown results
  • Optimize database
  • Check server resources
  • Test with other plugins disabled
  • Compare local search with opted-in meaning reranking and AI writing to identify provider latency

Slow Indexing

Check:

  1. PHP memory limit
  2. PHP execution time
  3. Server resources
  4. Database performance
  5. Batch size settings

Solutions:

  • Increase PHP memory limit
  • Increase execution time
  • Optimize database
  • Let indexing complete (don't interrupt)
  • Use partial reindex when possible

High Server Load

Check:

  1. Search query volume
  2. Indexing operations
  3. Other plugins
  4. Server resources
  5. Caching configuration

Solutions:

  • Implement caching
  • Optimize queries
  • Schedule indexing during off-peak hours
  • Review other plugins
  • Consider server upgrade

Best Practices Summary

✅ Do

  • Configure stop words comprehensively
  • Limit post types to what's needed
  • Use partial reindex when possible
  • Optimize database regularly
  • Monitor performance metrics
  • Implement caching for high-traffic sites
  • Test performance after configuration changes
  • Check provider latency, usage and compatible passage coverage before enabling AI features broadly

❌ Don't

  • Skip stop words configuration
  • Index unnecessary post types
  • Use full reindex for small updates
  • Ignore database maintenance
  • Enable all features if not needed
  • Skip performance testing
  • Over-configure initially

Getting Help


← Back to Documentation Home | Best Practices → | Troubleshooting →