Shopify SEO: The Platform Limits, Defaults and Fixes That Decide Rankings
Ishant
Published : September 25, 2026 at 9:30 am
Updated : September 29, 2026 at 5:15 pm
Ishant
Ishant Sharma is the Founder and CEO of Hustle Marketers, a Google Partner digital marketing agency. With 12+ years of experience in Google Ads, Meta Ads, SEO, and e-commerce PPC, he has helped 2,500+ brands generate $780M+ in trackable sales. Upwork Top Rated Plus with 100% Job Success Score. Ishant Sharma is the digital marketing specialist, not the Indian cricketer of the same name.
Key takeaways
- Most Shopify SEO advice repeats two claims that are wrong. Shopify does not block filtered collection URLs by default, and it does not block collection-scoped product URLs by default. Both are checkable in any store’s robots.txt in about ten seconds.
- Shopify’s default product schema clears Google’s required bar for merchant listings and misses eight recommended fields, including sku, gtin, shippingDetails, hasMerchantReturnPolicy, aggregateRating and review. That last pair is the whole reason review apps exist.
- Shopify canonicalises page 2 of a collection to itself. That is exactly what Google asks for, so the common complaint about it is backwards.
- Shopify ships llms.txt and agents.md on every store by default. Google states plainly that it ignores those files.
- A 90+ mobile score is not the normal outcome on Shopify. In a study of 400+ stores, the best cohort, stores running one or two apps, averaged 53 out of 100 on mobile.
- If your SEO crawler returns almost nothing on a Shopify store, that is often bot protection rather than a broken site. Shopify shipped crawler access keys in August 2025 specifically for this.
Table of Contents
- What actually makes Shopify SEO different from SEO on any other platform?
- What can you not change on Shopify, and what can you?
- How deep can your site architecture go on Shopify?
- What structured data does Shopify emit by default, and what is missing?
- Why do Shopify stores lose rankings after enabling Markets?
- How fast can a Shopify store realistically be?
- Why do SEO audit tools return almost nothing on some Shopify stores?
- Does a Shopify store need llms.txt and agents.md for AI search?
- What do Shopify store owners actually report going wrong?
- What does Shopify SEO actually cost?
- How do you choose a Shopify SEO agency without getting burned?
- What do the top ranking pages on this topic leave out?
- Why choose Hustle Marketers or Ishant Sharma for Shopify SEO
- Shopify SEO FAQs
Shopify is a good platform to rank on and a frustrating one to work on. The parts that matter most to SEO are the parts you do not control: the URL structure, the default robots rules, the canonical logic, the schema output and the bot protection. Everything else, the content, the architecture, the speed work, sits on top of those constraints.
This guide is written for store owners and the agencies working on their stores. Every platform behaviour below was checked against Shopify’s own documentation, Google’s documentation, live store files or dated community threads on 23 September 2026. Where a claim comes from a vendor blog rather than a primary source, it says so.
If you want the platform comparison rather than the Shopify detail, we covered that in platform-specific ecommerce SEO and BigCommerce vs Shopify for SEO.
What actually makes Shopify SEO different from SEO on any other platform?
Three things, and none of them is content.
The first is that the URL structure is fixed. You can edit the handle at the end of a URL. You cannot remove or nest the `/collections/` and `/products/` segments. A Shopify Community moderator put it in one line: “The ‘products’ and ‘collections’ part of the URL cannot be changed.” A merchant in a separate thread was blunter: “I cannot for the LIFE OF ME understand why in shopify you cant modify URL structure.”
The second is that several decisions Google treats as yours are made by the platform. The canonical tag comes from one Liquid object. The hreflang tags are injected automatically. The product schema comes from a filter you do not control. The robots rules ship with defaults you can override but are advised not to.
The third is that the platform actively updates those defaults underneath you. Shopify’s own warning about editing robots.txt says the reason plainly: “The default rules are updated regularly to ensure that SEO best practices are always applied.”
That last point is the one agencies underestimate. A robots.txt you hard-coded in 2023 stops receiving Shopify’s updates.
What can you not change on Shopify, and what can you?
| Area | Controllable | How |
|---|---|---|
| URL handle | Yes | Per product, collection, page and blog |
| /collections/ and /products/ segments | No | Platform-fixed |
| robots.txt rules | Yes, with a warning | robots.txt.liquid, unsupported customisation |
| Canonical tag | Barely | One Liquid object, no per-template control documented |
| hreflang | No | Injected via content_for_header |
| Product schema | Partly | Theme filter output, extendable with metafields |
| Sitemap contents | No | Auto-generated |
| Hiding a page from search | Yes, indirectly | A metafield, namespace seo, key hidden, value 1 |
Can you change the collections and products segments in a URL?
No. This is the most common request in the Shopify SEO space and the answer has not changed. There is no hierarchical nesting either, so you cannot build `/mens/shoes/running/` as a URL path. You can build that hierarchy in navigation and internal linking, which is where it actually has to live.
What does Shopify’s default robots.txt actually block?
We pulled the live robots.txt from two large Shopify stores on 23 September 2026 and the collection-related rules were identical on both:
Disallow: /collections/*sort_by*
Disallow: /*/collections/*sort_by*
Disallow: /collections/*+*
Disallow: /collections/*%2B*
Disallow: /collections/*%2b*
Disallow: /collections/*filter*&*filter*
Disallow: /*/collections/*filter*&*filter*Read the last two carefully, because this is where almost every article on this topic gets it wrong.
Are filtered collection URLs blocked by default?
Only the multi-facet ones.
The rule is `/collections/filter&filter`. It requires two `filter` parameters joined by an ampersand. A single-facet URL, the kind produced when a shopper picks one colour, is not matched by that rule and stays crawlable by default.
That is a meaningful difference. “Shopify blocks filtered URLs” is the version you will read everywhere, and it is not what the file says. If you have a large catalogue with heavy single-facet filtering, those URLs are crawlable unless you do something about it, and you may genuinely want some of them to be.
Shopify’s filtering documentation, for the record, contains no SEO, canonical, noindex or crawl guidance at all. The parameters are `filter.p.` for product-level and `filter.v.` for variant-level, and that is as far as the docs go.
Are collection-scoped product URLs blocked?
Not by default, on the evidence we could gather.
Two of the three stores we checked had no rule blocking `/collections/x/products/y`, and a collection-scoped product URL on one of them fetched normally. The third store, a very large apparel brand, does carry `Disallow: /collections//products`, and a fetch of that path was refused. That looks like a custom addition rather than a platform default, though we cannot rule out that the default changed and that store has a stale robots.txt.liquid.
The honest version is this: check your own store’s robots.txt before you assume anything. It takes ten seconds and it is the only source of truth for your store.
One related rule worth knowing if you use Shopify Collective: one store carried a disallow targeting product handles ending in `-remote`, which are products syndicated from another Shopify store.
What happens to variant URLs?
Every Shopify product has a default variant even when it has no options, so `?variant=` can appear on any product URL. A merchant explained why in a community thread: “in Shopify its the variant id of the product that is utilized to add a product to the cart.”
These get indexed despite canonicals more often than people expect. One merchant reported around 4,000 duplicate-URL errors in Search Console. Another put it plainly: “even with canonical the page URL with variant get indexed.”
Worth saying clearly: we could not verify what canonical Shopify emits on a collection-scoped product URL. Shopify documents the `canonical_url` object in a single line and publishes no specification of what it returns for those URLs, filtered collections or variant URLs. If that behaviour matters to your store, test it on your own store rather than trusting an article, including this one.
How does Shopify handle pagination canonicals?
Correctly, and this is the one place Shopify gets more criticism than it deserves.
Shopify canonicalises `?page=2` of a collection to itself, not to page 1. A merchant confirmed it in a thread: the page “is currently canonicalized to itself”. Google’s ecommerce guidance asks for exactly that: “Don’t use the first page of a paginated sequence as the canonical page.”
There is a genuine edge case though. `/collections/all?page=1` can end up canonicalised to a different URL and flagged as non-indexable by crawlers. One merchant’s attempt to fix it with a blanket canonical change “inadvertently created duplicate canonical issues across the entire site”, and reverting the code did not undo it. If you touch canonical logic in a theme, take a theme backup first.
How deep can your site architecture go on Shopify?
Shallower than most catalogues need. Shopify’s own help documentation states that most themes support up to two levels of nested drop-down menus, which is three levels in total including the top item.
That caps how much of your architecture you can express through the native menu. For a catalogue that genuinely has four or five levels of depth, the hierarchy has to be carried by collection pages linking to collection pages, by in-content links and by breadcrumbs, not by the menu.
There are hard limits on the filtering side too. Shopify’s Search and Discovery app allows up to 25 filters per store, a maximum of 100 values displayed per filter, 200 unique values per filter group and 1,000 filter groups. Collections with more than 5,000 products do not display filters at all. Collection templates paginate at 50 products per page.
Legacy tag URLs are the other architecture trap. `/collections/x/tag/y` URLs create duplicates, and one thread documented the pathological case where a tag matching a collection name produced a doubled path.
What structured data does Shopify emit by default, and what is missing?
This is the most checkable gap in the whole platform, and almost nobody writes it out field by field.
Shopify’s reference theme, Dawn, contains a single line inside its product JSON-LD block: `{{ product | structured_data }}`. The theme delegates entirely to a Liquid filter.
What does that filter actually output?
Shopify’s documented example output for a product contains exactly these properties: `@context`, `@id`, `@type`, `brand`, `category`, `description`, `image`, `name`, `offers` and `url`. The nested offer contains `@id`, `@type`, `availability`, `price`, `priceCurrency` and `url`. Products with variants output as `ProductGroup` rather than `Product`. The filter supports products and articles only.
What does Google require, and what does it only recommend?
Google requires `name`, `image` and `offers` on a product for merchant listings, and inside the offer, a price and a currency. Shopify’s default output clears that bar. Your products are eligible.
What Shopify does not ship are the recommended properties, and the list is long.
| Recommended by Google | In Shopify’s default output |
|---|---|
| brand, category, description, availability, url | Yes |
| sku, gtin, mpn | No |
| aggregateRating, review | No |
| shippingDetails, hasMerchantReturnPolicy | No |
| itemCondition, priceValidUntil | No |
| color, size, material, pattern | No |
Why do you still need a review app?
Because of that second row. Google’s product snippet documentation requires `name` plus one of `review`, `aggregateRating` or `offers`. Shopify emits offers, so your products are eligible for product snippets. They are not eligible for review stars, because neither `review` nor `aggregateRating` is in the default output.
That is the actual technical reason review apps are not optional on Shopify. It is not a marketing argument.
What happens with variants?
Google requires `productGroupID` on a `ProductGroup`, or `inProductGroupWithID` on the variants, plus `variesBy` to declare what varies and `hasVariant` or `isVariantOf` to connect parent and child. Shopify’s documented example emits none of `productGroupID`, `variesBy` or `hasVariant`.
If your store sells in sizes and colours, that is the gap between your variants being understood and being guessed at.
One caution before you rush to replace it: Shopify’s own schema has regressed before. A Dawn 15 issue reported that a 13 digit number from an unknown source replaced the SKU as the primary product identifier, duplicate `@id` fields appeared, and the category began pulling from product type rather than the Google category. The reporter noted that “In Dawn 14 the Product Schema for the product data renders correctly.” Validate after every theme update, not just after your own changes.
Why do Shopify stores lose rankings after enabling Markets?
Because Markets changes three things at once and any of them can break product eligibility.
A merchant documented the sharpest example we found. After enabling Markets around September 2025, valid product items in Search Console fell from roughly 70,000 to about 670. The community diagnosis, and it is a community diagnosis rather than a Shopify confirmation, pointed at geolocated display prices conflicting with a hard-coded currency in the JSON-LD, a malformed offer URL that duplicated the path segment, and no hreflang tags appearing despite Markets being live.
Shopify’s documentation says the opposite should happen: each market version is supposed to get a self-referencing canonical and connecting hreflang tags automatically. Shopify also warns you not to add your own hreflang on top, because the automatic tags are injected through `content_for_header` and manual ones “can produce duplicate or conflicting annotations.”
The practical rule is to treat a Markets rollout as a migration. Baseline Search Console valid items, currency output and hreflang before you enable it, and check all three within a week.
A second, bigger example from the same forum: a merchant reported traffic down 33 percent and revenue down 26 percent, with Merchant Center approved products falling from 196,000 to 48,000 in four weeks, after a platform migration combined with 20 languages added through a translation app. The symptom was hundreds of thousands of URLs blocked by robots.txt. A hired team spent four weeks on canonicals and robots.txt without fixing it.
How fast can a Shopify store realistically be?
Slower than the advice suggests, and that is worth saying to clients before the first report rather than after.
What does Shopify’s own speed report measure, and what are its limits?
It measures the three Core Web Vitals from real user data: LCP, INP and CLS. The limits are documented and they matter for reporting cadence. Data can be delayed by up to 36 hours. Only the last 90 days are available. It is calculated over a rolling 30 days. New or password-protected stores may have no metrics at all. And Shopify notes the obvious but frequently ignored point that device, network and location are outside your control.
How much do apps actually cost you in speed?
The most useful dataset we found is a speed-optimisation vendor’s own study of more than 400 active Shopify stores, app-fingerprinted from the page source across home, collection and product templates and matched to mobile PageSpeed scores. Treat it as a vendor study with an obvious commercial interest, and note that it is still an original dataset with a stated method.
| Detectable apps | Average mobile score |
|---|---|
| 1 to 2 | 53.2 |
| 3 to 5 | 49.8 |
| 6 to 10 | 45.2 |
| 16 or more | 38.3 |
The average store in that sample ran 5.94 detectable apps, the median 4, and the 90th percentile 13.
What score should you actually aim for?
Look at the top row again. Even stores running one or two apps averaged 53 out of 100 on mobile. Community sentiment matches: one merchant reported getting a store from about 65 to 92 by switching to Dawn, stripping apps and reoptimising images, while another replied that “Many successful Shopify stores perform just fine in the 60-80 range”. A third thread put it more bluntly: “most successful Shopify stores don’t have a high score”.
Two hard numbers are worth knowing. Shopify grades an app’s storefront performance impact with Lighthouse on a weighting of home 17 percent, product details 40 percent and collection 43 percent. Product and collection templates carry 83 percent of the weight between them, which is also where your SEO traffic lands. And Theme Store entry requires a minimum average Lighthouse performance score of 60 across home, product and collection.
Why did the store slow down after we removed apps?
Because uninstalling an app does not remove the code it added. A Shopify Community post on exactly this states it in one line: “uninstalling a Shopify app does not remove the code it added to your theme.” The leftovers hide in four places: script and link tags in `theme.liquid`, snippets and the render calls that include them, custom Liquid sections, and orphaned assets.
If you have ever inherited a store with a mysterious speed drop, this is the first place to look.
Why do SEO audit tools return almost nothing on some Shopify stores?
Because Shopify’s bot protection blocks them, and this is misdiagnosed constantly.
Shopify shipped crawler access keys in August 2025 so merchants can authorise “custom crawlers, scripts, or tools to access your public Shopify online store” for purposes including “accessibility and SEO audits, automated testing, data analysis”. It works through Web Bot Auth, with `Signature-Input`, `Signature` and `Signature-Agent` headers and keys generated in the admin.
The existence of that feature is the proof that Shopify expects merchants to run tools that automate SEO tasks against their own store. If a crawl of a Shopify store comes back with a handful of URLs and a pile of timeouts, check whether the crawler is authorised before you start rewriting the site.
Does a Shopify store need llms.txt and agents.md for AI search?
This is where two primary sources sit in direct contradiction, and both are first-party.
What Google says
Google’s AI optimisation guidance is unusually blunt: “You don’t need to create new machine readable files, AI text files, markup, or Markdown to appear in Google Search”, and such files “will neither harm nor help your site’s visibility or rankings in Google Search, as Google Search ignores them.”
Google’s position on schema for AI is similar: structured data is not required for generative AI search and there is no special markup for it, though it remains worth doing because it makes you eligible for rich results. For ecommerce specifically, Google points at feeds rather than markup, naming Merchant Center feeds and Google Business Profiles.
What Shopify ships
Every Shopify store serves `/agents.md`, and by default `/llms.txt` and `/llms-full.txt` mirror it. You can override each through `llms-txt.liquid`, `llms-full-txt.liquid` and `agents-md.liquid` templates, and Shopify advises doing so only when the managed file does not cover your requirements.
The purpose is not Google. `agents.md` is described as the agent-facing description of a store that tells AI agents and shopping assistants how to discover its commerce capabilities, advertising protocol endpoints, browse URLs and published policies.
So both things are true at once. The files do nothing for Google Search and they are part of how agentic shopping surfaces read your store. Do not delete them, and do not sell them as a Google ranking factor.
How do you measure AI traffic?
Two surfaces exist now, and most people know about neither.
Search Console has a Generative AI performance report covering AI Overviews and AI Mode. It reports impressions, meaning how many times links to your site were shown inside a generative AI feature. It does not report clicks or position. It is still rolling out, it has an impressions threshold, and recent data is preliminary. Separately, AI feature traffic is already inside your normal Search Console reporting under the Web search type.
Merchant Center has an AI performance insights view showing performance for conversational shopping queries on AI Mode and AI Overviews, including share of voice against competitors. Availability is limited to English-language queries for Merchant Center accounts in Australia, Canada, India, New Zealand and the United States. The United Kingdom is not in that list.
That is the ecommerce-specific measurement surface, and it is a reason to keep the feed healthy even if you never run a Shopping campaign. We covered the organic side of that in free listings in Google Merchant Center and the difference between the two placements in free Shopping listings vs paid Shopping ads.
What about ChatGPT checkout and Shopify Catalog?
Shopify and OpenAI announced in September 2025 that merchants would be able to sell directly inside ChatGPT conversations, with orders landing in the Shopify admin and the merchant remaining merchant of record.
The part worth reading carefully is OpenAI’s own description of how products get chosen. “Product results are organic and unsponsored, ranked purely on relevance to the user.” Selection among competing sellers considers availability, price, quality, whether a merchant is the primary seller and whether instant checkout is enabled, and OpenAI states that “Instant Checkout items are not preferred in product results.” Merchants pay a fee on completed purchases which does not influence the results.
In January 2026 Shopify and Google announced the Universal Commerce Protocol, an open standard for AI agents to transact with merchants, alongside an Agentic plan that lists products in Shopify Catalog.
Can you opt out?
Partly, and the wording matters. Shopify states that eligible products are automatically discoverable by AI channels through Shopify Catalog “as well as other methods such as web crawling and indexing”. You can remove Catalog access for individual AI channels, but “your products might still be displayed through other external discovery and listing methods” and Shopify “can’t control any other ways in which your products might be listed by AI channels”. Full suppression means setting the product status to unlisted.
For the error by error version of this, including every Search Console status, Merchant Center disapproval and Liquid failure with its fix, see our catalogue of Shopify SEO issues.
What do Shopify store owners actually report going wrong?
Reading community threads rather than agency blogs changes the picture. The recurring themes, with the real wording:
- New stores expecting speed. A thread on struggling to rank a new store produced the most useful correction we read: “Google Search Console indexing only means Google has discovered your page.” The consensus timeline in that thread was three to six months.
- Collection pages sitting in “Discovered, currently not indexed”, usually explained as low crawl priority on newer sites rather than a technical fault.
- Sudden drops with no site change. One merchant went from 20 to 25 daily clicks to zero overnight, with average position moving from 24 to 59 and no errors in Search Console. That thread has no resolution, which is itself worth knowing.
- Speed scores collapsing after app removals, traced to leftover code in `theme.liquid`.
- LCP over four seconds on content templates, fixed at theme and asset level rather than through the platform.
What does Shopify SEO actually cost?
The best dataset on the open web is Ahrefs’ survey of 439 SEO service providers with manual verification, published December 2023 and updated August 2024. It is not Shopify-specific, but it is the only figure set with a stated sample and method.
| Measure | Figure |
|---|---|
| Average monthly retainer | $2,917 |
| Most common retainer band | $501 to $1,000 (20.4 percent) |
| Providers charging $2,000 a month or less | 68.8 percent |
| Average hourly rate | $111 |
| Most common per-project band | $2,501 to $5,000 |
Geography moves those numbers more than anything else. In the same survey, 79.1 percent of US and Canadian providers charged $1,001 a month or more, while 76 percent of India-based providers charged $1,000 or less. Services scoped worldwide averaged $3,474 a month against $1,557 for local-only work.
For market-specific published rates: a UK Shopify specialist publishes a first-quarter fee of £4,000 to £8,000 a month dropping to £2,500 to £4,000 from quarter two, explicitly front-loaded. An Australian agency publishes ecommerce SEO at AUD 2,500 to 12,000 a month with one-off audits at AUD 1,500 to 5,000. Shopify’s own blog gives ecommerce SEO at $2,000 to $10,000 a month and technical audits at $2,500 to $15,000, though it cites no source for those ranges.
Our own fee structure is published on the PPC management pricing page, and the delivery scope for organic is on the Shopify SEO agency page.
How do you choose a Shopify SEO agency without getting burned?
What does Google itself say about hiring an SEO?
Google publishes guidance on this and it is more direct than anything an agency will write. “No one can guarantee a #1 ranking on Google. Beware of SEOs that claim to guarantee rankings, allege a ‘special relationship’ with Google.” It also says to be careful if a company is secretive or will not explain what it intends to do, and that “You should never have to link to an SEO.”
On access, Google’s advice during an audit stage is to “only grant read access to Search Console (at this stage, don’t grant them write access)”. And it is explicit that the risk sits with you: bad practice can result in a negative adjustment to your site’s presence in Google, or removal from the index.
The speed optimisation problem
A first-person account from someone who worked on the supply side of cheap speed-optimisation gigs describes injecting code that detects when a speed testing tool is running and temporarily disables elements to inflate the score. The line that matters: “The ‘fix’ doesn’t touch your actual store performance.”
If a vendor improves your PageSpeed score without your real user metrics in the Shopify web performance dashboard moving, that is the test to run.
Questions worth asking before you sign
| Question | What a good answer sounds like |
|---|---|
| What will you change in the theme, and who backs it up? | A named process and a duplicated theme before any edit |
| Will you install apps, and who removes the leftover code? | Named apps, and removal of the theme code at offboarding |
| What access do you need in week one? | Read access to Search Console, nothing more |
| Who owns the Search Console and analytics properties? | The client, always |
| Will you edit robots.txt.liquid? | Only with a documented reason, knowing it is unsupported |
| How will you measure AI visibility? | The Search Console generative AI report and Merchant Center insights |
| What does your reporting show when a month goes badly? | A real answer, not a slide of wins |
The contract detail people skip
Standard white-label and agency contract advice applies here too: intellectual property transferring on payment, a mutual non-disclosure, a non-solicit clause, service levels with defined turnaround and remedies rather than aspirations, and an indemnity covering the partner’s own errors.
What do the top ranking pages on this topic leave out?
We read the pages ranking for the main Shopify SEO agency and services terms in the US on 23 September 2026 before writing this. The strongest of them run 2,800 to 3,800 words, carry case studies with real numbers, and cover the technical ground at a headline level. None of them contains the platform detail in this guide.
| What the ranking pages cover | What none of them covers |
|---|---|
| Collections, product pages, themes and apps as service lines | The exact default robots rule and the single vs multi facet distinction |
| Structured data as a deliverable | The field-by-field list of what Shopify’s filter omits |
| Core Web Vitals as a deliverable | The 17 / 40 / 43 Lighthouse weighting and the real score distribution |
| AI search as a positioning line | Google saying it ignores llms.txt while Shopify ships it by default |
| Case studies with percentages | Where to measure AI impressions, and which countries can |
| Migration and Markets as services | The Markets failure pattern with the Search Console numbers |
| An FAQ | Why SEO crawlers fail on Shopify, and the fix Shopify shipped for it |
Why choose Hustle Marketers or Ishant Sharma for Shopify SEO
Three reasons, and one limit.
We work on Shopify stores every week, not occasionally. That includes feed and Merchant Center work that most SEO teams hand off, which matters because the feed is now a measurement surface for AI search as well as an ads input. The published results on the ecommerce side include a Magento store grown to $14.3M in lifetime sales through SEO and 6X revenue in three months with Google Ads.
Ishant Sharma has worked in digital marketing since 2013 as a Google Ads, Microsoft Ads and SEO specialist. The delivery spans SEO, Google Ads, Microsoft Advertising, ecommerce PPC and Shopping feeds and AI search visibility, so a store that starts with organic does not need a second partner for paid or feed work.
You can engage it three ways. Full delivery sits on the Shopify SEO agency page, a dedicated resource on the Shopify SEO specialist page, and audit and roadmap work on the Shopify SEO consultant page. If paid is the priority first, the Shopify Google Ads guide is the place to start.
The limit: we will not promise a ranking position or a 90+ mobile score on a store running fifteen apps. The data above is why. We will tell you what is achievable on your theme and your app stack before you sign, which is a slower sales conversation and a better engagement.
Shopify SEO FAQs
Is Shopify good for SEO?
Yes, with constraints. The platform handles the basics correctly out of the box, including self-referencing canonicals on paginated collections, automatic hreflang for markets, auto-generated sitemaps and product schema that meets Google’s required fields. What it does not give you is control over the URL structure, the canonical logic per template, or the recommended schema fields. The ceiling is high and the work happens inside those limits.
Can you change Shopify URL structure to remove collections and products?
No. The handle at the end of the URL is editable, the `/collections/` and `/products/` segments are not, and there is no hierarchical nesting. Build the hierarchy through navigation, collection-to-collection linking, breadcrumbs and in-content links instead, which is where Google reads structure anyway.
Does Shopify block filtered collection URLs by default?
Only multi-facet combinations. The default rule targets `/collections/filter&filter`, which needs two filter parameters joined by an ampersand. A single-facet URL is not matched and remains crawlable. Check your own store’s robots.txt rather than trusting a general claim, because large stores frequently add custom rules.
Why do variant URLs get indexed even with canonical tags?
Because a canonical is a hint rather than a directive, and because Shopify puts a variant ID on product URLs by default, including on products with no options. Merchants regularly report variant URLs appearing in Search Console duplicate reports. Shopify publishes no specification for what its canonical object returns on variant URLs, so test it on your own store rather than assuming.
What structured data is missing from Shopify by default?
Shopify emits name, image, offers, brand, category, description, availability and url, which clears Google’s required fields for merchant listings. It omits sku, gtin, mpn, aggregateRating, review, shippingDetails, hasMerchantReturnPolicy, itemCondition, priceValidUntil, and variant properties including productGroupID, variesBy and hasVariant. The missing review and rating fields are the reason review apps are needed for star ratings.
Why did my Shopify traffic drop after enabling Markets?
The common pattern is a conflict between geolocated display prices and hard-coded currency values in the product JSON-LD, sometimes alongside malformed offer URLs and missing hreflang. One merchant documented valid product items in Search Console falling from around 70,000 to about 670 after enabling Markets. Treat a Markets rollout as a migration and baseline currency output, hreflang and Search Console valid items before and after.
What PageSpeed score should a Shopify store aim for?
Lower than most advice suggests. In a study of more than 400 stores, those running one or two detectable apps averaged 53 out of 100 on mobile, dropping to 38.3 for stores with 16 or more apps. Shopify’s own Theme Store entry bar is an average Lighthouse score of 60 across home, product and collection. Aim to improve your real user Core Web Vitals in the Shopify web performance dashboard rather than chasing a lab score.
Why does my SEO crawler return almost no pages on a Shopify store?
Usually bot protection rather than a site problem. Shopify introduced crawler access keys in August 2025 specifically so merchants can authorise third-party crawlers and tools for purposes including SEO audits, using signed request headers and keys generated in the store admin. Authorise the crawler before you diagnose anything else.
Does Shopify need an llms.txt file for AI search?
Your store already has one. Shopify serves agents.md by default and mirrors it at llms.txt and llms-full.txt. Google states that it ignores such files and that they neither help nor harm visibility in Google Search. They exist for agentic shopping surfaces rather than for Google, so leave them in place and do not treat them as a ranking factor.
How do you measure AI search traffic for a Shopify store?
Search Console has a generative AI performance report covering AI Overviews and AI Mode, reporting impressions only, with no clicks or position, and it is still rolling out. Merchant Center has AI performance insights for conversational shopping queries, including share of voice, available for English-language queries in Australia, Canada, India, New Zealand and the United States. AI feature traffic is also already inside normal Search Console reporting under the Web search type.
How long does Shopify SEO take to work?
The consensus in Shopify Community threads on new stores is three to six months before meaningful movement, and that assumes the content is not supplier copy and the store has some link acquisition. Indexation is not the milestone people think it is: as one community reply put it, Search Console indexing only means Google has discovered the page.
How much does Shopify SEO cost per month?
Survey data across 439 providers puts the average monthly retainer at $2,917, with the most common band $501 to $1,000 and 68.8 percent charging $2,000 or less. Geography matters more than specialism: 79.1 percent of US and Canadian providers charge over $1,000 a month. Published Shopify-specific rates range from around £2,500 to £8,000 a month in the UK and AUD 2,500 to 12,000 in Australia.
Should I edit robots.txt.liquid on Shopify?
Only with a documented reason. Shopify classifies it as an unsupported customisation, states that support cannot help with edits to the file, and warns that incorrect use “can result in loss of all traffic”. The bigger risk is silent: Shopify updates the default rules regularly, and a hard-coded replacement stops receiving those updates.
Why did my store get slower after uninstalling apps?
Because uninstalling an app does not remove the code it added to your theme. Leftovers sit in script and link tags in theme.liquid, in snippets and their render calls, in custom Liquid sections and in orphaned assets. Render-blocking scripts left in theme.liquid are the most common cause of an unexplained score drop.
Sources and verification
Platform behaviour was checked against Shopify’s own documentation: the theme SEO metadata guide, the canonical_url object, the robots.txt theme guide, the Help Center page on editing robots.txt, the storefront filtering docs, the Search and Discovery filter limits, the collection template docs, the drop-down menu documentation, the hreflang guide, the Markets SEO page, the app storefront SEO guide, the structured_data filter reference, the theme performance best practices, the app storefront performance guide, the web performance dashboard documentation, the Hydrogen SEO guide, the agents.md template docs, the agents platform docs and the agentic storefront product controls. The robots.txt.liquid release is dated on Shopify’s changelog, per-domain rules on a later changelog entry, and crawler access keys on the August 2025 entry.
Google documentation used: ecommerce pagination guidance, merchant listing structured data, product snippet structured data, product variant structured data, the AI features documentation, the AI optimisation guide, the guidance on hiring an SEO, the Search Console generative AI performance report and Merchant Center AI performance insights.
Default robots.txt rules were read from two live Shopify stores on 23 September 2026, and a third large store was checked and found to carry a custom rule the other two did not. Dawn’s product schema line was read from the Dawn repository, and the schema regression report from Dawn issue 3535.
Community threads quoted, all on the Shopify Community forum with their visible dates: changing collection and product URLs, URL structure, collection page canonicals, canonical issues on collections all, variant IDs on product URLs, variant URL indexing, tag URL duplication, the Markets product snippet collapse, the migration and robots.txt traffic collapse, ranking a new store, collection pages not indexed, leftover app code, Core Web Vitals on Shopify, a speed score drop and the account of fake speed optimisation work.
AI commerce announcements: OpenAI on buying in ChatGPT dated 29 September 2025, Shopify’s matching announcement the same day, Shopify on AI commerce at scale dated 11 January 2026, and Google’s Universal Commerce Protocol documentation.
Pricing figures: the Ahrefs SEO pricing survey of 439 providers, published December 2023 and updated August 2024; Shopify’s own cost guide, which cites no source; a UK agency pricing page; and an Australian ecommerce SEO pricing guide.
The app count and mobile score data is from a speed optimisation vendor’s study of 400+ stores dated 11 June 2026. It is an original dataset with a stated method, published by a company that sells speed optimisation, and it is presented here with that caveat attached.
Two things we could not verify and are not presenting as fact: what canonical Shopify emits on collection-scoped product URLs, and whether the collection-scoped product disallow seen on one large store is a platform default or a custom addition. Both are testable on your own store in minutes.
Written by Ishant Sharma, founder of Hustle Marketers, a Google Ads, Microsoft Ads and SEO specialist working in digital marketing since 2013. More about Ishant.
Work out the sequencing before you start, because ecommerce fixes rarely pay off in isolation. Our guide to ecommerce SEO covers what to do first and what to leave until later.
Summarise this article with:









