← All posts

How to Index a Shopify Site: Products, Pages & Blogs

How to Index a Shopify Site: Products, Pages & Blogs

Shopify does more indexing plumbing out of the box than almost any other platform. Every store gets an automatically generated sitemap, canonical tags on duplicate product URLs, and a robots.txt file with sensible defaults. So if you are working out how to index a Shopify site, the honest starting point is that the platform has already done the easy half. The half that remains is the half that decides things: making sure nothing in the store quietly blocks Google, handing Google your URLs, and then checking what Google actually did with them. This guide walks through all three, for the three kinds of content a store produces: products, pages, and blog posts.

What Shopify sets up before you touch anything

Every store publishes a sitemap at yourstore.com/sitemap.xml. It is an index file pointing to separate sub-sitemaps for products, collections, pages, and blog posts, and Shopify regenerates it as you publish and unpublish content. You do not need to build or maintain one, which removes a whole category of mistakes that Google’s guide to building a sitemap exists to prevent.

Shopify also writes canonical tags for you. A product lives at /products/blue-linen-shirt, but it is also reachable through every collection that contains it, at addresses like /collections/summer/products/blue-linen-shirt. Each collection-path URL carries a canonical tag pointing back to the plain /products/ address. This is the arrangement Google describes in its documentation on consolidating duplicate URLs: many routes in, one indexable address. Leave it alone unless you have a specific reason not to.

Finally, there is a generated robots.txt that keeps crawlers out of the cart, checkout, and account areas. Those defaults are sensible. The file can be customised through robots.txt.liquid, and most stores with robots.txt trouble acquired it through a well-meaning edit rather than through the defaults.

Step 1: confirm the store is not blocking itself

Three checks, in the order they most often turn out to be the culprit.

The password page. A store that has not been launched sits behind Shopify’s password page, and Google cannot crawl past it. Nothing gets indexed while the password is up. If you built the catalogue before launch, indexing starts from the day the password comes off, not the day you added the products.

A stray noindex. Themes and apps can inject a robots meta tag without telling you. Open a product page, view the source, and search for noindex. If it is there and you did not put it there, an app or a theme setting did, and Google will honour it exactly as written.

Robots.txt edits. If robots.txt.liquid has been customised, read it line by line. A disallow rule written to hide tag pages can easily catch whole collections on the way through.

If any of these checks turns something up on a store that has been live for a while, the companion post on fixing Shopify pages that are not indexed works through recovery in more detail.

Step 2: hand Google the URLs

Verify your domain in Google Search Console and submit sitemap.xml once. That covers discovery for the whole store, because every product, page, and post you publish afterwards enters the sitemap automatically.

For the individual URLs that matter this week, a new flagship product or a reworked landing page, use the URL Inspection tool and request indexing. Google’s documentation on asking for a recrawl is candid about what this does: it places the URL in a crawl queue. It does not commit Google to a crawl date, and it does not commit Google to keeping the page. The tool also processes one URL at a time, which makes it an awkward fit for a catalogue of any size.

However you submit, hold on to the distinction underneath: submitting asks Google to look. Whether the page enters the index is Google’s decision, made on Google’s schedule.

How to index Shopify products, pages, and blogs

Each content type has its own habits.

Products are the largest group and the most frequently declined. Two things help. First, point internal links at the canonical /products/ URL rather than at collection paths, so that signals accumulate on the address Google will actually index. Second, write descriptions that are not the manufacturer’s copy repeated across forty near-identical items. Google declines thin and duplicated pages as a matter of routine, and a catalogue of interchangeable descriptions is a catalogue of candidates for declining.

Collections are crawl paths as much as landing pages. A collection linked from the main navigation gives Google a short route to every product inside it. Be warier of tag-filtered collection URLs, which multiply quickly and mostly duplicate their parent collection.

Pages, meaning the About page, policies, and size guides, are few and stable. They rarely need more than a place in the sitemap and a link in the footer or navigation.

Blog posts live under /blogs/ and are the content you control most completely: original text, one URL, no variant duplication. Link new posts from the homepage while they are fresh, and link them to the products they discuss, so the crawl route runs in both directions.

Step 3: check what Google actually decided

Everything up to this point produces submissions. A submission is an event in your control; an index entry is a decision in Google’s. The two are routinely conflated, and the gap between submitted and indexed costs real money when a store assumes a submitted product is a visible product.

Search Console’s Pages report gives the store-wide picture, with some lag. For a specific batch of URLs, this is where AIndexify fits: paste the URLs or upload a CSV, up to 10,000 URLs per submission, and each one is checked against live Google results on a fixed schedule, with submitted and indexed reported as two separate events. No Search Console connection or ownership proof is required, so an agency can check a client’s store as easily as its own. And if a URL cannot be checked because it carries noindex, returns a 404, or is blocked by robots, that is caught before any check is billed and the credit is refunded, which catches exactly the stray-noindex and robots.txt problems from step 1.

For the wider mechanics behind all of this, from crawling and rendering to every status Google reports, The Ultimate Guide to Google Indexing covers the whole terrain.

The short version

Shopify hands you a sitemap, canonical tags, and a workable robots.txt without being asked. Your half of the work: take the password page down, hunt out stray noindex tags, submit the sitemap once, request indexing for the URLs that matter most, and then verify outcomes rather than assuming them. Products want canonical-consistent links and original descriptions; blog posts want internal links while they are fresh; pages mostly want leaving alone.

See where your store’s pages actually stand: submit your URLs and get back statuses with dates on them, rather than assumptions.

Sources