Shopify 404 errors: where they come from and how to fix them

A 404 means someone asked your store for a page that isn't there. On a Shopify store that usually happens for boring, fixable reasons: a product was deleted, a handle was changed, a collection was renamed, or a link was typed by hand and never checked.

This guide covers where Shopify 404s come from, how to tell which ones matter, and how to fix each kind.

Where Shopify 404s come from

Deleted or archived products. When a product is deleted, its URL (for example /products/linen-shirt) stops working. Any menu item, collection description, blog post or homepage section that linked to it now points at a 404. Archiving or setting a product to draft has the same effect on the storefront.

Changed handles. The handle is the last part of a product, collection or page URL. If you edit it, Shopify offers a "Create a URL redirect" checkbox. If that box was unchecked, or the change came from a bulk edit or an import, the old URL simply stops resolving.

Hand-typed links in content. Product descriptions, pages and blog posts often contain links that were pasted from the browser at some point. Those links don't update when the thing they point to changes. They are the most common source of 404s that nobody notices, because no system owns them.

Theme and menu leftovers. Menus, announcement bars, footer links and theme sections keep their own copy of a URL. Switching themes or reorganising collections can leave a few of these pointing nowhere.

Old URLs from a previous platform. If the store moved to Shopify from another platform, links from other websites and old emails may still use the old URL structure.

Not every 404 is a problem

A 404 for a URL that should never have existed is normal. Someone mistyped an address; a bot guessed a path. Google's own documentation says 404s on their own generally don't affect how the rest of a site performs in search.

The 404s worth your time are the ones you caused:

  • Links inside your own store that point to a missing page. Shoppers click these, so they cost you trust and sometimes a sale.
  • Old URLs that other sites link to. Those links carried visitors and search value to a page that no longer exists.
  • Pages listed in your sitemap that return 404. Your sitemap is supposed to list pages that exist.

How to find them

There are three useful places to look.

  1. Google Search Console. The Pages report lists URLs Google tried to crawl and couldn't, under "Not found (404)". It's good for URLs that outside sites link to, but it is slow to update and doesn't tell you which of your own pages contains the bad link.
  2. A crawler. A crawler visits your public pages and follows each link. Our free checker does a small version of this: it reads your sitemap, opens up to 50 public pages and lists links and images that fail. Anything that walks the public storefront can only see what a visitor sees.
  3. Your content itself. Links in product descriptions, pages and blog posts live in your Shopify admin. Scanning them there finds problems on products that aren't currently published or linked from anywhere, which a public crawl can't reach.

How to fix each kind

The page should still exist. Restore the product, set it back to active, or recreate the page. This is the right fix when it was removed by mistake.

The page moved. Create a redirect from the old URL to the new one on the URL redirects page in your Shopify admin (search "URL redirects" in the admin search bar). Redirects are the right tool for URLs that live outside your control, such as links on other websites, in old emails and in search results.

Your own content links to the wrong place. Edit the link itself. A redirect would work here too, but it leaves the wrong URL in your content and adds a hop every time someone clicks. If the link lives in a menu, change the menu item. If it's in a product description or blog post, open that item and update the link.

The product is gone for good. Point links at the closest useful page, usually the collection the product belonged to. Avoid redirecting everything to the homepage; it confuses shoppers and search engines treat mass homepage redirects much like 404s.

Keep it from coming back

  • Leave the "Create a URL redirect" box checked when you change a handle.
  • Before deleting a product, search your blog posts and pages for its handle.
  • Prefer menu links and collection links that Shopify manages over hand-typed URLs in descriptions.
  • Re-check after big changes: a theme switch, a catalogue clean-up or a migration.

Where AssetGuard fits

We build AssetGuard, a Shopify app that scans your products, collections and blog articles for broken links and missing images from inside your admin, shows where each one is, and repairs the link in the content itself rather than adding a redirect. If you'd like to see what's broken on your public pages first, the free checker needs nothing but your store's address.