SEO tips for e-commerce sites

Here are several SEO-related ideas you might find useful for your e-commerce site. Because I’d like to keep the information current, this post may update without notice.


1. Perhaps think twice before requiring (or requesting) your potential buyers to do anything beyond making a purchase.


Because with every extra click you can lose buyers, streamline the purchase process.

  • If possible, avoid requiring users to login or register since this step can eliminate buyers. It was referred to by Jared M. Spool as The $300 Million Button. He writes that users “resented having to register.” After one site removed the required login/register button, “the number of customers purchasing went up by 45%… For the first year, the site saw an additional $300,000,000.”
  • User feedback and new user signups are great, but unless you also consider this action a conversion, perhaps postpone interstitials and overlays until after checkout. Not only do interstitials/overlays force an extra click to close the window (potentially losing buyers), but with mobile phone browsers they can be extremely difficult to focus and click-to-close, rendering your site useless for purchase for a user on-the-go.
Overlays and interstitials prior to purchase can distract your shoppers.


2. For items that are temporarily out-of-stock, you can still likely return 200.


Unfortunately there’s no such thing as a “temporarily out-of-stock” HTTP status code. So what should you do with temporarily out-of-stock items? Like most SEO issues, the answer depends on your individual situation with consideration for the user experience:

  • If you think users won’t be frustrated by your few temporarily out-of-stock items, then returning a 200 response code with a helpful message to users is likely your best bet. If it’s indeed temporary, a 200 response allows search engines to keep the page in our index (whereas if you return a 404 it may be removed for a period of time). Next, you can be helpful to users by informing them of when the item will return, providing alternatives to the item, or allowing them to be notified (e.g. via email alert) when the item is back in stock.
  • If you think users will become continually frustrated by your temporarily out-of-stock items (e.g., many of your items are out-of-stock, or your site seems to falsely advertise availability), then it’s time to shape up! Ideally, users should trust your site, want to buy from you, and want to tell their friends all about their great experience. If, instead, users view your site as constantly out of stock, their experience will diminish, and with it, potentially your profits. For pages that return little value to the user, you can mark them noindex until your inventory/page improves.


3. For permanently sold out items, 301 to a helpful alternative or simply 404.


Let’s say “My Memoir (1st edition)” either sold out or is no longer in production. What should you do with the product page, Two viable options:


  1. 301 to a helpful, related alternative for the user. For example, the “My Memoir 1st edition” page can 301 redirect to the “My Memoir 2nd edition” page. This allows users who click on the existing links to “My Memoir 1st edition” to be immediately sent to a related helpful product. This also helps SEO efforts because it can preserve many of the relevant indexing signals.
    • Check Fetch as Googlebot in Webmaster Tools to make sure the 301 is configured properly.

      Returns a 301 to
    • Also, within Fetch as Googlebot, you can also have the new URL
      submitted to be crawled.

    Unlike returning a 404 for out-of-stock pages, 301s require some foresight to redirect appropriately, as well effort in long-term maintenance. For the full benefit of a 301, the redirect must essentially remain in place “forever.” Imagine many products, living and dying (or whatever products do) — their lifecycle creates lots of pages, lots of 301s to maintain, and has caused headaches for your fellow webmasters. Essentially, weigh the downsides as well as the upsides when deciding whether to 301.

  2. Otherwise, 404 the page with a helpful message and perhaps next steps for the user, such as a helpful search box or related items. 404s can simplify maintenance over time.


Please don’t 301 to the homepage or serve a soft-404 (a 200 that says “Item no longer available”). A 301 to the homepage, since it’s unrelated, doesn’t often preserve indexing signals as one might expect. And it’s a jarring user experience. So again, best to avoid the 301-to-homepage and soft-404 for permanently out-of-stock items.


4. Include form-filling to reduce the bottleneck users face when entering their information at purchase time.


Form-filling remembers your visitors’ common profile information and pre-populates forms with those values. There are form-filling providers, such as Chrome Autofill, and the proposed standard of autocompletetype.

I’m kind of lazy so this is the same image from the WMC Blog post.


5. Monitor your site speed.
As I’ve written before, aim for under 2 seconds.


6. Be savvy about product variations (e.g. a shoe that comes in black and beige, sizes 6-12)


There are variations in handling product variations. Choosing the best technique often lies in what’s best for your visitors.


Creating a general product page that lists all variations


