shopify-seolisted
Install: claude install-skill keupera/seo-skills
# Shopify SEO
Shopify handles a lot correctly out of the box and imposes a handful of structural problems you can't remove. Knowing which is which saves weeks of trying to change things the platform won't let you change.
## The URL structure you're stuck with
```
/products/handle canonical product URL
/collections/name/products/handle same product, inside a collection
/collections/name collection page
/collections/all every product
/pages/handle static pages
/blogs/blog-name/article-handle blog posts
```
You cannot remove `/products/`, `/collections/`, `/pages/` or `/blogs/` on standard plans. Stop trying. The prefixes cost essentially nothing and the workarounds cost real stability.
**The duplicate that matters** is `/collections/x/products/y`. Every product is reachable from every collection that contains it, generating a URL per combination. Shopify canonicalises these to `/products/handle` by default, which is correct, but two things routinely break it:
- A theme that outputs collection-scoped links everywhere, so all internal links point at non-canonical URLs.
- An app or theme edit that overrides the canonical tag.
Check both:
```bash
curl -s https://shop.example.com/collections/shoes/products/blue-runner \
| grep -oP '(?<=rel="canonical" href=")[^"]+'
# must return https://shop.example.com/products/blue-runner
```
In `theme.liquid`, the can