Hybrid search combines AI semantic understanding with traditional keyword matching to help customers find products by intent and meaning, not just exact phrases. You set it up by installing the WooCommerce AI Semantic Search plugin, configuring search modes and data fields, indexing your product catalog, and testing with real customer queries. The result is a search experience that understands both "wool" (keyword) and "something warm for a rainy hike" (intent) in the same query.
Why Hybrid Search Matters for Your WooCommerce Store
Hybrid search in WooCommerce combines traditional keyword matching with AI semantic search to understand customer intent beyond exact terms. You set it up by installing the WooCommerce AI Semantic Search plugin, enabling both search modes in settings, indexing your product catalog, and testing with real customer queries.
Consider the customer searching "something warm for a rainy hike." Keyword-only search returns nothing, because no product title or tag contains those words. Now consider a shopper who types "wool" and gets every wool product in the catalog, from a winter sock to a summer blanket, with no sense of which one they wanted. Hybrid search exists because keyword matching listens to syllables while AI listens to meaning, and you need both to sell.
What each method leaves unsolved:
- Keyword-only search handles exact matches well. It fails on synonyms, misspellings, natural phrasing, and descriptive queries like "gift for a new gardener."
- Semantic-only search reads intent well but can drift. It understands "cheap" and "affordable" as similar and may surface a premium item if the surrounding description leans that way.
- Hybrid search runs both and blends the rankings. The keyword side catches SKUs, exact model names, and typos. The AI side catches meaning, mood, and use case.
That combination affects more than click-through. Customers who find the right product faster add it to cart instead of bouncing, and a search layer that surfaces complementary items raises the value of a single session. You are not optimizing for a metric. You are removing the moment where a ready-to-buy customer gives up.
How to Set Up Hybrid Search in WooCommerce?
The AI Semantic Search for WooCommerce gives you a complete hybrid search system through settings screens. Installation is straightforward, and the configuration covers search modes, data fields, performance, display, and security in a single location.
Full documentation: Official Documentation
Method 1: Enable Hybrid Search with AI Semantic Search
The plugin route gets you to working hybrid search fastest, and it is the one this guide covers in full. AI Semantic Search combines AI-powered vector search with classic keyword matching in a single search box. Every setting lives under one menu, so you configure hybrid mode and its supporting options in one pass.
Step 1: Install and Activate the Plugin
Nothing else in this guide works until the search engine exists on your site, so install it before touching any settings.
Start by downloading the plugin .zip file from your WooCommerce account, then navigate to WordPress Admin > Plugins > Upload Plugin and choose that .zip file. Follow the on-screen prompts to install it, then activate the plugin.
You should now see the plugin listed as active on your Plugins screen, ready for configuration.
Tip: Keep the .zip file on hand. If you manage a staging copy of the store first, you can upload the same file there and test hybrid results before the changes go live.Step 2: Set the Search Mode and Connect OpenAI
This is the step that actually turns on hybrid search, so the choices here decide how your store matches queries.
Navigate to WooCommerce > Settings and open the AI Semantic Search panel, then select the General & API tab. Two fields define your starting behavior, and the rest connect the AI engine:
- Enable AI Semantic Search: turns the semantic vector engine on or off for the whole store.
- Search Mode: set this to Hybrid (Best) to combine neural matching with exact word matching. Semantic (AI Only) relies on embeddings alone, while Keyword (Classic) behaves like standard WooCommerce search.
- Search Behavior: Instant Results lists matches while the customer types, and On Submit Only waits for the search button.
- OpenAI API Key: paste the key used to generate product vectors.
- Test OpenAI Connection: run this button to confirm the key works before you index anything.
- Embedding Model: Small (Fast) keeps embedding costs and speed lean, while Large (Precise) trades that for stronger semantic accuracy.
You should now see a confirmed OpenAI connection, which means your store can generate the vectors that semantic matching depends on.
Step 3: Choose Which Product Data Gets Indexed
Hybrid relevance depends on what the AI is allowed to read, so decide your data coverage deliberately rather than accepting everything.
Open the Search Logic & Data Coverage tab. The checkboxes below control which fields feed the index and how heavily each one counts:
- Search in Title: Include product titles when generating search embeddings.
- Search in SKU: Include SKUs for exact product matching by code.
- Search in Long Description: Include long descriptions for deeper semantic understanding.
- Search in Short Description: Include short descriptions to improve product indexing.
- Search in Categories: Include product categories as additional search context.
- Search in Tags: Include product tags for keyword and semantic matching.
- Search in Price: Include product prices to support price-based searches and exact price matching.
- Search in Attributes: Include custom attributes such as color, size, and other product options.
- Product Variations: Choose Merge with Parent to show variations under the main product, or Separate Results to display each variation as an individual result.
You should now see your preferred fields and weights saved for the hybrid engine.
Warning: If you switch between Merge with Parent and Separate Results run Clear All Indexed Data followed by Reindex All Products. Otherwise your results will not match the variation mode you selected.Step 4: Configure Indexing and Performance
Your catalog has to be turned into vectors before semantic matching can return anything, and these controls keep that process from timing out on a large store.
Open the Indexing & Performance tab, then review the following:
- Auto-Index on Product Save: re-syncs a product whenever it is saved or updated.
- Enable Background Indexing and Indexing Interval: move the sweep to WP-Cron and set how often it looks for products that are missing from the index.
- Indexing Batch Size: caps how many products are sent to OpenAI at once, which prevents request timeouts.
- Retry Failed Indexing Attempts: automatically retries items that hit an API error.
- Limit Products Processed Per Search: sets a safety ceiling on rows parsed during a single sweep or query.
- Reindex All Products and Clear All Indexed Data: manual buttons to rebuild the whole index or wipe every stored embedding.
- Indexing History & Cron Logs: shows each run with its time, method, item count, duration, and status, and lets you download or clear the log.
You should now see indexing runs appearing in the history with a completed status once your first sweep finishes.
Testing Hybrid Search with Real Customer Queries
Configuration is only half the job. Before you announce the feature to customers, run a few deliberate searches yourself and watch how results change between modes. The fastest way is to type each query into the storefront search box while logged out, so you see exactly what a shopper sees.
The three tests below cover the query types hybrid search is built to handle: natural language intent, exact SKU lookups, and multi-word descriptive searches that mix features and product type. Compare each one against what a keyword-only setup would return.
Test query |
What hybrid search should return |
Keyword-only failure mode |
|---|---|---|
"blue running shoes" |
Running shoes in blue, including products titled "Azure Trail Runner" that never use the word blue |
Matches titles containing the literal string, so color-variant products with different naming drop out |
"SKU 12345" |
The exact product tied to that code, assuming Search in SKU is enabled |
Usually works, but fuzzy matching can pull in near-miss codes if keyword correction is too aggressive |
"comfortable work bag" |
Laptop bags, briefcases and totes whose descriptions mention padding, ergonomic straps or commuter use |
Returns few or no results because "comfortable" rarely appears in product titles |
Pay attention to the third example if your catalog sells anything with a variant structure. With Product Variations set to Merge with Parent, a query like "comfortable work bag" should surface the parent listing once, not bury the shopper in a wall of individual color and size rows.
The SKU test is the one shoppers use at the counter or on a supplier call, where speed matters more than browsing. If it returns unrelated products, revisit the keyword side of your weighting rather than the AI settings, since exact-code matching is a keyword behavior.
If a query returns nothing at all, check the "No Results" Message first. A helpful message with a link to a category page keeps the visit alive, while a blank dropdown ends the session. As research on site search behavior shows, 69% of shoppers head straight to the search box, so a dead end there is costly.
Run these three queries before and after switching modes, because the difference is invisible until you see it side by side.
- Type "blue running shoes" and note whether color variants outside the literal match appear.
- Search an exact SKU from your catalog and confirm the correct product is first.
- Try "comfortable work bag" and check whether description text is influencing ranking.
- Re-run each query with Search Mode set to Keyword (Classic) for a direct comparison.
Once the results look right, keep an eye on Top Search Terms in the Search Analytics tab. Real shopper queries reveal gaps your test list will never predict, such as regional spellings or product nicknames your team uses internally.
Method 2: Manual Hybrid Search Setup via Code (Advanced)
Some development teams prefer to build hybrid search themselves rather than install a plugin. That path is legitimate, but be clear about what you are signing up for: you need an embeddings provider, a place to store vectors, a way to score them, and a strategy for blending those scores with WooCommerce's keyword results. The plugin route handles all of that through settings screens.
A workable manual build usually has four moving parts:
- An embedding pipeline that converts product titles, descriptions, categories, and tags into vectors each time a product is saved, typically fired on the save_post_product and woocommerce_update_product hooks.
- Vector storage, either in a dedicated table or a search service, plus a scheduled job to backfill products that were never indexed.
- A query conversion step that turns the shopper's typed phrase into an embedding at search time, using the same provider and model as the product side.
- A blended result set that merges semantic matches with WooCommerce's own keyword hits before ordering them for display.
The blending step is where most custom builds stall. WooCommerce search runs through WP_Query, so you can intercept it with the pre_get_posts action or the posts_search and posts_join filters, then add your own ordering. Score keyword relevance and semantic similarity on a common scale, apply a weighting multiplier to each, and sort the combined list. Without that normalization, one method will silently dominate every result page.
Blending two score types without normalizing them first is the single most common reason a hand-built hybrid search behaves worse than plain keyword search.
A few practical constraints apply. Vector lookups over a large catalog get slow unless you paginate, cache, or push the math into a real vector database. Every search request that reaches your embeddings provider costs money, so rate limiting and a keyword fallback are not optional extras. Price, variation, and stock changes also need re-indexing, otherwise shoppers get results for products you no longer sell.
Warning: Test custom search code on a staging copy of your store first, and take a full database backup before touchingfunctions.php or a theme's search templates. A broken pre_get_posts filter can take down more than your search box.
If you want the same hybrid behavior without maintaining that stack, the plugin-based approach covered earlier in this guide delivers the same experience with built-in indexing, analytics, and security tools.
Conclusion
Hybrid search transforms how customers find products on your store by combining the precision of keyword matching with the understanding of AI semantics. After following this guide, your store now handles both exact SKU lookups and natural-language intent queries, reducing zero-result bounces and helping customers discover products they did not know how to name. To get started with a complete, ready-to-use hybrid search system, install AI Semantic Search today.


30-day money back guarantee
Dedicated Support Team
Safe & Secure Free Update
Safe Customized Solutions