Pagination, navigation, canonicalization – OH MY! If you’re an ecommerce site these are all woes that you’re probably familiar with already. How do I make my 20,000 pages accessible and useful for my users? Can I make it both functional for my users as well as for search engines? What are the SEO implications of allowing spiders to crawl the endless abyss of filterable pages on my site? And what about duplicate content? Great and common questions – luckily for us Adam Audette from the formerly AudetteMedia (now RKG) presented some solutions at SMX Advanced in Seattle.
Adam’s slide deck is included at the bottom of this article but I’m going to run through a few of his main points.
- Pagination do’s and don’t
- SEO for faceted navigation
- Rel canonical implementation
For sites that have a lot of content it often makes sense for them to give their users the ability to filter their content with faceted navigation as well as offering paginated results. Paginated results can add value by reducing page load time but it can also lead to a few complications with your SEO.
Let’s take a look at Zales for example – they have paginated results that live on urls with specific page numbers in the url parameters. (The bolded text in the url below highlights that this is a paginated result)
All of this paginated content is being indexed by the search engines and can create confusion for crawlers. And now that we’re living in a post-Panda/Penguin world the term “duplicate content” should resonate with most webmasters and get their attention. So what are some ways that we can build up our defenses against issues like this?
Noindex, follow pagination method
One way to dance around the issue of duplicate content from pagination is to use the noindex, follow attribute on all pages after the first one. This means that if your url parameter is pg=2, pg=3, …., pg=N where N equals the page number in the paginated series, whenever N>1 you would have the noindex, follow on those pages. By doing so, you’d make sure that you’re only sending traffic to that 1st page (which should be your most important/relevant page for that category) but you’re also telling the search engines to follow all the links that are on that page. The follow attribute is going to make sure that we’re passing rank effectively through our site and that the crawler can actually access the rest of our site.
You should also have the rel=”canonical” tag implemented on these pages as another signal for Google to pick up on. The canonical links in the paginated series should all be self-referencing – page 1 points to page 1, page 2 to page 2, etc….
Rel=”next” and Rel=”prev”
Rel next/prev is a newer format that Google has introduced to try to better understand our websites. Rel next/prev actually consolidates all the pages and content in a paginated series onto “one page” by telling Google which pages are connected to one another.
Paginated content with still show up for a site: search even with this rel markup (Mindy, from Google confirms this at #SMX) since Google’s still crawling those pages. So if you site: search for an exact title match of a page you should still see pages 1, 2, 3, 4, etc showing up. The only difference is that Google can then decide which paginated listing is the most relevant to a particular query and only show that one.
So the key takeaways with rel=next/prev are:
- All pages are being indexed but only ONE will rank
- A paginated page can outrank page 1 if it’s more relevant
Protip – the canonical should still be self-referencing on the pages your adding rel next/prev markup. You don’t have to worry about having duplicate titles and metas on these pages since they’re going to be seen as part of the same page by Google anyways.
A Side Note on View-All Pages
Users LOVE view-all pages. They love being able to see all the content right there on one page without having to click a link to more content, waiting for that next page to load, etc. If you’re doing a good job of making sure that your valuable content rises to the top of a view-all page then it’s often a preferred user experience on your site.
However, view-all pages introduce some complications in that they dramatically increase the amount of data that’s being loaded on a page. This is most often a no no for ecommerce sites that have thousands of products that can load on any given category or subcategory page.
So if you decide to target the best user experience on your site make sure that you have FAST view-all pages! Your servers may not like you for this but your users definitely will =]
We took a look at how Zales is using faceted navigation to let their users find what they’re looking for easier. Faceted navigation is a great option for your sites and most platforms actually have this feature built-in since the value in having it is obvious.
But when you’re using faceted navigation you have to keep one thing in mind: you’re trying to enhance the customer experience on your site. Faceted nav doesn’t always mean that it’s best for search engines even though you may be doing right by your users. In fact, it can often create pages that are of little or no value to people searching on the search engines.
For example, if you have default pricing filters on every page, you might see something like a category page for Android tablets but with the filter for “$25.00 and Under”. Wait a second… that page obviously wouldn’t make a whole lot of sense since there wouldn’t be any offers for tablets under $25. If you find a specific example where there are send me the link and I’ll buy one for the both us!
But that’s the kind of low quality page that Google’s weeding out of their index with Panda and Penguin.
So ask yourself:
When this filter is selected is it essential or just an overhead?
- Price range filters may not add as much value as a filter for a specific brand or model. Although price ranges may be relevant when the user is on your page, they’re not as relevant to the search engines.
- Always force canonical paths regardless of filter
The downside of making faceted navigation crawlable/indexable is that it increases overhead costs associated with your servers. However, with the right strategy and implementation you should be able to cover the additional cost via a growth in conversions coming from organic search.
Check out Adam Audette’s slides from SMX Advanced!
There’s a bit more information in Adam’s slide deck, including a few more real life examples that help illustrate the main points. Be sure to check it out and follow him on Twitter if you can – @audette – you won’t regret it!