Many times, if variations only exist in size and color, webmasters create a general product page (e.g., “Taccetti ‘53166’ Pump”) with all versions available. This simplifies the consolidation of indexing properties, like links, to the general product page. Only the general product page will surface in search results.

  • When displaying the general product page’s thumbnail (the default version), consider highlighting for users that variations exist. Here’s a screenshot from that lets the user know they can see more “colors & views.” Additionally, color swatches can also be displayed in this view rather than just text. In the example below, the variations of “colors & views” display through javascript for quick loading.
  • nordstrom-product-variations
    Some people can afford $355 pumps.


  • On the actual product page, it’s common to have pulldowns for selecting size and color, well as swatches for swapping the product’s image. To have variations surfaced more easily by search engines, such as for queries such as [Taccetti pump beige], perhaps include the variations in text — not just swatch images or a JavaScript pop-up, but an actual sentence that says “available in beige and black.” Visible text is search engine friendly!

General product page listing all variations. You can also include more text to specify and disambiguate colors.


Creating an individual page for each variation


In addition to a general product page, or instead of a general product page, some webmasters create individual pages for each variation (e.g., URL for “Taccetti ‘53166’ Pump in Beige” and URL for “Taccetti ‘53166’ Pump in Black”). If it’s common for your users to browse (“Heels > Color > Beige”) or to search for specific variations ([beige heels]), displaying a specific page that confirms their interest in a particular variation can make sense.


Some webmasters also create individual pages for a variation that’s very popular or converts particularly well (e.g., “The leopard print Taccetti 52166 is flying off the shelves! Perhaps we should make a page for this version in addition to the general Taccetti 52166 product page.”). For this type of “high demand” item, including more than the default product information can make popular products even more compelling for users (e.g., rather than “available in leopard print,” you could research more about the product, such as “The exotic print was inspired by the African Leopard native to the sub-Saharan region. This shoe was spotted on the famous feet of Madonna and Beyonce.”)


Some tradeoffs/decisions to note when working with product variations:

  • Often having individual pages for each variation dilutes indexing properties and links, because rather than users linking to a general product page (“Taccetti ‘53166’ Pump”), users may link to either “Taccetti ‘53155’ Pump in Beige” or “Taccetti ‘53166’ Pump in Black.”
  • Publishing individual pages for each variation, in addition to or in place of a general product page, can affect your search results — both on your internal site search (e.g., search box on and in search engine search (e.g., on What content would you like returned in internal searches — to have all variations appear separately, to have the general version appear, or to have one variation appear (and suppress the other variations)? What behavior do you want from search engines — to show an individual variation page in search results or to display the general/default version?

    Google allows rel=”canonical” from individual product variations to a general/default version (e.g., “Taccetti ‘53155’ Pump in Beige” and “Taccetti ‘53166’ Pump in Black” with rel=”canonical” to “Taccetti ‘53155’ Pump”) as long as the general version mentions the product variations. By doing so, the general product page acts as a view-all page and only the general version may surface in search results (suppressing the individual variation pages).

  • We don’t recommend using rel=”next”/”prev” for each variation in the collection as if it were paginated content.


7. Include Product markup for Rich Snippets.


8. Consider some of the best practices in site architecture during your next redesign.

  • Hyphen-separate words and filenames (e.g., rather than
  • Keep URLs lowercase. This can simplify maintenance because robots.txt is also case-sensitive (e.g., create rather than
  • Create dynamic URLs with name/value pairs and standard encoding.


9. For duplicate content (especially caused by parameters), pick a preferred version of product page and rel=”canonical” the rest.



10. Consider your options for paginated content.

This video breaks down using rel=”canonical” and rel=”next”/rel=”prev”.


rel=”next” and rel=”prev” is useful for when you’d like individual component pages (often page one) surfaced rather than a view-all page.


11. Use Webmaster Tools URL parameters to crawl efficiently.


The more Googlebot knows about how your site works, the more effectively it can crawl. You can let Google know what parameters are for filtering, sort order, etc. (I’m filming a video to help with this feature in a few weeks. I’ll include a link once it’s live.)


12. Turn search result pages into helpful category pages.


While Google discourages “search results in our search results,” if your site design surfaces category pages similarly to search result pages, adding valuable content to the page makes the content more helpful to the searcher (and no longer just search results).


13. Make sure reviews can be found by searchers.


If your site maintains UGC and helpful reviews, maximize your search benefit by making sure that the reviews are:

  • Hosted on your site
  • Associated with the corresponding product page (i.e., not a separate URL)
  • Obvious to users, rather than hidden by an advanced interaction that less-savvy users may not notice


Last, but certainly not least,
14. Provide a value-add.


Create a reason for users to choose your site from the others, recommend your site to their friends, and generally build buzz about your site. This could be:

  • Unique products
  • Unique information, product descriptions, reviews (not just the manufacturer’s text).
  • High customer satisfaction (e.g., free shipping, low prices, caring support staff)
  • An excellent user experience
  • Unique customer appeal: family or locally-based, eco-conscious, etc.


Anyway, those are just some ideas. Additional tips and/or feedback welcomed!