E-commerce SEO: fixing the foundation before chasing keywords
Most online stores don't stall in organic search because they picked the wrong keywords. They stall because thousands of near-identical URLs are competing with each other, and no amount of content fixes that. Here is the order I work in, and why the order is the whole job.
- Project type
- E-commerce SEO
- Market
- Sydney, Australia
- Focus
- Technical SEO, keyword map, category content
- Typical timeline
- 4–6 months to compounding results
A store owner usually arrives with the same sentence: "We publish blogs every week and nothing happens." Almost always, the blog isn't the problem. The problem is that Google is spending its crawl budget on 40,000 filter URLs and can't tell which of your six near-duplicate category pages is the real one.
The situation
The store had a few thousand products across a dozen categories, a healthy paid search account, and organic traffic that had been flat for over a year. Product pages ranked for brand + model queries — the searches they were always going to win — and almost nothing else. The high-intent commercial queries, the ones that read like "buy [category] online Australia", belonged entirely to marketplaces and two established competitors.
Under the hood, the usual picture: faceted navigation generating an indexable URL for every colour, size and price combination; product descriptions copied straight from the supplier feed; category pages with 40 words of text above a grid; and a sitemap listing URLs that had returned 404 for months.
You cannot out-publish a crawl budget problem. If Google is wasting its visits on filter combinations, your best new page is standing in a queue behind 30,000 URLs that should never have existed.
What the audit actually found
- Index bloat. Faceted URLs were crawlable, linkable and indexable. The number of URLs Google knew about was many times the number of pages worth ranking.
- Cannibalisation. Category, sub-category and a legacy landing page were all targeting the same head term, so link equity and relevance signals were split three ways.
- Thin category pages. The page meant to rank for the money keyword had less unique text on it than a product review.
- Duplicate product copy. Supplier descriptions appearing word-for-word on dozens of other retailer sites.
- Slow templates. Largest Contentful Paint on mobile category pages sat well above the threshold, mostly unoptimised hero images and render-blocking scripts.
- No internal linking strategy. Category pages were reachable only from a mega-menu; nothing on the site pushed authority toward the pages that were supposed to earn revenue.
The approach, in order
-
Technical foundation first
Nothing else gets touched until crawling and indexing behave. That means deciding — explicitly — which parameter combinations are allowed to be indexed and which are not, then enforcing that with
robots.txtrules,noindexwhere appropriate, and canonical tags that point somewhere sensible rather than at themselves by accident.At the same time: rebuild the XML sitemap from live, indexable, 200-status URLs only; fix redirect chains left over from the last replatform; compress and lazy-load below-the-fold imagery; and defer the scripts that were blocking first render. The goal isn't a perfect score in a testing tool. The goal is that when Google crawls, it spends its time on pages that can make money.
-
Then the keyword map
One page, one primary intent. I build a spreadsheet where every commercial keyword cluster is assigned to exactly one URL, and every URL has exactly one job. Where two pages are competing, one wins and the other gets merged and 301'd into it.
For a store, this map has a shape: broad category terms sit on category pages, "best / cheap / for [use case]" modifiers sit on sub-categories or curated collections, comparison and how-to queries sit in the blog, and brand + model queries stay on product pages. Once that map exists, the arguments stop, because every future page has an obvious home.
-
Then category content and on-page
Category pages get rewritten as actual pages: a short buyer-oriented introduction above the grid, a genuinely useful buying guide below it, internal links to the relevant sub-categories, and an FAQ answering the questions the sales inbox already receives. Titles and meta descriptions get rewritten for click-through rather than keyword stuffing. Product, BreadcrumbList and ItemList schema go on where they belong.
Product descriptions get rewritten in priority order — best sellers and highest-margin lines first. Rewriting 3,000 products is a fantasy; rewriting the 200 that generate most of the revenue is a Tuesday.
-
Then internal links and authority
Once the map is set, internal linking becomes mechanical: blog posts link up into the category they support, categories link across to their siblings, and the highest-authority pages on the site link down into the pages that need help. Off-site work — digital PR, supplier and stockist links, genuinely useful comparison assets — follows the same map rather than pointing everything at the homepage.
-
Then measure the right thing
Sessions are a vanity metric for a store. I track revenue and assisted revenue by landing page group, non-brand organic clicks, and impressions on the mapped keyword clusters. Rankings are a leading indicator; revenue per landing page is the scoreboard.
Why the order matters
If you write category content before fixing index bloat, you've added good pages to a crawl queue that isn't reaching them. If you build links before the keyword map, you push authority into pages that are cannibalising each other. Every stage in this list makes the next stage cheaper — that is the only reason to run them in sequence.
What changed
The pattern with this work is consistent even when the numbers differ. Index bloat clears within a few crawl cycles, and the pages that survive start getting crawled far more often. Cannibalisation fixes tend to move rankings within weeks, because you are not asking Google to discover anything new — you are removing a contradiction. Category content is the slow part: it compounds over a couple of quarters, and it is the part that keeps compounding after the engagement ends.
What does not happen is a spike in month one. Anyone promising that for an e-commerce site with a crawl budget problem is selling you the blog posts, not the fix.
What I would do differently
Two things. First, I would agree the faceted-navigation rules with the developer before the audit, not after — the technical fix is usually the longest lead-time item, and it gates everything downstream. Second, I would rewrite fewer product descriptions and more category buying guides. Category pages carry the commercial intent; product pages mostly need to be unique, not brilliant.
Common questions
How long before an e-commerce SEO project shows results?
Technical fixes and cannibalisation cleanups can move within four to eight weeks because they resolve existing confusion. New category content and link acquisition generally take four to six months to compound. If a store has never had a technical pass, the early wins usually come from removing things rather than adding them.
Should faceted navigation URLs ever be indexed?
Sometimes — a facet with real, distinct search demand ("black leather sofa") can deserve its own indexable, statically-linked page. The rule is that a facet earns indexation by having a keyword cluster assigned to it in the map. Everything else gets blocked or canonicalised. Indexing facets by default is what creates bloat in the first place.
Is blogging worth it for an online store?
Yes, but not as a traffic exercise. Blog content earns its place when it captures research-stage queries and then links into the category page that converts them. A post that ranks well and links nowhere useful is a cost centre.
Do I need to rewrite every product description?
No. Rewrite in revenue order. Duplicate supplier copy is a real problem, but it is a problem worth solving on the products that actually sell. For the long tail, unique titles, unique short descriptions and correct schema are usually enough.
Want the same audit run on your store?
I'll go through crawl behaviour, indexation, cannibalisation and your category structure, and send you the fix list in priority order — with an honest note on which items your developer needs and which I can do. Ask for a free quote.