Most people get Ecommerce SEO wrong. They focus on ranking for uber-competitive high-volume terms.
Let’s say that you sell men’s clothing.
Here’s the most obvious term you may want to rank for:

Estimated US monthly search volume for “mens clothing,” via Ahrefs Keywords Explorer
Let’s take a look at the top ranking pages.
Think you can outrank these guys? Sorry, but it isn’t going to happen.
So what’s the alternative?
Focus on ranking individual product and category pages for less competitive terms.
In this guide, I’ll show you how to do this from start-to-finish.
Prefer video? Here you go:
https://www.youtube.com/watch?v=tDanA-9wi6Q
Getting Started
First things first…
Head over to Ahrefs Site Audit and start crawling your site for errors.
Here’s Sam Oh explaining how to do that:
https://www.youtube.com/watch?v=G_9-AkZch4k
You won’t need the results of this until later. But as it takes some time to run, I recommend setting it going right away.
Also, I’ll nip this in the bud right now:
If you are running an Ecommerce store, then you should be using HTTPS sitewide!!
You’d be surprised how many Ecommerce sites still don’t do this.
Here’s why this is super-important:
Almost all ecommerce stores feature many forms which collect personal details from users. So it’s good practice to make sure ALL information is encrypted (not just credit card details).
Google has also confirmed that there is a (slight) rankings boost for sites serving content over HTTPs. That’s one more reason to do this.
Read this guide to learn how to do this right.
Now let’s get started.
Part 1: Keyword Research for Ecommerce Sites
Like with all SEO campaigns, Ecommerce SEO should begin with keyword research.
Without this, you’ll be flying blind—relying on ‘gut feeling’ to drive your campaign.
But how do you do keyword research for an ecommerce site?
It’s quite simple, actually:
- List all the pages on your site;
- Find and map appropriate keywords to each page.
And, yes… you should do keyword research on a page-by-page basis.
This is how I recommend doing keyword research for any website.
But with ecommerce sites, there are two main types of pages to optimize: category (example) and product (example) pages.
Each of these requires a slightly different approach.
In this section, I’ll be using the UK-based homebrewing supplier, The Malt Miller, for the examples.
So where do you start?
1.1. Get a Complete Inventory of the Pages On Your Site
Go to: yourdomain.com/sitemap.xml.
It should look something like this:
Go to: yourdomain.com/robots.txt. This should tell you the sitemap URL.
NOTE. If you see the .gz file extension for the sitemap, remove it (e.g., sitemap.xml.gz -> sitemap.xml). Otherwise, it will download the sitemap rather than displaying it in the browser.
Use the Scraper plugin (Chrome) to scrape this list of URLs.
Here’s the XPath to use: //a[contains(text(),"{yourdomain.com}")]/@href
If you haven’t yet launched your Ecommerce site, do the same as above but for an existing competing site.
You can then steal their site structure, categories, and products as a starting point.
To find an appropriate site for this purpose, try this:
Keywords Explorer > enter a bunch of keywords (10–15) related to the stuff you’re planning to sell
On the left-hand menu, go to Traffic share > By domains
This shows you which domains get the most traffic from the search terms you entered.
Choose one of these (avoid big brands!), then follow the instructions above to scrape their sitemap.
Paste the results into a Google Sheet.
1.2. Prioritise Your Pages
At the start of this section, I mentioned that you should perform keyword research on a page-by-page level.
But I know what you’re thinking:
“I have like a bazillion pages here! Do you really expect me to assign keywords to and optimize each page individually!?”
Yes, I do.
But I do understand that this can take forever, so here’s a quick trick:
Optimize the most important pages FIRST.
If you have Ecommerce tracking set up in Google Analytics, you can get a rough sense of the most important pages by going to:
Behaviour > Site Content > Landing Pages > sort by revenue (high to low)
If not, use the same report and sort by traffic (sessions) instead.
If you don’t have Google Analytics installed (you really should!), or are doing this for a competing site (as you are yet to set up your Ecommerce store), try the Top pages report in Ahrefs Site Explorer.
Site Explorer > enter domain > Top Pages
1.3. Find and Map Keywords to Each Page
Now that you have a list of prioritized pages, you can start finding and mapping keywords to each of them.
- Head keyword (i.e., the primary keyword you want to optimize the page for)
- Some long-tail variations (i.e., other keywords that may drive targeted traffic to the page)
Let’s start with the head keyword.
Step 1. Find a Head Keyword
Believe it or not, looking at the keywords you already rank for can be the best place to find an appropriate head keyword.
You can find these with Ahrefs Site Explorer.
Let’s try it for this ecommerce category page for an all-in-one brewing system, called the Grainfather.
Site Explorer > enter a page URL > Organic Keywords
Looking at these keywords, “Grainfather” (2.9K searches/month) stands out as a good head term for this page. After all, that’s what we’re selling here.
But let’s also hit the SERP dropdown and check out the top 10 ranking pages for this query.
Here, we need to check two things:
- What types of pages are currently ranking? Product pages? Category pages? Blog posts? Or something else? It’s important to go after keywords with the right search intent. If you see tons of blog posts ranking in the top 10, there’s no point trying to rank a product or category page there. That isn’t what people want, so it won’t work.
- Look at the top keyword. We display a top keyword for all top ranking pages in the SERP overview. Most of the time, you’ll probably find that the top keyword is the same for most of the pages in the top 10. It may also be the same as the keyword you’re currently considering for the head term. But sometimes, this can unveil an even better head term.
So let’s do that.
Here are my observations:
- Top 3 results are from the official Grainfather website. We ain’t going to outrank those.
- 86% of the remaining results are ecommerce category or product pages. This is a good sign. It means there’s purchase intent behind this query.
- The top keyword for every page is “grainfather.” So this is definitely a good head term.
I’m happy with this as a head term for this page. So I’ll add this to my spreadsheet.
Sometimes things aren’t always this clear-cut.
To illustrate, let’s look at the Organic Keywords report for this page: http://www.asos.com/women/
Not only is this ranking for over 4K keywords. But you can clearly see that a lot of them are either branded terms or have low search volumes (e.g., “woman store”).
None of these would make a particularly good head term. So here’s what we can do:
- Sort the Organic Keywords report by search volume;
- Scan the list for the most appropriate-looking head term for this page (use your brain/gut here!).
- Check the SERPs, see if product and category pages are ranking (if not, look for a different keyword).
- Locate the most similar page to yours in the SERP Overview that gets a ton of traffic.
- View the Organic Keywords report for that page.
- Repeat the steps above.
Quick demo (steps, 1, 2, 3, 4, 5):
[WPGP gif_id=“21767” width=“600”]Step 2. Find Long-Tail and Related Keyword Variations
Long-tail variations can be found in a few ways.
For starters, that same Organic Keywords report is often a good source of long-tail and related keyword variations.
Just remember to investigate the SERP for each one to make sure the search intent is similar — i.e., the top ranking pages are either ecommerce product or category pages).
Add any that look good to your spreadsheet.
But again, this report can sometimes be overwhelming. So here’s a trick:
Keywords Explorer > enter your head term > SERP Overview
Copy and paste 3–10 of the top ranking product or category pages into the Content Gap tool and use these settings:
- Leave the “But the following target doesn’t rank for” field blank (for now)
- Keep the “At least one of the targets should rank in top 10” box checked.
- Choose “at least 2 of the below targets” from the “Show keywords that ____ rank for” drop-down.
Results:
Not only does this uncover long-tail variations, but also so-called semantically-related words and synonyms (e.g., “all in one brewing system”).
Let’s add that one to our spreadsheet.
Rinse and repeat this entire process for each Ecommerce page on your site.
Part 2: On-Page SEO for Ecommerce Sites
Now we know which keywords and terms each page should be optimized around, it’s time to start implementing those findings.
2.1. Optimize Your Meta Titles, Descriptions, and H1’s
Most ecommerce sites use a templated approach to their meta tags, which usually follow a pattern like this:
It’s easy to see why some Ecommerce stores do this… many have tens, sometimes even hundreds of thousands of pages. Writing unique titles and meta descriptions for each is a daunting (and boring) task.
But here’s the thing:
A templated approach isn’t ideal. There’s just no way to truly optimize each individual page when doing this.
So I recommend you take a hybrid approach:
Put the bulk of your effort into writing well-optimized tags for the most important pages. Then use a templated approach for the rest.
But don’t use the same template for every page. Create a unique template for each category, subcategory, brand, etc.
Example:
The Malt Miller sells ~85 different types of whole hops, all of which are sold in 100g nitrogen-flushed vacuum packs.
Here’s a perfectly acceptable meta title and description template for each product in this category:
Buy {HOP NAME} Hops (100g) — Vacuum Packed for Freshness | The Malt Miller
Shop {HOP NAME} hops at The Malt Miller — FREE Shipping. All of our are hops are vacuum packed for freshness. Next day delivery as standard for orders placed before 1 PM.
Here’s how this may look for a couple of different products:
Buy Citra Hops (100g) — Vacuum Packed for Freshness | The Malt Miller
Shop Citra hops at The Malt Miller — FREE Shipping. All of our are hops are vacuum packed for freshness. Next day delivery as standard for orders placed before 1 PM.
Buy Centennial Hops (100g) — Vacuum Packed for Freshness | The Malt Miller
Shop Centennial hops at The Malt Miller — FREE Shipping. All of our are hops are vacuum packed for freshness. Next day delivery as standard for orders placed before 1 PM.
~85 meta titles and descriptions. Done.
But it wouldn’t make sense to use this same template for products in the equipment category.
Buy Brewing Bucket Hops (100g) — Vacuum Packed for Freshness | The Malt Miller
Shop Brewing Bucket hops at The Malt Miller — FREE Shipping. All of our are hops are vacuum packed for freshness. Next day delivery as standard for orders placed before 1 PM.
You would need to write a different template for those products.
But like I said, you should write unique descriptions for your most important pages.
Which are the most important pages? The ones that already rank in the top 10 for at least one keyword.
So filter for these in your spreadsheet, and let’s get to work.
Here are a few pointers:
- Include your primary keyword;
- Sprinkle in some of the long-tail keyword variations (where appropriate);
- Include action words (e.g., buy, click, learn, sale, free, etc. — more here);
- Mention your USP (free shipping, next day delivery, free returns, etc.);
- Optimize for CTR by making them compelling
Split test different title and meta description formats (for example, with the product price included) to maximize click-throughs.
But what about H1’s?
Simple. Just use the category title (for category pages) and the product title (for product pages).
If you’ve done your homework correctly, these should also be keyword-focused.
So there really is no need to overcomplicate this one—just make sure there’s only one H1 on each page.
2.2. Optimize Your URLs
Ecommerce URL slugs can get messy.
Here’s one from Topshop:
www.topshop.com/en/tsuk/category/clothing-427/t-shirts/N-82zZqz6Zdgl
This is something to avoid. You want your URL slugs (permalinks) to be as clear and readable as possible.
Here’s what I suggest as a starting point:
- yourdomain.com/category-name (category page)
- yourdomain.com/category-name/subcategory-name (subcategory page)
- yourdomain.com/category-name/subcategory-name/subcategory-name (sub-subcategory page)
- yourdomain.com/category-name/subcategory-name/subcategory-name/product (product page)
Pretty simple, right?
Here are a few examples for The Malt Miller:
- themaltmiller.com/ingredients/ (category page)
- themaltmiller.com/ingredients/hops/ (subcategory page)
- themaltmiller.com/ingredients/hops/whole/ (sub-subcategory page)
- themaltmiller.com/ingredients/hops/whole/citra/ (product page)
Just stay clear of anything like:
- themaltmiller.com/ingredients/hops/best-citra-hops-2018/
To me, that looks more like a URL slug for a blog post, which may deter the click.
Same goes for:
- themaltmiller.com/ingredients/hops/whole-hops/whole-citra-hops/
There’s no need to repeat words like this. It doesn’t make it more “SEO-friendly”—it just looks messy.
Here are some more tips for writing effective Ecommerce URLs:
- Keep them as short and sweet as possible;
- Include your primary/head keyword;
- Make the hierarchy and context of the page clear;
- Use hyphens (-) to separate words. Do not use rather than underscores, spaces, or any other characters;
- Avoid URL parameters (where possible)
2.3. Write Unique Product & Category Descriptions
Look at almost any big Ecommerce retailer.
You’ll see that they include unique descriptions on their category pages:

Camis & Vests category page from Topshop.
And product pages:

Broderie Trim Camisole Top product page from Topshop.
There are two reasons for this:
- It tells visitors more about the category or product they’re viewing.
- It helps Google understand what the page is all about.
Remember, Google ranks pages according to an algorithm… if there’s no written content on a page, it only serves to give the algorithm a hard time.
So I recommend adding unique descriptions to both category and product pages.
And when I say unique, I mean UNIQUE.
Don’t copy/paste product descriptions from manufacturers websites. Write the content yourself.
Here are a few guidelines for this:
- Include your head target keyword in the description;
- Sprinkle in long-tail variations, synonyms, and LSI keywords (where appropriate—don’t shoehorn!);
- Make sure they’re well-written and readable for visitors;
- Tell visitors things they may actually want to know! (duh!);
- Don’t ramble—keep them short and sweet
If the thought of doing this for every page on your site makes you want to cry (I feel you!), try starting with the most important pages.
I see lots of Ecommerce stores who also sell on Amazon using the same product descriptions on both platforms. Which version do you think is going to rank?
2.4. Add Schema Markup
How would you prefer your products to be displayed in the SERPs?
Like this?
Or like this?
It’s a no-brainer, right? The latter (with Schema markup) is not only more eye-catching, but it also provides the searcher with more information which can increase CTR by up to 30%.
This brings more traffic. Which results in more sales.
What’s more, Google uses this information to help understand your content. (e.g., is it a product page, category page, blog post, etc.—this is very useful for Ecommerce SEO).
But Schema markup can get quite complicated. So let’s try to distill the basics.
Product Pages
Add markup to your product pages so Google can provide detailed product information in rich Search results — including Image Search. Users can see price, availability, and review ratings right on Search results.
For this, you could use the schema.org Product markup.
There are a lot of different properties you can add to this schema property, but here are some of the most common, and the ones we recommend adding to product pages:
Here’s how this may look:
<div itemscope itemtype="http://schema.org/Product"> <span itemprop="name">Grainfather - All in one brewing system</span> <img itemprop="image" src="grainfather.jpg" alt='grainfather' /> <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"> Rated <span itemprop="ratingValue">4.3</span>/5 based on <span itemprop="reviewCount">11</span> customer reviews </div> <div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> <span itemprop="priceCurrency" content="USD">$</span><span itemprop="price" content="1000.00">1,000.00</span> <link itemprop="availability" href="http://schema.org/InStock" />In stock </div> Product description: <span itemprop="description">The Grainfather is an all-in-one all-grain brewing system. It's great!</span> </div> <
Category Pages
A category page listing several different products (or recipes, videos, or any other type). Each entity should be marked up using the relevant schema.org type, such as schema.org/Product for product category pages. However, if one item is marked, all items should be marked. Also, unless this is a carousel page, the marked items should not link out to separate details pages.
Hmm. Confusing.
Interpret that as you will. But here’s my take:
- You CAN markup multiple products on a single page.
- If you mark up one product on your list, you have to mark them all up.
However, with category pages, I think this is more about helping Google to decipher the type of page (category) than anything.
You probably won’t see rich data appearing in the SERPs for category pages.
For that reason, I DO recommend marking up category pages. Just keep it simple.
Here’s a site that does this well.
If you use breadcrumbs on your site (which I recommend), you can also add Schema markup to that too.
Here’s what Google says:
Google Search uses breadcrumb markup in the body of a web page to categorize the information from the page in search results.
Read more about this here.
Part 3: Technical SEO For Ecommerce Sites
Ecommerce websites are particularly prone to a certain few “technical” SEO issues.
In this section, I’ll briefly explain what those are and how to solve them.
By the way, we’ll be relying heavily on data from Site Audit in this section. So have it ready!
3.1. Fix Duplicate Content Issues
Site Audit > Internal Pages > Content Quality
You should see something like this:
I know this looks quite daunting, but let me explain…
This visualization of green and orange tiles shows clusters of duplicate pages on your website.
Green tiles are probably nothing to worry about. So we’ll ignore those for now. But the orange tiles show duplicate groups of pages that aren’t canonicalized (which means they may be a problem).
Let’s click one of those orange tiles and take a closer look.
Let’s take a look. I opened these two pages in browser tabs—here’s a GIF of me switching between them.
Did you spot the difference?
Me neither. That’s because these two pages are EXACTLY the same. It’s just the URL that changes.
Here are the URLs:
https://www.spoiledbrat.co.uk/collections/new-arrivals/products/i-scream-nails-pink-limousine-nail-polish
https://www.spoiledbrat.co.uk/collections/womens-wear/products/i-scream-nails-pink-limousine-nail-polish
But sometimes there may be a reason that two similar pages exist.
If that’s the case, a canonical link is your best friend. This will usually ensure that Google only indexes one of the pages.
You could also add a “noindex, follow” Meta Robots tag.
<meta name="robots" content="noindex,follow">
This is one instruction that Google definitely won’t ignore.
Adding a noindex, follow meta robots tag to your dynamic pages will ensure they get dropped out of the index as soon as Google re-crawls them.
Which means that you actually want Google to crawl them.
So don’t block these pages via robots.txt until they have disappeared from the index.
After that, you can block them to make sure:
- They don’t come back;
- You don’t waste crawl equity
Add the meta robots tag, set to ‘noindex, follow’ to all dynamically generated pages on your store. For more information on how to use the meta robots tag, check out our guide.
3.2. Find Deep (or Orphaned) Pages
You want your category and product pages to be as easily-accessible to visitors as possible.
That’s why the general rule is that pages should be no more than ~3 clicks away from your homepage.
Good structure = homepage > categories > subcategories > products
Bad structure = homepage > category > category etc.
But while this is a good rule of thumb (especially for smaller ecommerce sites), it’s not always possible.… especially with large sites.
So I think a better rule of thumb is this:
Make sure none of your IMPORTANT pages are more than three clicks from your homepage.
But how do you find deep pages are anyway?
Site Audit > Data Explorer > Depth is greater than 3 > Is valid (200) internal HTML page = Yes
It’s worth investigating these pages and adjusting your internal linking structure so that they’re fewer clicks from the homepage, if necessary.
Here’s how to find orphaned pages (those without any internal links pointing to them):
Site Audit > Data Explorer > Inlinks = 0 > Is valid (200) internal HTML page = Yes
That’s 398 orphaned pages.
These are worth fixing.
Focus on the indexable pages first.
These are the most important pages from an SEO standpoint.
3.3. Find Keyword Cannibalization Errors
Keyword cannibalization is when a single website (e.g., ahrefs.com) unintentionally targets the same keyword across multiple posts or pages.
Yep—I’m quoting myself in my own articles these days… how modest of me.
But absurdness aside, this is a problem that many Ecommerce sites suffer from—especially the older ones.
Here’s a full tutorial showing how to find and fix keyword cannibalization problems.
Part 4. Link Building for Ecommerce Sites
Building links to your homepage, product and category pages is notoriously tricky.
However, this isn’t necessarily a bad thing.
If it’s difficult for you, it’s also difficult for your competitors. This lowers the number of links required to rank #1.
But you do need some links. So here are a few ways to get them.
4.1. Find Sites Linking to Your Competitors’ Homepages
Imagine if there was a way to find sites that are linking to multiple competing sites.
That would be a good way to find sites that are also likely to link to you, right?
Definitely.
Here’s how to do it:
Link Intersect > enter competitor homepages
I recommend adding at least two competitors, then opting for the “any of the below targets” option to begin with.
Link intersect will then show you which sites are linking to those competitors.
All you have to do then is sift through the results looking for easily replicable sources of links, such as links from:
Forums:
Links pages:
Niche-relevant directories:
And because these sites are linking out to multiple competitors, it will often be easy to get them to link to you too.
4.2. Get Featured on Manufacturers “Where to Buy” Pages
Many product manufacturers have pages like this:
They list the stores (online and offline) that stock their products. And they usually link to them too.
One way to find such pages is to Google the brands you stock followed by {manufacturer whose product(s) you stock} intitle:“where to buy” OR intitle:“stockists”
Check out any relevant results and see if they list (and link to) stockists like yourself. If so, reach out and request to be added.
You can also use Ahrefs for this.
Site Explorer > enter a competitor’s domain > Backlinks
Then search for words like “stockists” or “where to buy” in the search field.
If any are relevant, reach out and request to be added.
4.3. The ‘International Alternative’ Technique
Here’s how this works:
- Find a competitor in a different market (e.g., one serving the US, if you serve the UK)
- Find blog posts recommending/mentioning that competitor
- Request that they link to you too, as it “might be useful for their UK-based readers”
Let me give you an example for The Malt Miller.
The Malt Miller sells brewing equipment and supplies in the UK.
Northern Brewer sells brewing equipment and supplies in the US.
So let’s find blog posts recommending Northern Brewer, then see if there’s scope to get our link added as a UK alternative.
Content Explorer > “from {brand}”
Here are the results for “northern brewer” — all 1.8K of them.
Not all of these will be relevant, but some will.
For example, here’s a blog post about brewing cider that mentions and links to Northern Brewer:
It’s a great post that talks about the cider brewing process, and the ingredients and equipment you need.
But UK readers will end up clicking through to a site that doesn’t ship to their country. So the addition of a UK alternative on that page would definitely be beneficial for such readers.
Here’s another page:
Similar story. They link to Northern Brewer (and Amazon.com, actually), which isn’t very useful for UK visitors.
Building a link from these sites can be as easy as reaching out and requesting they add you as a UK alternative to the page.
Here’s an example email:
Hey [NAME]
Josh from The Malt Miller here.
I just came across your guide to brewing cider and noticed you linked to Northern Brewer.
Having been in business for X years, I know Northern Brewer are a great supplier of the equipment you mention (airlock, siphon hose, Star San, etc.). But unfortunately, they don’t ship to the UK.
However, we do sell these products in the UK. So I was wondering if you might consider adding us to that post alongside Northern Brewer — I think this would be useful for your UK visitors.
Let me know.
Thanks!
Josh
Do that a few times, and I’m sure you’ll land some links.
Part 5. Content marketing for Ecommerce Sites
At the start of the previous section (link building), I mentioned that building links to product and category pages is notoriously difficult.
This is because very few people want to link to such pages.
The reality is that it’s much easier to market and build links to informational content, such as blog posts, infographics, tools, etc.
But these types of pages rarely drive direct sales and conversions for Ecommerce sites.
Having said that, you can use content marketing to boost the pages that really matter (product and category pages) on your Ecommerce site.
For this section, I will again be using The Malt Miller as an example.
5.1. Create Something ‘Linkworthy’
First things first, you need to create a piece of niche-relevant content that will attract links.
Here are some resources to help you with that:
But as I want this guide to be super-actionable in itself, here’s one trick for finding linkable ideas in your niche. Just go to:
Content Explorer > enter a keyword related to your niche > filter for pages with 100+ referring domains
Sift through the results looking for something super-related to your niche, such as this brewing calculator:
This has 128 referring domains, and it actually also gets some traffic too (nice bonus!)
So we have a proven content idea (brewing calculator) that is both related to our niche and likely to attract a lot of links.
At this point, it’s simply a case of creating something similar—and hopefully better.
Then you can use the guides below to promote and build links to it.
5.2. Strategically Add Internal Links
So now you have an informational piece of content that has hopefully attracted a fair few links.
The next step is to internally link from that content to one or more pages you want to boost.
Here’s my advice for this:
- Make sure you’re linking to relevant internal pages ONLY: For example, it probably wouldn’t make sense to link to a brewing equipment page from a brewing calculator. People who are using a brewing calculator almost certainly already have brewing equipment. But having done some calculations (with your calculator), they may realize they need more ingredients. So it would definitely make sense to link to your ingredients category page.
- Link to a product or category page: Remember, these are the pages you’re ultimately trying to boost, as they directly convert to revenue for your business. Internally linking to these pages will help to boost their position in the SERPs.
To give an example of this strategy in action, take a look at this refractometer calculator from Northern Brewer.
According to Site Explorer, it has 2K+ links from 74 referring domains.
Which is probably why Northern Brewer chose to link to their “Hydrometers & Refractometers” category page from the calculator page.
FYI, their “Hydrometers & Refractometers” category page ranks #1 for “brewing hydrometer.”
Final Thoughts
No SEO wheels were reinvented here. But if you follow the advice given in this guide, I can pretty much guarantee that you’ll fare better than 90% of your competitors.
Want more marketing strategies for your ecommerce store? Read this guide.
Did I miss anything? Let me know in the comments! 🙂