03 · Ecommerce SEO
Ecommerce SEO services for catalogs too big for a blog strategy.
Ecommerce SEO services make a store's category and product pages findable in Google and in AI answers. On a large catalog that means controlling faceted URLs and canonicals, fixing crawl waste, building category pages that answer buyers, adding Product structured data, keeping templates fast, and tracking what each fix earns in revenue.
Last reviewed
Magento first
Where Magento breaks
- Layered navigation links every filter value, and core's nofollow on those links doesn't keep crawlers out. We index the filters buyers search for and block the rest in robots.txt.
- Canonical tags ship switched off for categories and products. Adobe recommends both on; we turn them on, then check which URL Google picked.
- In Chrome's field data, Hyvä stores pass Core Web Vitals more often than Magento stores overall. We move to Hyvä or trim Luma, then check field data template by template.
- Product markup goes stale when nobody wires it to the catalog. Ours is generated from the same attributes as the price and stock on the page.
Everywhere else
Where every other platform breaks
- Shopify themes that link collection-scoped product URLs give a product an extra address for every collection it's in. We link the canonical /products/ URL everywhere.
- BigCommerce blocks filtered listings in robots.txt and adds AI-crawler rules you can't edit in settings. We read the live file before anything else.
- WooCommerce tag pages and attribute archives multiply thin listings. We decide which ones earn an index and keep the rest out.
- Headless storefronts own their rendering, canonicals and sitemaps. We render canonicals and Product markup on the server, before any JavaScript runs.
What ecommerce SEO covers on a large catalog
On a big catalog, SEO services for ecommerce are mostly plumbing. Category and product pages carry the revenue, and they break where a content calendar never looks: facets, canonicals, templates, internal links, structured data, speed and the crawlers behind AI answers.
Large catalogs break in eight predictable places. Each row names the fix and the Google document behind it, because "experts agree" isn't a source.
| Problem | How to spot it | The fix | Google's document |
|---|---|---|---|
| Faceted URL sprawl | Verified Googlebot hits on filter URLs outnumber hits on products. | Index filters with search demand; disallow the rest; 404 empty combinations. | Google: faceted navigation |
| Duplicate category paths | One product loads at several URLs, with and without a category path. | One URL per product in every link; canonical tags on the rest. | Google: canonical URLs |
| Canonical drift | "Duplicate, Google chose different canonical than user" in Search Console's page indexing report. | Paginated pages canonical to themselves; links, sitemaps and redirects naming the same URL. | Google: canonical URLs |
| Thin variant pages | Every size and color indexed as its own page with the same copy. | One canonical page per product group with ProductGroup markup, unless a variant earns its own searches. | Google: product variants |
| Sitemap gaps | Sitemap URLs that redirect, 404 or carry noindex, while live products are missing. | Sitemaps split by type, canonical 200 URLs only, accurate lastmod. | Google: build a sitemap |
| Slow templates | Field data failing LCP, INP or CLS on category or product templates. | Fixes per template, confirmed at the 75th percentile of real page loads. | web.dev: Core Web Vitals |
| Missing Product markup | No Merchant listings report in Search Console, or one full of invalid items. | Product and Offer markup in the server HTML, built from the data on the page. | Google: structured data with JavaScript |
| Search and AI crawlers blocked by accident | robots.txt or a CDN bot rule refusing Googlebot or OAI-SearchBot. | Allow the search crawlers you want citing you; decide on GPTBot and Google-Extended separately. | Google: AI features and your website |
Check our homework: view source, and our structured data is right there.
Technical SEO for large and enterprise catalogs
Big stores lose crawl to URLs nobody meant to publish. Google's crawl budget guide is written for sites with "1 million+ unique pages" changing weekly, 10,000+ pages changing daily, or "a large portion" of URLs stuck in "Discovered - currently not indexed". Faceted navigation gets a catalog there fast: Google's faceted navigation guide says crawlers "will typically access a very large number of faceted navigation URLs", leaving "less time to spend on new, useful URLs".
Our technical SEO services start there, because SEO for large ecommerce sites comes down to giving every URL one job:
- Facets and parameters. Filters buyers search for get clean, indexable URLs. The rest get a robots.txt disallow or move into URL fragments. Google calls canonical tags and nofollow "generally less effective in the long term" for this. Filter URLs already indexed get noindex first, and the robots.txt block once they drop out.
- Block or noindex, never both. A noindex page "must not be blocked by a robots.txt file" (Google), and robots.txt is no canonicalization tool either.
- Pagination. Each page gets its own URL and canonical. Google: "Don't use the first page of a paginated sequence as the canonical page" (pagination guide).
- XML sitemaps by type. Products, categories and content in separate files under one index, within Google's per-file limit of 50,000 URLs or 50MB uncompressed.
- Log files. We verify Googlebot against Google's published IP ranges, with reverse DNS for spot checks, because "spammers or other troublemakers" claim to be Google too.
- Release gates. Each fix gets a test that runs on every deploy, and on the live site on a schedule, to catch changes made outside a deploy. On Magento, the SEO settings get locked into
app/etc/config.php, which makes them read-only in the Admin.
That last gate is the part enterprise ecommerce SEO can't skip.
How we optimize category and product pages
Category pages carry the head searches, so they need more than a product grid. We write category copy that answers what buyers compare (sizes, materials, compatibility, standards) and place it where it helps the decision, not in a wall of text below the grid.
Product pages get Product markup with a nested Offer. Merchant listings require a name, an image and an offer, with "a price greater than zero". Google says markup plus a Merchant Center feed "maximizes your eligibility" (Product structured data), so we keep the two in sync.
- Variants. Our default is one canonical page per product group, marked up with
ProductGroup,productGroupID,variesByandhasVariant, a uniqueskuorgtinper variant, and a distinct URL that preselects each variant, as Google's variant guide requires. - Out of stock. Coming back: the page stays live, marked
OutOfStockorBackOrder. Gone for good: a 301 to a true replacement, or a 404 or 410. Google's crawl budget guide is direct: "Return a 404 or 410 status code for permanently removed pages." A part number buyers still search stays live asDiscontinued, with its successor linked. Never a blanket redirect to the home page, which Google's site-move guide says "might be treated as a soft 404".
Platform SEO
No platform is best for SEO out of the box. Each ships defaults that hold on a small catalog and break somewhere specific on a big one. When the platform itself is the problem, that's ecommerce development work. When it isn't, here's where each one needs help.
Magento SEO
Magento is home, and its core Catalog config sets both canonical settings to 0; Adobe recommends enabling both. Core marks its layered-navigation links nofollow; for links within your own site, Google says to use robots.txt. A default 2.4.6 or later store gives each product one address; stores set up earlier, or with category paths switched on, can answer at several. In HTTP Archive's September 2026 field data, 66% of Hyvä stores pass Core Web Vitals on mobile, against 45% of all Magento stores. The server side is our Core Web Vitals and speed work.
Shopify SEO
Shopify fixes the URL shape: "You can't edit subdirectory names," says its help center. Products live at /products/:handle, collections under /collections/, and a collection-scoped product URL serves "the same content on separate URLs" (Shopify). Its default robots.txt already blocks sorted collections, tag combinations and multi-filter URLs, leaving single-filter URLs to decide. Apps are the other drag: Shopify warns that "uninstalling an app doesn't automatically remove its code from your theme." A Shopify SEO agency earns its keep in the theme code, which is where our Shopify development work starts.
BigCommerce SEO
BigCommerce does part of the facet work for you. Every store's robots.txt disallows listings with product filters applied (_bc_fsnf=1). A rule set for "known high-volume and AI crawlers" adds Crawl-delay: 10, and you can't view or edit it in the store settings. Google ignores crawl-delay, but a crawler that honors it fetches at most 8,640 pages a day, so any BigCommerce SEO agency should read the live file first.
WooCommerce SEO
WooCommerce grows taxonomy pages quietly. Product tags get landing pages, and a global attribute with "Enable archives" on gets an archive for every term, like /color/black/ in WooCommerce's own example. The classic layered-nav widget builds filter_ and query_type_ URLs and marks each link rel="nofollow", which Google says works only when "every anchor" to a URL carries it. We decide which archives earn an index.
Headless storefronts
A headless front end, Next.js or otherwise, owns rendering, canonicals, sitemaps and redirects, so SEO moves into code. Google's JavaScript SEO guide says a page waiting to render "may stay on this queue for a few seconds, but it can take longer than that", and warns against changing a canonical with JavaScript. So canonicals, prices and Product markup go in the server HTML, and preview hosts stay unindexed. It's the same checklist behind our headless commerce development work.
AI search: Google AI Overviews, ChatGPT and llms.txt
Here's the line most AI SEO pitches leave out. Google Search Central's AI features guide says: "You don't need to create new machine readable files, AI text files, or markup to appear in these features." A page has to be "indexed and eligible to be shown in Google Search with a snippet", so the work for AI Overviews and AI Mode is the SEO above, done thoroughly, plus three checks:
- Crawl access. Google's list includes crawling "allowed in robots.txt, and by any CDN or hosting infrastructure". AI Overviews and AI Mode draw on the Search index, which Googlebot crawls. ChatGPT search uses OAI-SearchBot, and OpenAI says "Sites that are opted out of OAI-SearchBot will not be shown in ChatGPT search answers, though can still appear as navigational links." Training is a separate call. GPTBot covers OpenAI's model training; Google-Extended, a robots.txt token, covers Gemini training and grounding in Gemini Apps, and it "does not impact a site's inclusion in Google Search".
- Markup that matches the page. Google asks that structured data "matches the visible text on the page".
- Measurement with a stated method. Search Console folds AI feature traffic into the "Web" search type, so we track a fixed set of buyer questions in AI Mode and ChatGPT search and log every URL they cite.
And llms.txt? It's a proposal, not a standard, and Google's AI features don't need it. We publish our own llms.txt anyway, generated from the same frontmatter as the pages it lists.
SEO for replatforms and migrations
Replatforms lose organic revenue when old URLs stop resolving. Google's site-move guide says to "map your old site's URLs to the URLs for the new site", serve server-side permanent redirects, keep them "for as long as possible, generally at least 1 year", and warns: "Expect temporary fluctuation in site ranking during the move." Our method: a full redirect map, every old URL crawled on launch day and diffed against it, and Search Console watched for new 404s.
Our receipt for this method: tens of thousands of redirects mapped for a zero-downtime replatform.
The rest is on our ecommerce migration page.
B2B ecommerce SEO
B2B buyers search by part number, spec and standard, so B2B ecommerce SEO starts with spec-led category pages: the attributes buyers filter by, as crawlable text, and on each product page your part number, the manufacturer's and known cross-references. Spec tables go in the product page's HTML, not only in PDF datasheets: a PDF is a separate document, without the page's price, markup or cart.
Gated pricing works; gated products don't. Google's merchant listings need a page that isn't blocked by "login requirements", with a price above zero, so log-in-for-price products won't get them. Keep product pages public, gate the price, and they can still appear as ordinary results. We build the storefront side too: B2B ecommerce builds.
Analytics, tracking and ad-account rebuilds
Yes, as project work. SEO numbers are only as good as the tracking under them, so we set up and rebuild:
- GA4 and Google Tag Manager implementations, with each conversion counted once.
- Merchant Center feeds, checked against the price and stock on the page. Google can update its copy of your product data from your site, if you turn that on.
- Conversion tracking and closed-loop attribution: click, quote, order, ERP, ad platform.
- Ad accounts, set up or rebuilt on that clean data.
- Conversion-rate work, measured against a control.
What we don't do is ongoing campaign management. We rebuild the account, document it and hand it back to whoever runs it.
What our SEO audit covers
An audit is a project with a written deliverable, yours whether or not you hire us for the fixes. Hire us as an ecommerce SEO consultant for the audit alone, or to ship the fixes after it. It covers:
- A crawl of every template type, raw HTML and rendered.
- Search Console's page indexing statuses, traced to the URL patterns behind them.
- A log sample, with Googlebot verified against Google's published IP ranges.
- A facet and parameter map: index, block or fragment, filter by filter.
- Canonicals, redirects and sitemaps checked against the URLs you want indexed.
- Structured data checked against the visible page, template by template.
- Core Web Vitals field data for every template type.
- AI crawler access across robots.txt, CDN and WAF rules, and the logs.
- The fix list, ranked by revenue at stake and written as tickets your developers, or ours, can ship.
What drives the cost of ecommerce SEO
We don't publish prices for our ecommerce SEO services. On a catalog the work follows templates and technical debt, not SKU count, and a number on a web page can't see either. What moves the scope:
- Catalog size and template count: how many URLs, and how many page types behind them.
- Platform constraints: what the platform lets you change without custom code.
- Technical debt: old redirects, duplicate URLs, extensions that inject their own markup.
- Content volume: how many category pages need copy.
- Who implements on your side: your developers ship the fixes, or ours do.
For what the market charges, with sources, read our ecommerce SEO pricing guide.
How to choose an ecommerce SEO agency
Most ecommerce SEO agencies show the same deck. Four questions sort one ecommerce SEO company from the next, us included:
- Do they ship code fixes, or only reports? On a big catalog the fix lives in templates, robots.txt and the deploy pipeline. A PDF changes none of them.
- Do they show their own markup? Ask to see their structured data and their llms.txt. Ours: this page's own markup, and the llms.txt link above.
- Do they measure AI visibility with a stated method? "Trust us" isn't one.
- Do they know your platform's defaults? Magento's canonicals, Shopify's collection URLs, BigCommerce's robots rules.
Google's guide to hiring an SEO adds the rest: no one can promise a #1 ranking, and if an SEO promises first place, "find someone else." It also suggests giving a candidate read access to Search Console, not write access.
Ecommerce SEO questions
What is ecommerce SEO?
Ecommerce SEO is the work of getting a store's category and product pages found in search engines and AI answers. On a large catalog it is mostly technical: faceted URLs, canonicals, crawl control, structured data and template speed, plus category copy that answers what buyers compare before they buy.
Which ecommerce platform is best for SEO?
None is best by default; each breaks somewhere different. Magento gives you full control of the code and ships with canonical tags off. Shopify fixes your URL paths, and themes can link duplicate collection URLs. BigCommerce blocks filtered listings in robots.txt for you. WooCommerce grows thin tag and attribute archives. Headless leaves every choice, and every mistake, to you.
How do you do SEO for an ecommerce website?
Start with crawling and indexing, then the pages. Decide which filter URLs get crawled, give every product one canonical URL, split sitemaps by type, add Product markup that matches the page and fix slow templates. Then write category copy that answers buyers, and measure organic revenue by template.
How do we improve the SEO of an ecommerce website?
Find what's broken before adding anything new. Check Search Console's page indexing report for duplicates and for pages Google found but hasn't crawled, read the server logs for wasted crawl, and test each template against Core Web Vitals. On a large catalog, one template fix reaches every product at once.
Why is SEO important for ecommerce?
SEO matters for ecommerce because organic search is the channel you don't pay for by the click: every organic visit a category page gets arrives with no ad spend behind it. And Google only cites pages from its index in AI Overviews and AI Mode, so the same work makes a store eligible for AI answers.
How much does SEO cost for ecommerce?
We don't publish prices, because the drivers vary too much between stores: catalog size and template count, what your platform lets you change, the technical debt already in place, how much category copy needs writing, and whether your developers or ours ship the fixes. Our ecommerce SEO pricing guide covers what the market charges, with sources.
How do we choose an ecommerce SEO agency?
Ask four things: do they ship code fixes or only reports, can they show their own structured data, how do they measure AI visibility, and do they know your platform's defaults. Google's own guide to hiring an SEO adds a fifth: if anyone promises you first place in search results, find someone else.
Do you work with ecommerce stores in Los Angeles?
Yes. Serving Orange County and Southern California, remote for everyone else. Los Angeles merchants can meet us in person by arrangement; the SEO audit, the code fixes and the reporting run the same way for every store, local or not.
Sources
Last reviewed
- Google Crawling Infrastructure: Managing crawling of faceted navigation URLs · Checked
- Google Crawling Infrastructure: Optimize your crawl budget · Checked
- Google Crawling Infrastructure: Google's common crawlers (Google-Extended) · Checked
- Google Crawling Infrastructure: How Google interprets the robots.txt specification · Checked
- Google Crawling Infrastructure: Verify requests from Google crawlers and fetchers · Checked
- Google Search Central: Block Search indexing with noindex · Checked
- Google Search Central: How to specify a canonical URL · Checked
- Google Search Central: Qualify your outbound links · Checked
All 40 sources
- Google Search Central: Pagination, incremental page loading, and their impact on Google Search · Checked
- Google Search Central: Build and submit a sitemap · Checked
- Google Search Central: Introduction to Product structured data · Checked
- Google Search Central: Merchant listing structured data · Checked
- Google Search Central: Product variant structured data · Checked
- Google Search Central: Generate structured data with JavaScript · Checked
- Google Search Central: Share your product data with Google · Checked
- Google Search Central: How to move a site with URL changes · Checked
- Google Search Central: Understand the JavaScript SEO basics · Checked
- Google Search Central: AI features and your website · Checked
- Google Search Central: Do you need an SEO? · Checked
- Search Console Help: Page indexing report · Checked
- Search Console Help: Rich result report overview · Checked
- web.dev: Web Vitals · Checked
- HTTP Archive Tech Report: Core Web Vitals for Magento and Hyvä Themes (CrUX, mobile) · Checked
- OpenAI: crawlers and user agents (OAI-SearchBot, GPTBot) · Checked
- llms.txt: the /llms.txt proposal · Checked
- Adobe Commerce: Meta data (canonical meta tag) · Checked
- Adobe Commerce: Set configuration values (lock-config) · Checked
- Magento Open Source on GitHub: Catalog module SEO defaults (config.xml) · Checked
- Magento Open Source on GitHub: layered navigation filter links (filter.phtml) · Checked
- Magento Open Source 2.4.5 on GitHub: CatalogUrlRewrite config.xml · Checked
- Magento Open Source 2.4.6 on GitHub: CatalogUrlRewrite config.xml · Checked
- Hyvä Docs · Checked
- Shopify Help Center: Domain terminology · Checked
- Shopify: About headless commerce (product URL format) · Checked
- Shopify Liquid reference: within filter · Checked
- Shopify Help Center: Improving your online store performance · Checked
- Shopify: default robots.txt as served by the Dawn theme demo store · Checked
- BigCommerce Help Center: Robots.txt file · Checked
- WooCommerce docs: Managing product categories, tags and attributes · Checked
- WooCommerce source: classic layered nav widget · Checked
Every fix gets a test
How we work
Four steps. Written down before anyone opens an editor. The full process →
Audit
Crawl, logs, Search Console and templates, read together. You get the fix list ranked by revenue at stake, yours whether or not you hire us.
Fix the plumbing
Facets, canonicals, sitemaps and markup fixed in code, with a release check that tests each fix on every deploy.
Build the pages
Category copy and internal links drafted from your catalog data, with your editors approving every page.
Measure
Organic revenue by template in GA4 and clicks by template in Search Console, against a baseline set before the first fix.
Proof, not adjectives
Up sharply
Organic lead volume up sharply after a technical SEO and content rebuild.
Tens of thousands
Tens of thousands of redirects mapped for a zero-downtime replatform.
ms, not s
Server response times cut from seconds to milliseconds.
Engagement models
Next: Secure & SpeedProject
Builds, replatforms, integrations and audits, scoped in writing before work starts.
Retainer
A standing team and a monthly budget for development, SEO and content, and platform care.
Fractional head of ecommerce
Senior ecommerce leadership, part time: roadmap, vendors, a P&L lens, and hands on the code when needed.
Emergency
Hacked, down or bleeding orders. Triage first: a written reply within one business day, then a plan.