PrestaShop faceted search not working: index, features and duplicate values

PrestaShop faceted search not working usually comes down to three causes: the filter module's index wasn't rebuilt after catalogue changes, products are missing the features the filter relies on, or the same values exist in several spellings. You fix the first with one button. The other two need some tidying of your product data.

Author: The TellMyShop team. A guide for PrestaShop store owners: the cause, the manual fix and the same work in a chat conversation.
Last updated: · 5 min read

How does product filtering work in PrestaShop?

Category filters are handled by the faceted search module (ps_facetedsearch), which ships with PrestaShop. The module doesn't read the catalogue every time a customer clicks. It builds its own index: a list of products with their prices, features, attributes, brands and availability.

On top of that there is the filter template. In the module configuration you decide which filters appear in which categories and in what form, for example as checkboxes or a price slider. The PrestaShop documentation shows how to add features and their values. If a product doesn't have a feature filled in, that feature's filter doesn't include it. A customer ticks “Material: cotton”, and products with an empty material field vanish from the list.

Which of the three problems do you have?

You can usually tell the cause from the symptom without opening any settings.

What the customer seesCauseFix
No filter panel at allmodule disabled, no template for the category, or a theme with no place for filtersmodule configuration and module positions
A filter offers a value, clicking it shows nothingoutdated indexrebuild the index in the module
Some products disappear when a filter is tickedempty features on those productsfill in the features
“Black”, “black” and “Black ” side by sideduplicate feature valuesmerge them into one value
Counts next to values don't add upindex or cacherebuild the index and clear the cache

The helpguru guide to filters gives an overview of the typical scenarios. If the symptom is a single product that doesn't appear in a category even without filters, go to the post product not showing in the store.

How to rebuild the filter index

Rebuilding takes a few clicks and is worth knowing, because the same need comes back after every import.

  1. In the admin, open Modules > Module Manager and find faceted search.
  2. Go into the configuration. At the top are the indexing buttons: add missing products, and a full rebuild of the price and attribute index.
  3. With a large catalogue, start with the missing products. Do the full rebuild outside busy hours.
  4. Copy the cron job URLs shown in the configuration and pass them to whoever looks after your server, if an import runs automatically every night.
  5. Check the category in a private browser window, ticking two or three filters.

If the counts still don't match after rebuilding, check the cache. We describe it in the post PrestaShop changes not visible.

Why are there duplicate values in the filter after an import?

Because an import creates a new feature value every time the spelling differs by even one character. Supplier A writes “Black”, supplier B “black”, and someone in the admin added “black ” with a trailing space. To PrestaShop that is three values. The filter shows them separately, and a customer who ticks one won't see the products filed under the other two.

Tidying by hand goes like this: you find all products with each version, move them onto one value and delete the rest. With several features and a few hundred products, that is a long evening's work. Thursday, 22:50, the “Colour” list has 41 entries, half of them the same colour spelled differently. Hardly any guide mentions this problem, yet it happens in nearly every store with more than one supplier.

How to tidy features in a conversation with the chat

You ask for a review of one feature. Your chat (Claude or ChatGPT) shows the values with their product counts and marks likely duplicates. It suggests which value to move the products onto, and the preview shows every change before anything reaches the store. When you add a new value that already exists in another spelling, the write is rejected and the chat is given the existing value to use.

You: The Colour filter is a mess. Check which values are duplicated and suggest a clean-up.

Your chat: The Colour feature has 41 values. There are 6 groups of likely duplicates. The largest:

I suggest moving 15 products onto the value “Black”. You can then delete the empty values in the admin, as no product will be left under them.

You: Show me the preview for black.

Your chat: Preview: 15 products, change only in the Colour feature, other features unchanged. I'll save it after your agreement, and you can undo the whole operation with one instruction.

Card status: waiting for your “yes”
change preview

old version: Black (38 products), black (12), black with a trailing space (3)

new version: Black (53 products)

Illustration: products, numbers and replies are examples.

Filling in missing features works the same way: the chat reads product names and descriptions, suggests values, and you approve them in batches of up to 100 products. In the morning you look through the preview over coffee and approve it in one conversation, instead of clicking product by product. Sample requests are in the use cases tidying duplicate feature values and filling in features for filters. These are TellMyShop Pro features, described on the pricing page.

Do category filters hurt visibility in Google?

In a small or medium store, usually not. In a large catalogue you need to be careful. Every combination of ticked filters is a different page URL. Google's guide to faceted navigation advises making sure such URLs don't eat up crawler time that could be spent on products.

The PrestaShop filter module adds the selection to the category URL, and the page points to the category URL as canonical. That is usually enough. If Google Search Console shows thousands of URLs with filter parameters, it is a sign to look at blocking them in robots.txt together with whoever handles your SEO.

Questions and answers

Why do filters show empty results after a product import?

The filter module uses its own index, which imports usually skip. The filter sees old data and offers values with no products behind them any more, or doesn't know the new ones. Rebuilding the index in the faceted search module configuration helps. If you import often, set it to refresh automatically with a cron job.

Why does the filter show the same value twice, for example “Black” and “black”?

It comes from features entered as custom values, or from an import that creates a new value every time the spelling differs in capitalisation or a space. To PrestaShop these are two different values, so the filter shows both. You need to move the products onto one value and delete the others.

What is the difference between a feature and an attribute in PrestaShop?

A feature describes the product and is the same for all its variants, for example the material. An attribute creates variants the customer chooses when buying, for example size or colour. Filters can use both. Tidying features for filters doesn't require touching combinations.

Do category filters hurt SEO?

They can, if every filter combination creates a new URL that Google tries to index. Google describes how to limit crawling of such URLs. In a typical PrestaShop store the filter module adds a parameter to the category URL and the page has the category as its canonical URL, so the problem mainly affects large catalogues.

Can the chat create new filters by itself?

The chat fills in and tidies the product features that filters use, with a preview before saving. The filter template, meaning which features appear in which category, you set in the faceted search module configuration in the admin. It is a one-off task.

PrestaShop is a registered trademark of PrestaShop SA. Claude is a trademark of Anthropic PBC. ChatGPT and OpenAI are trademarks of OpenAI. TellMyShop is not affiliated with these companies.

The English version launches in January 2027

Join the list and you'll hear first when it opens, with a 72-hour head start on the launch offer.

A few emails before launch. Unsubscribe in one click. Privacy policy

Read next