EU compliance4 min read
Allergen-Free Collection Filters on Shopify With Search & Discovery
Let shoppers narrow a Shopify collection to products without milk, gluten or nuts, using the allergens on your published EU food labels and Search & Discovery.
In this guide
A shopper with a milk allergy lands on your biscuits collection. Today they open every product page, scroll to the ingredients and check each one. A filter that says “Without milk” turns that into one click, and it is often the difference between a sale and a closed tab.
Shopify can show that kind of filter on collection pages, but only if every product carries the right value. If you already keep your allergens in Etiketto food labels, you have that information. This guide shows how to turn it into collection filters, step by step, and what the filter does and does not promise.
How the pieces fit together
Three parts are involved, and it helps to know which does what:
- Your published food labels in Etiketto: EU Nutrition Labels hold the allergens for each product, including “may contain” statements.
- Etiketto writes a yes/no value per allergen group onto each of those products, such as “Without milk (per EU label)”.
- Search & Discovery, Shopify’s own free app, decides which filters appear on your collection pages. Apps cannot add Search & Discovery filters for you, so the last step is yours.
The filter is available on the Free plan.
Step 1: Make sure the labels are published
A product only gets filter values from a published label. Drafts give no values, and products without a label have none either, so they drop out of the list as soon as a shopper picks one of these filters.
Before you switch anything on, check that the products in the collections you care about have published labels. The catalogue check in the app lists products that are still missing one.
Step 2: Switch on shopper filters in Etiketto
- In Etiketto, open Settings and pick Shopper filters in the menu on the left.
- Turn on Let shoppers filter by allergen-free.
- Click Save.
Saving starts a sync of the labels you have already published. Wait until the Existing labels section says the values are synced. If some products could not be synced, click Retry failed products.
From then on, publishing or updating a label keeps its values up to date.
Step 3: Add the filters in Search & Discovery
- From the same Shopper filters page in Etiketto, click Open Search & Discovery. It takes you to the app’s Filters page.
- Click Add filter.
- Choose the “Without … (per EU label)” entries you want, for example “Without milk (per EU label)” and “Without peanuts (per EU label)”, and save.
The names and steps inside Search & Discovery are set by Shopify and can look slightly different in your admin.
Choose a few, not all fourteen
Search & Discovery allows a limited number of filters per store, and you probably already use some for price, product type or availability. The EU lists fourteen allergen groups, but a collection page with fourteen allergen filters is hard to use.
Pick the ones your shoppers actually ask about. For many food shops that is milk, gluten-containing cereals, eggs, peanuts and tree nuts; a fish shop or an Asian grocery will choose differently. Your support inbox and the questions on your product pages are the best guide.
Step 4: Check it on the storefront
Open a collection page on your online store and look for the new filter group. Pick “Without milk” and confirm that:
- products whose label lists milk are gone,
- products whose label says they may contain milk are gone too,
- products without a published label are gone.
If the filter does not appear at all, check two things: that you saved the filter in Search & Discovery, and that your theme shows collection filters. Most current Shopify themes do, but some older or heavily customised ones do not.
What “Without milk” means, exactly
This is the part to explain to your team, and possibly on your site.
The value comes only from the product’s published label. A product whose label lists milk as an allergen, or says it may contain milk, is not “Without milk”. A product whose label does not mention milk is.
That makes the filter as good as your labels, and no better:
- It is not a free-from claim. “Without milk (per EU label)” means the label does not declare milk. A free-from claim on packaging has its own rules and checks.
- The app does not check the product itself. If a supplier changes a recipe and the label is not updated, the filter will be wrong too.
- “May contain” counts as contains. That is the cautious choice for shoppers with allergies, and it means a product with a precautionary statement will never appear under “Without”.
If you keep that in mind, the filter is a strong help for shoppers and a fair reflection of what your labels say.
Keeping the values current
Most of the time there is nothing to do: publishing a label updates its values. Two situations need a click:
- You published labels while the switch was off. Go to Settings > Shopper filters and click Sync existing labels (or Sync again).
- A product is missing when a filter is picked. Check that its label is published, then sync again.
If you turn the switch off, Etiketto stops updating the values, but the values already written stay on your products. To hide the filters from shoppers, remove them in Search & Discovery as well.
A small change with a clear payoff
Allergen filters reuse work you have already done. Once your labels list the allergens correctly, the filter costs three settings and a few minutes in Search & Discovery, and shoppers who need it get a collection they can trust in one click. The Etiketto app page shows what else the same labels can drive, from the storefront label widget to allergen icons.