How to audit a Shopify store

Audit a Shopify store by crawling the storefront and checking four things the platform creates for you: duplicate product URLs under collections, app scripts slowing every page, thin or manufacturer-copied product descriptions, and image weight. Shopify handles canonicals, sitemaps and clean URLs itself, so those four are where the work is.

Last updated 2026-07-28

Why does the same Shopify product have two URLs?

Because Shopify serves every product at both /products/handle and /collections/collection-name/products/handle by design, so a product in three collections is reachable at four addresses. Shopify sets the canonical on all of them to the clean /products/handle version, which is the correct behaviour and means this is usually not a problem you need to solve.

It becomes a problem in two situations. Themes and apps sometimes link internally to the collection-prefixed variant, which spreads internal link equity across URLs that should not be competing; and a small number of themes break or omit the canonical tag entirely, at which point Google is left choosing between duplicates on its own.

So the check is specific: crawl the store and confirm every product page carries a canonical pointing to a single clean /products/ URL, then look at which variant your own navigation and collection grids actually link to. The canonical URL guide covers what a correct self-referencing canonical looks like.

Why is my Shopify store slow?

Installed apps, in the overwhelming majority of cases — each one can inject its own scripts into every page load, regardless of whether that page uses the feature. Review widgets, popups, upsell tools, subscription managers and live chat are the usual suspects, and their cost is cumulative in a way no theme choice can offset.

The trap is that uninstalling an app does not reliably remove its code. Many apps add snippets to theme.liquid or to section files during installation, and those leftovers keep loading long after the app is gone and the subscription is cancelled. Auditing a theme for orphaned snippets after every uninstall is tedious and worth doing anyway.

Images are the second cost. Shopify will serve resized variants if the theme asks for them, but a 3000-pixel product photo rendered into a 400-pixel grid cell is common, and a collection page showing fifty of those is heavy before a single app has loaded.

  • Audit theme.liquid for orphaned app snippets after uninstalling anything.
  • Defer non-critical third-party scripts so they do not block first render.
  • Use Shopify's responsive image filters instead of full-size uploads.
  • Limit the number of products rendered per collection page, and paginate rather than loading a hundred at once.
  • Compare a product page against a collection page in the same audit — the gap between them tells you whether the weight is images, apps or the theme.

Which Shopify URLs should not be indexed?

Cart, checkout, account and internal search URLs should stay out of the index, along with filtered and sorted variants of collection pages. Shopify ships a default robots.txt that already blocks most of the administrative ones, and since Online Store 2.0 that file can be customised through robots.txt.liquid if you need to.

Faceted navigation is the part that needs your attention. Filter and sort parameters generate a combinatorial number of collection URLs, and while these normally canonicalise back to the clean collection, it is worth verifying rather than assuming — a theme customisation is all it takes to break the pattern.

Clean collection pages themselves should absolutely be indexed. They are frequently the pages that rank for category-level queries, and they are often the most neglected content on a store: a title, a grid, and nothing a search engine could describe. A short block of genuine category copy is usually the cheapest ranking improvement available.

Why do my product pages get flagged as thin content?

Because the description is the manufacturer's, and it appears word for word on every other store selling the same item. Search engines have no reason to prefer your copy of a paragraph that exists on two hundred domains, and an audit will flag the page as thin even when the word count looks adequate.

Rewriting descriptions for your best sellers is normally the highest-return content work on a store. It does not need to be long — what it needs is information the manufacturer did not supply: who the product suits, what it is like in practice, what it is not good for, how it compares to the alternative you also stock.

This is the difference between fixing thin content and padding it. Adding three hundred words of adjectives changes nothing; adding sizing guidance, materials detail and an honest comparison changes the page's reason to exist. The thin content guide covers how the check is evaluated.

How do I audit a Shopify store page by page?

Crawl the storefront with include and exclude path rules so you can look at /products/ and /collections/ as separate populations, because they fail in different ways and averaging them together hides both. Product pages tend to fail on content and image weight; collection pages tend to fail on payload size and missing descriptive copy.

Per-page Lighthouse results are what make the comparison possible. Once you can see a hundred product pages side by side, an outlier is diagnosable — one product with a 6 MB hero shot — and a uniform result is a theme or app problem affecting the whole catalogue.

Audra runs Lighthouse, axe-core, broken-link checking and its own SEO and answer-engine checks across every crawled page, with a default cap of 100 pages that you can raise, and include or exclude globs to slice the catalogue. It is a desktop app for macOS (Apple Silicon, signed and notarized) or Windows (64-bit) that drives your own installed Chrome and keeps all crawl data on the machine, so a password-protected pre-launch store can be audited as easily as a live one. Reports export as self-contained HTML or print-ready PDF, and it is $19 once with a free 7-day trial rather than a subscription.

The same crawl-everything logic applies on other platforms — WordPress sites fail through plugins rather than apps, but the diagnostic method is identical.

Frequently asked questions

Does Shopify handle SEO automatically?

It handles canonicals, sitemaps and clean URLs well. Titles, descriptions, content quality, image weight and app performance are still yours to manage.

Why are my Shopify pages slow despite a fast theme?

Usually third-party app scripts and oversized images rather than the theme. Audit with apps disabled to isolate the cost of each.

Should collection pages be indexed?

Yes, they often rank for category terms. Filtered and sorted variants of them should not be — check that those carry canonicals to the clean collection URL.

Does uninstalling a Shopify app remove its code?

Not always. Apps that add snippets to theme.liquid or section files frequently leave them behind, so those keep loading until you remove them by hand.

Related guides