WooCommerce search not working? Fix it in 6 steps
Shoppers type a product name and get nothing, or the wrong thing. Work down this list in order. The first three fixes cover most stores and take a few minutes each.
1. Check the product is visible
Open Products, All Products and look at the product that will not show up. If its status is Draft, Pending or Private, search will never find it. Then open the product and check Catalog visibility under Publish. If it says Hidden, or Shop only, it is left out of search results.
Also check the product has a real title. Search matches words, so a product called only by a code is hard to find by name.
2. Clear every cache
A cached search page can keep showing an old result after you fix the cause. Clear your caching plugin, then your host's cache, then your CDN's cache. Test in a private window so your own browser cache is out of the picture.
3. Switch plugins off to find a conflict
Search is often broken by another plugin: a filter plugin, a page builder widget or a security plugin that blocks the search request. Use a staging copy if you can. Deactivate everything except WooCommerce, test search, then switch plugins back on in small groups until it breaks again.
4. Test with a default theme
Some themes replace the search form or the results template. Switch to a default theme such as Twenty Twenty-Five on a staging site and search again. If it works there, the problem is in your theme's search box or its results page, not in WooCommerce.
5. Regenerate the product lookup tables
WooCommerce keeps lookup tables for fast product queries. If they fall out of date after an import or a migration, results can be wrong. Go to WooCommerce, Status, Tools and run the lookup table regeneration tools, then search again.
6. Look at your hosting
A large catalogue on a small shared plan can make the default search time out. Slow typing in the search box that ends in a blank result is a sign. If your host logs show the search request hitting the time limit, you can raise resources, or move search off the server.
When the fix is not a fix
If all six steps pass and shoppers still complain, the search is working as designed. The built in WordPress search looks for the exact words typed. It does not correct a typo, it does not know that "tv" and "television" are the same, and it does not rank your best sellers first. That is a limit of the feature, not a fault in your store. A search plugin that adds those things is the real fix. Our guide on improving WooCommerce search results covers what to add.
Lodestar Search is a free WooCommerce plugin with typo fix, synonyms and instant results.
Get the free plugin
Questions
Why does WooCommerce search show no results for a product that exists?
Most often the product is a draft, private or hidden from search in its catalogue visibility setting. After that, check for a plugin or theme conflict and stale caches.
Does WooCommerce search handle typos?
No. The default search looks for the words as typed, so a misspelled word returns nothing. You need a search plugin with typo correction.
How do I test if my theme is the problem?
Switch to a default WordPress theme on a staging copy and run the same search. If it works, your theme's search form or results page is the cause.