Many websites (mostly ecommerce) are promoting such a variety of products that they´re ultimately forced to divide them into multiple pages. This process is called pagination, as shown in the following images:
In these two cases the great range of products available obligates the website owners to divide them in many pages. The difference between the two cases is that in the first case we can only see the products listed by page while in the second case we have the option of seeing the full list of products in a single page. This is what we call a “view-all” page. We will discuss the 2 websites / cases in more detail further on but if you wish you can observe them in the following URLs:
Issues that result from pagination
There are two main issues that need to be addressed when using pagination. These are:
1. Duplicate content issues
Usually when we are using pagination most of the pages tend to have identical or similar content and often the meta title and meta description are also similar between the pages. When this happens Googlebot may be traversing about the pages that should return to the search queries.
2. Crawling issues
Google (Googlebot) is “crawling” each site depending on the authority it has. So especially if your site is new and contains many pages that are not so important there is the danger that Google won’t index them all, especially if the depth (level of the clicks) is too “deep”. In this case you could lose important pages from being indexed in Google search queries.
Solution for pagination issues
1. Use of the command “rel = prev” and “rel = next”. In the first case discussed in the beginning of the article (without a “view all” page) we ought to use this command. This way we create a connection between all pages and Google is verifying them as one entry, therefore avoiding duplicate and crawling problems.
Important note: In the first page there’s only rel=”next”, while in the last page there’s only markup for rel=”prev”.
In case you are using this application this is how the HTML code should look like:
<link rel=”next” href=”http://www.exmlmoza.com/page2.html”>
<link rel=”prev” href=”http://www.exmlmoza.com/page1.html”>
<link rel=”next” href=”http://www.exmlmoza.com/page3.html”>
<link rel=”prev” href=”http://www.exmlmoza.com/page2.html”>
<link rel=”next” href=”http://www.exmlmoza.com/page4.html”>
<link rel=”prev” href=” http://www.exmlmoza.com/page3.html”>
2. Use of the “rel=canonical”. We should only use this command in cases like the second one we discussed in the beginning of the article where there is a “view all” page. This way Google understands that there is a preferred page the “view all” page representing all of our pages to the search queries.
For using this application just add a rel=”canonical” tag within the <head> section of each page, pointing to the View-All Page. (e.g. <link rel=”canonical” href=”http://www.exmlmoza.com/view-all-page”/>).
According to Google this is considered a user-friendly method, thus promoted as being the best one available.
Extreme caution is needed when using this method that should only be used when necessary and when:
- The loading time of View-All pages is fast enough and the navigation relatively easy
- You can add the Keyword Combinations of all other pages for optimization purposes in the “view all” page
3. According to Google there is also the option of not doing anything at all since pagination is a very common application not necessarily needed since the algorithms used can easily detect and return to the search queries the most relevant result without the need of using any commands like “rel=prev / rel=next” or “rel=canonical”.
4. Another solution is the use of the noindex command. This way we are keeping Google from indexing all the pages and we are permitting only the first page to be indexed. This method is really easy to be implemented but, on the other hand, it hides the full content of our website from Google’s index.
Plugins for pagination and simple CMS
There are some plugins that can be used when dealing with pagination issues if you are using WordPress or Magento as CMS. Two of them are:
This way you manage to automatically input the “rel = next” “rel = prev’’.
When to use pagination
- Only when necessary
- When displaying a list of products (like ecommerce)
- When there’s a “view all” page… or not?
- Not for an article (if possible)
After all, pagination is not only affecting the SEO but the user experience as well.
It is very important especially for ecommerce sites, as it helps the website to be better indexed and allows you to also increase your targeted keywords in a single page if you are using the rel=”canonical” for a “view all page”.
As for the user experience, you have to investigate each time which solution is more helpful for your users, pagination with a view all page, pagination without a view all page or just a view all page? The best way to investigate this is to implement some A/B tests, examine a real life senario and figure out the way that is bringing you better revenue.
If you have any more suggestions, please do not hesitate to add a comment. You just have to register!