E-commerce brands

Ecommerce SEO for a brand competing with a marketplace

Ecommerce SEO is mostly a crawling problem. Filters, sort orders and collection paths multiply one product into dozens of URLs, and Googlebot spends its budget there instead of on the pages you sell.

A brand owner packing orders at a workbench

You are not competing with the shop down the road. On a product query it is Amazon, Walmart and a manufacturer who handed that description to forty retailers.

Copying them is pointless. What you can win are the queries a marketplace serves badly: the model with a specific fault, the comparison, the fit question, whether it works with what they own.

The other half is plumbing. A store generates URLs automatically as a services site never does, and a category page with three filters ticked is one Google crawls a thousand ways.

One thing to get out of the way. Building and maintaining stores has been the work here since 2018, WooCommerce and Shopify both. Selling the search half monthly is newer, and no store here has revenue we can claim.

The problem

What is actually holding the store back

Filters producing infinite URLs

WooCommerce layered navigation appends filter_colour and query_type_colour to the category URL. Tick four attributes and you have more addresses than products.

Two paths to every product

On Shopify the same item answers at a short product path and a longer one under every collection it sits in. Your sitemap lists one, your menus the other.

The manufacturer's description

Forty retailers publish the paragraph the supplier sent, and Google shows one of them, which will not be the store with eleven referring domains.

Discontinued lines left to rot

Three hundred out of stock products return 200 and sit in the sitemap. Crawl budget burns on what nobody can buy.

What we do

What the work covers

01

A parameter policy, written down

Google retired the URL Parameters tool in Search Console in 2022, so there is no switch to flip. What is left is robots.txt, canonicals and your own internal links, and those have to agree. We write the policy, then implement it.

02

Faceted navigation that stays crawlable

Some filters deserve an indexable page, because people search for them by name. Most do not. We decide by demand, then block the rest at crawl level rather than hope a noindex tag holds.

03

Product data Google can read

Product markup with price, availability and shipping, validated against Google's documentation, not a plugin's defaults. A merchant listing shows a price. A blue link does not.

04

Descriptions nobody else has

We rewrite the products that earn it, starting with those already getting impressions and no clicks. Fit, sizing, contents, and what the thing does not do. That last one wins the most trust.

A laptop and a cup of coffee on a desk in morning light
What's included

In every month

  • A full crawl of every URL, reconciled against your sitemap and Search Console index coverage
  • A written parameter and facet policy, implemented in the theme by us rather than handed over
  • Product structured data validated against Google's own published documentation
  • Rewritten descriptions for the products already earning impressions and no clicks
  • Monthly reporting from your own Search Console property, with access held in your name
How this works

The duplicate URL problem no other industry has

How the retainer runs on a store

Month one is a crawl and a decision list. We compare what the crawler finds against your sitemap and what Search Console has indexed, then give every URL pattern a verdict. Index, block, redirect or leave alone.

That list is the engagement in miniature, and it is where ecommerce SEO differs from every other retainer we sell. A plumber has forty URLs. Two thousand products with six filter attributes have a theoretical URL space in the millions, and nobody writes out of that.

From month two the split is roughly half technical, half commercial. Technical is template work in Liquid or PHP, done by us rather than raised as a ticket. Commercial is picking the twenty or thirty products worth real description work.

We report impressions and clicks per URL pattern, not just per page, because that is the only way to see whether blocking the filters moved the crawl onto the products. Revenue attribution stays in your analytics, where you can audit it.

One sequencing rule. Robots rules go in last, after the internal links stop pointing at the patterns we are about to block. Block a URL your menus still link and Google keeps it indexed with no snippet, which looks worse than the duplication did.

  • Template edits shipped by us, in Liquid or in PHP
  • A written index or block verdict for every URL pattern
  • Fixed monthly hours, thirty days notice
  • Reporting grouped by URL pattern as well as by page
How we work

The first quarter

  1. 01

    Week one, the crawl

    We crawl the store at full depth and pull sixteen months of Search Console data beside it. The gap between crawled and indexed is the story.

  2. 02

    Week two, the URL verdicts

    Every pattern gets a decision and a reason. You see the list before anything is blocked, because a facet that looks worthless to us may be how half your customers shop.

  3. 03

    Week three, the template work

    Canonicals, internal links, robots rules and structured data change in the theme. On Shopify that includes robots.txt.liquid, editable since 2021 and still the cleanest place for it.

  4. 04

    Month two onward

    Description work on products with impressions and no clicks, category copy where it earns its place, and whatever the crawl surfaces.

  5. 05

    Every quarter

    Indexed page count, impressions by URL pattern and clicks against the month one baseline. If the crawl moved and clicks did not, that is a content problem and we say so.

Budget

What ecommerce SEO costs

How large the catalogue is

Two hundred products is a different job from twenty thousand. The second needs rules rather than hand editing, and rules take time to get right.

How many filter attributes exist

Colour and size is manageable. Colour, size, material, brand, price band and rating is combinatorial, and untangling which combinations anyone actually searches for is most of month one.

Which platform you are on

Shopify constrains what can change, which keeps the work predictable. WooCommerce lets you change anything, faster when the install is tidy, slower when it carries thirty plugins.

Who writes the descriptions

If your merchandiser writes from an outline we stay technical and the retainer is smaller. If every word is ours, it is a bigger number.

From the work

The Shopify link that undoes your own canonicals

Here is the one that catches Shopify stores. Every product answers at two addresses, and most themes render grid links with `product.url | within: collection`, which emits the longer collection path, so your navigation spends the crawl on URLs your canonical tag tells Google to ignore. Drop the within filter from the product grid snippet and the crawl settles inside weeks. Check the rendered HTML, not the theme editor: sections and apps override it.

Do one check before you talk to anybody. Open the Pages report in Search Console, note how many URLs sit under Crawled, currently not indexed, and set that beside your product count. If the first dwarfs the second, the crawl is your problem. No amount of writing touches that.

Send that number with the store URL and you get back which patterns produce it and which we would block first. If the two numbers are close, your problem is that nobody has heard of you, and that is slower and dearer to fix.

Get a fixed-price quote Back within 1 business day
FAQ

Questions store owners ask

Why does my product page rank below Amazon?+

Usually authority and duplication together. The marketplace has far more referring domains, and if your description came from the manufacturer then forty stores publish that text. Google picks one, and the tie goes to the stronger domain. Original copy claws it back.

Should filtered category URLs be indexed?+

Only where people search that combination by name, such as a colour or size with real demand. Everything else should be crawlable but not indexed, or blocked outright. Indexing every combination creates near duplicates that compete with the category you want ranking.

Is Shopify or WooCommerce better for ecommerce SEO?+

Neither wins on merit. Shopify limits what you can break and handles product canonicals sensibly. WooCommerce gives full control of URLs and templates, which helps a careful team and hurts a busy one. Build quality matters far more than platform choice.

How long does ecommerce SEO take to show anything?+

On a store with a duplication problem, faster than the usual answer. Once the filter URLs stop being crawled, Googlebot reaches the products it was missing and impressions move within weeks. Winning a competitive query on authority is slower, counted in quarters.

Do I need unique descriptions for every product?+

No, and chasing it is how budgets vanish. Start with the products already earning impressions and no clicks, which Search Console shows you in an afternoon. Twenty written properly beat two thousand rewritten by a tool that never handled it.

Send us the store URL

Start your free quote