Shopify Search & Discovery filter URLs causing duplicate content in Google β how to fix
Shopify's Search & Discovery app adds storefront filters that generate parameter URLs (for example ?filter.p.m.custom.color=red), and Google can crawl and index hundreds of thin, near-identical variants of a single collection. That bloats crawl budget and can trigger 'Duplicate without user-selected canonical' or 'Discovered β currently not indexed' in Search Console, pushing your real collection pages down. Shopify generates these URLs on the fly and keeps no list or history of them, so there is no native panel to undo or prune what has already been indexed.
If you didn't already have a backup, those old values are gone β Shopify keeps no history.
The steps below recover what you can. To make the next time a 1-click undo instead of hours of CSV work: a daily snapshot of every SEO field. Free to monitor, no card β and SEO Vault only reads your store unless you click restore.
Confirm the filters are the source. In Search Console > Pages, filter the URL list for your filter parameters (filter.p, filter.v, ?pf_) and review the 'Duplicate' and 'Discovered β currently not indexed' reports; in the Search & Discovery app, check which filters you've enabled per collection to see how many combinations it's exposing.
Reduce how many filter URLs Google can reach. Trim filters in Search & Discovery to only the ones shoppers actually need, then verify on a few filtered URLs that the canonical points back to the clean collection URL (View Source > rel="canonical") β Shopify usually sets this, but confirm it.
Stop new crawling of the parameters and let it settle. Add a Disallow rule for the filter parameters in robots.txt.liquid (Online Store > Themes > Edit code) so Google stops crawling them, then watch the duplicate count fall in Search Console over the following weeks rather than expecting it to clear overnight.
Going forward, snapshot your collection meta titles, descriptions and handles daily so the next bulk filter or handle change is flagged the day it happens β SEO Vault alerts you to collection-level SEO changes with the likely app named, so you catch crawl-bloat triggers early instead of after Google re-indexes them.
Source: Shopify Help Center: Search & Discovery app (filters); Google Search Central: faceted navigation / canonicalization
SEO Vault keeps a daily snapshot of every SEO field on your store β meta titles, descriptions, alt-text, tags, handles (products AND collections) β and emails you the moment something changes in bulk, with the likely app responsible. One click restores yesterday's state, just the SEO fields. Free to monitor and get alerted; $14/mo for 1-click restore.