Yoast SEO added a duplicate or wrong canonical tag on Shopify โ how to fix it
Yoast SEO for Shopify automatically manages canonical URLs and outputs them through theme modifications it adds to your store. Because Shopify's theme already emits a canonical link tag, enabling Yoast's output without removing the theme's default can leave two rel="canonical" tags on the page โ or a canonical pointing to a URL you didn't intend โ and Google then consolidates ranking signals to the wrong page or ignores the tag entirely. Shopify keeps no version history of these head tags, so there is no native undo; the fix has to happen at the source in the theme or app.
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.
Stop the source: open one affected product, view source (Cmd/Ctrl+U) and search for "canonical". If you see two rel="canonical" tags or one pointing to the wrong URL, pick ONE owner โ either turn off Yoast's canonical output or remove the theme's default canonical (Online Store > Themes > Edit code, usually the <head> in theme.liquid) so exactly one remains.
Set the canonical to the right URL: each product's canonical should point to its own clean /products/handle URL โ not a /collections/.../products/ path or a ?variant= URL. Confirm the single remaining tag resolves to a 200, self-referencing URL.
Re-crawl and confirm in Search Console: run URL Inspection > Test Live URL on a sample product to compare the "User-declared canonical" and "Google-selected canonical" โ once they match, click Request indexing, and watch the Pages report's "Alternate page with proper canonical tag" entries resolve.
Going forward, keep a daily snapshot of your handles and SEO fields with bulk-change alerts so the day an app changes canonical behavior or rewrites handles across your store you're flagged โ with the app named โ and can compare against yesterday's known-good state instead of auditing source code page by page.
Source: Yoast SEO for Shopify documentation (canonical URL handling and theme modifications); Google Search Central: consolidate duplicate URLs (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.