Shopify SEO: what the platform fixes, what it leaves to you
You can rank a Shopify store without fighting the platform. Shopify sets clean defaults, but it also creates traps you must close. This guide shows what is fixed for you and what you still have to do, with concrete store examples.
By Théophile Louvart, founder of Porteur · Updated 14 September 2026 · Markdown
What Shopify gives you for free
Shopify handles core plumbing so you can focus on products and links. You do not need a plugin for basics.
- Fixed URL paths: /products/handle, /collections/handle, /collections/handle/products/handle, /blogs/name/handle, /pages/handle.
- Canonical from collection product URLs to the product URL, so /collections/mugs/products/red-mug points to /products/red-mug.
- An automatic sitemap.xml at your root that lists products, collections, blogs and pages.
- An editable robots.txt since 2021 with robots.txt.liquid.
- Title and meta description fields on products, collections, blogs and pages.
- Alt text per image in the media editor.
- Most themes ship Product, Offer and Breadcrumb structured data. Many include AggregateRating and Organization. Check and fix, do not assume.
- URL redirects in the admin to manage 301s when you rename or merge.
These defaults are sound for Google Search and Images. They do not complete your work for Shopping, data quality or speed.
What Shopify leaves to you
You choose content, data completeness, crawl scope and speed. This is where stores win or stall.
- Unique product copy. The manufacturer’s text alone is duplicate across stores.
- Deciding which URLs should be indexable in collections, tags and vendors.
- Structured data accuracy for price, availability and reviews.
- Merchant Center feed setup and consistency with on page data for free listings in the Shopping tab.
- Category page content and internal links to subcategories and top products.
- Pagination and filters that do not flood Google with thin combinations.
- Handling out of stock and discontinued products.
- Keeping Core Web Vitals green while you add apps, scripts and pixels.
URL structure and canonicals on Shopify
Google’s e commerce guidance is simple here. One URL per product. Variants either roll into the parent with a canonical or get their own URL only if buyers search for them.
Shopify already canonicals /collections/handle/products/handle to /products/handle. Keep that. Link to the product URL in menus and featured grids. Use the collection path only for user flow inside a collection, not as your main link target across the site.
Example: yourproduct.com/products/red-mug is the canonical. A link on /collections/mugs to /collections/mugs/products/red-mug is fine for browsing. Do not index the collection path as the primary product URL, the canonical says otherwise and you split signals if you force it into the index with links and sitemaps.
Parameters on Shopify collection pages appear for sorting and filtering. Keep parameter names minimal and consistent. Canonical should stay on the unfiltered collection. If a variant like /products/red-mug?color=blue has clear search demand, give Blue its own variant URL with distinct content and internal links, or keep it as a selectable option on the parent with proper structured data for variant images and availability. Do not do both for the same intent.
Structured data and Merchant Center: cover both routes
Google can read your product data two ways. On page with structured data. In a feed to Merchant Center, which powers free listings in the Shopping tab and paid ads. Use both. Keep them consistent on price, availability and identifiers as of 2026.
- Check your theme’s JSON-LD. You want Product with offers, price, priceCurrency, availability, review and aggregateRating if you have genuine reviews, and BreadcrumbList.
- Run a few URLs in Google’s Rich Results Test. Fix missing or wrong fields. Do not inject duplicate Product markup twice on the same page.
- Set up a Merchant Center feed. Shopify’s built in Google channel or a feed app can work. The feed must match the page: title, price, condition, availability, GTIN or MPN.
- Mark out of stock on the page and in the feed. Keep the URL live when the product will return. Offer alternatives on the page.
- Put organization details and logo once sitewide, not on every product.
A fixed product looks like /products/red-mug with JSON-LD Product showing a price in the right currency, InStock, an image per variant, and an aggregateRating only if sourced from real customer reviews, not your own claims. The same price and status appear in your Merchant Center feed for that SKU. These are examples, not measured on your store.
Titles, descriptions, copy and images: do the work
You get fields, not content. Write for buyers and search. Keep titles around 60 characters and descriptions that earn a click. Do not stuff keywords.
- Product titles: Brand, model or key feature, variant if it matters. “Acme Red Mug, Ceramic Coffee Cup”.
- Meta descriptions: one crisp reason to pick it. “Dishwasher safe ceramic mug with a comfort handle. Free returns.”
- Product descriptions: unique, helpful, with specs a buyer checks before paying. Do not paste the catalogue text alone.
- Images: descriptive alt text like “red ceramic mug, side view”. One image per variant.
- Collections: an H1, a two sentence intro that says what is here, links to subcategories, and featured products.
- Reviews: use a trusted app to collect real reviews, then expose aggregateRating in the product structured data. No self serving reviews on your own Organization markup.
A fixed collection title looks like “Ceramic Coffee Mugs”. The description is two lines, not a wall of text, above the grid. The grid links to the product canonical URLs.
Pagination and filters on collections
Shopify paginates collection grids. Google does not use rel next or prev since 2019. Treat each paginated page as indexable with its own canonical, or give users a view all page if your grid is small.
- Link to page 2, 3, 4 with standard href links so Google can crawl them.
- Keep a consistent sort order so products do not jump between pages on every visit.
- If you expose filtered URLs, only index combinations that match real demand like “red ceramic mugs”. Keep the rest out with robots.txt patterns or noindex templates.
- Leave the canonical of filtered pages on the base collection unless you created a dedicated landing page for that facet with unique content and internal links.
Out of stock, variants and discontinued products
Do not waste the equity a product URL earns. Handle stock and end of life with clear rules Google documents for e commerce.
- Temporarily out of stock: keep the URL live. Mark availability in structured data and on the page. Offer close alternatives and let users sign up for a back in stock alert.
- Variants: if colours or sizes have distinct demand, consider separate URLs with unique images and copy. If not, keep them as options on one canonical URL with variant images exposed in structured data.
- Gone for good: 301 to the closest relevant product or to the parent category if no close match exists. If there is no replacement, a 410 is acceptable. Update internal links.
Speed on Shopify: apps, images, scripts and Core Web Vitals
Themes are fast until you add weight. Each app can inject scripts, styles and third party requests. On mobile, a few extras push LCP over 2.5 seconds and INP past 200 ms.
- Audit installed apps quarterly. Remove ones you do not need. Ask the vendor how to load only on pages that use the app.
- Compress and resize images. Use Shopify’s responsive images and lazy load below the fold. Provide a fast first image for each product variant.
- Limit third party scripts. Queue chat, reviews and A/B testing after user interaction where possible.
- Inline or defer non critical CSS and JS. Keep render blocking to a minimum. Test with PageSpeed Insights and WebPageTest.
- Use system fonts or well tuned web fonts. Preload the first font if you must. Avoid layout shifts. Keep CLS under 0.1.
- Track Core Web Vitals in Search Console. Fix the templates that cause most issues rather than chasing single URLs.
Spam policies and AI content: the safe line
As of 2026, Google’s spam policies target scaled content abuse, site reputation abuse and expired domain abuse. The helpful content signals sit in core ranking. AI assisted writing is fine. Flooding your store with thin auto pages is not. Each page should answer a buyer’s question or hold data of its own.
A compact Shopify SEO checklist for a new store
Set the base structure
Create collections for demand led categories like /collections/ceramic-mugs. Add a short intro and links to subcategories. Link to product canonicals sitewide.
Write product titles and copy
Use clear product titles and unique descriptions. Add one image per variant with alt text. Enable reviews you will show in markup.
Check structured data
Run /products/* in Rich Results Test. Ensure Product, Offer, availability, price, review, BreadcrumbList are valid. Remove duplicates.
Configure robots and sitemap
Leave the default sitemap.xml. Edit robots.txt.liquid to Disallow low value tag or vendor patterns. Keep all core paths crawlable.
Decide on filters
Pick the 2 or 3 facet combinations with demand to index. Keep the rest noindexed or blocked. Keep canonicals on base collections.
Handle stock states
Keep temporary OOS pages live with availability set. Plan 301s for discontinued items to the nearest alternative or category.
Set up Merchant Center
Install the Google channel or a feed app. Ensure feed titles, prices and availability match the page. Opt into free listings.
Trim apps and test speed
Remove unneeded apps. Optimise images. Test mobile LCP, CLS and INP. Fix templates that fail in PageSpeed Insights.
Map redirects
Use URL redirects in Shopify when you rename products or collections. Update internal links. Confirm 301s in a crawler.
Track and iterate
Verify Search Console. Watch the Performance report for queries like “ceramic coffee mugs”. Improve titles and content on pages that show but never get clicks.
Questions
Start with Google Search Console. It shows the queries and pages that move the needle. For crawling, a desktop crawler helps you audit canonicals, titles and status codes. Choose one you can run monthly and act on. Apps that claim auto SEO often add weight without fixing content or links.
Yes. The platform’s defaults are clean, and you can rank with good content, links and fast pages. The limits are known: fixed paths and theme code you do not fully control. For most stores, the trade is fine. You spend time on product data and links instead of plumbing.
You can do the core work yourself: write product copy, tune collections, set structured data, and keep speed in check. Spend where it saves time, like a reviews app or a feed tool. Paying an agency makes sense when you need content at scale or a migration. The cost depends on hours, not a fixed platform tax.
There is no single best app. Use a reviews app you trust, a feed app if you need advanced rules, and maybe an image optimiser. Avoid apps that promise rankings by adding generic tags or pages. Each app adds scripts and can slow pages, so install only what you will use.
A blog helps when it answers buyer questions that lead to products. Use /blogs/ for guides like “How to choose a travel mug”. Link to your collections and products. If you will not keep it fresh, skip it and invest in stronger category and product pages first.
Only when people search for them, like “blue ceramic mug”. If you create separate URLs, make the pages distinct with images and copy, and link to them. Otherwise keep variants as options on the parent and expose variant details in structured data.
Check my site, free
Want a quick Shopify SEO read on your own store? Paste your URL and get three findings from your site, your searches and your rivals in about thirty seconds, free.
- Free check, no card
- Read-only, your own accounts
- Readable by your agent
Read next
- GuideE-commerce SEO for a small store: the pages, the data, the structure
- GuideProduct page SEO: what a buyer and a crawler need on the page
- GuideCategory page SEO: the page that ranks for the product type
- GuideFaceted navigation SEO: which filters to index and how to hide the rest
- GuideOut of stock product pages: keep, redirect or retire
- GuideCore Web Vitals for a product site: the three numbers
- GuideSquarespace SEO: the settings that exist, the ones that do not
- GuideAn SEO audit checklist for a small site: forty checks in order