As we discussed on the previous part of this guide, pagination has both pros and cons and sometimes it can’t be avoided. Your SEO campaign can be severely affected by pagination: Segmenting pages into several parts seriously reduces their strength, it lowers the chance of achieving high rankings and it leads to duplicate content problems. In this article we will discuss the effect of Pagination on the SEO campaign, we will present the best practices and methods that one should use and we will provide tips on when and how to implement pagination.
The effects of Pagination on SEO
As we briefly explained on the first part of the guide, pagination causes several SEO problems.
Incoming Links, PageRank and other metrics
First of all when you segment a piece of content into a series of pages, you also split important Indexing Properties such as incoming links, PageRank, Anchor Text data and Social Media shares. This has a direct effect on your rankings since the strength & importance of the page is divided among the series.
Crawling and Indexing
Another major problem of Pagination is that it makes it more difficult for search engines to crawl all pages of the website. This is because the distance between the page series and the homepage is increased and the search engine robots require more steps to reach them. This affects directly the amount of pages that are indexed and thus your rankings.
Internal Link Structure
Pagination heavily affects the Internal Link Structure that you created on your initial plan. The amount of link juice that flows from Homepage to the paginated pages is reduced significantly as you add more levels on your Tree-like Internal Link Architecture. This is directly related with the above 2 problems.
Duplicate content problems are also very common when pagination is used. This is particularly true when you paginate a list of entries (such as a list of products or articles). When those pages do not contain enough content for each entry of the list (product or article), they become a source of duplicate content problems. Moreover in specific types of websites such as online stores, where advanced filtering features are used to display the products, this effect becomes stronger.
Other Side Effects
Pagination is also known to be responsible for other unexpected side effects. Sometimes internal pages of the page series appear on Search Engine Results. If they are not optimized or relevant enough to attract user’s attention they lead to a drop on CTR and to an increase on Bounce Rate.
View-All pages & rel=”canonical” VS rel=”next” & rel=”prev”
Currently there are 2 main methods that you can use in order to resolve the problems that are caused by pagination:
a) Using View-All pages and URL canonicalization on the page series
b) Marking your page series with rel=next and rel=prev.
Note that there is a 3rd option which is to let Search Engines detect algorithmically the Pagination. Theoretically this can be considered an “OK” option if you don’t want to make drastic changes on the structure and web development of your website (given that you don’t face major SEO problems of course). Nevertheless it is strongly recommended to provide hints to the search engines on how to handle your content especially when you are developing a site from scratch.
View-All pages & rel=”canonical”
The View-All pages contain all the information of the page series on a single document. In case you are paginating a list of products then the View-All page would be a single page that contains a list of all the products of the particular category. In case you are paginating an article then the View-All page contains all the pieces of the content on a single page.
The main idea of this technique is to provide to search engines a page that contains the complete content of the paginated series. In order to avoid duplicate content issues and to pass Indexing Properties from the page series to the View-All page, you must use rel=canonical tag. On the top of each page series you must place a rel=canonical directive pointing to the View-All page. Here is an example of how to use this technique. Say that for some reason you have split your content into 3 pages:
some-paginated-page1.html, some-paginated-page2.html and some-paginated-page3.html
In order to create the View-All page you must take the content (text, images, videos etc) from all 3 pages and add it to a new page:
Finally to make this work you must edit the 3 initial pages and place on their HTML head the following tag:
<link rel=”canonical” href=”http://www.example.com/some-paginated-complete.html” />
This technique should be used when:
- The View-All pages are available/supported on your website
- The loading time of View-All pages is not too high and the navigation is simple for the users
- You want to maximize the Keyword Combinations for which your content can rank
- You don’t want individual pages from the page series to appear on SERP
- It is not a problem to drive Search Engine traffic to the View-All version of your content
- You want a relatively simple and clean implementation
rel=”next” & rel=”prev”
This technique is more advanced than the previous but it allows you to do more complicated integrations. The rel=”next” and rel=”prev” elements are added on the HTML header of the page and work just like other rel=* tags to indicate a relationship between 2 documents. More specifically the rel=”next” tag shows the URL of the next page of the series while the rel=”prev” the previous one.
Here is an example of how to use this technique. Say again that for some reason you have split your content into 3 pages:
some-paginated-page1.html, some-paginated-page2.html and some-paginated-page3.html
In order to use this technique you must edit the 3 initial pages and place on their HTML head the following tag:
<link rel=”next” href=”http://www.example.com/some-paginated-page2.html” />
<link rel=”prev” href=”http://www.example.com/some-paginated-page1.html” />
<link rel=”next” href=”http://www.example.com/some-paginated-page3.html” />
<link rel=”prev” href=”http://www.example.com/some-paginated-page2.html” />
Note that if your webpage is not a static HTML document but it is dynamically created and thus passes parameters on the URL, then all of the parameters must be also present on the rel=”next” and rel=”prev” URLs. For example if the following URL is the first page of the listing of the products of a particular subcategory:
Then this is how you must specify the relationship with the next page:
<link rel=”next” href=”http://www.example.com/category.php?catID=3&subcategory=5&page=2″ />
Finally if your URLs contain parameters such as Session IDs, those must also be present on the next and prev elements! For example if your page is:
This is how you must specify the relationship with the next page:
<link rel=”next” href=”http://www.example.com/category.php?catID=3&subcategory=5&page=2&sessionID=a32f1031” />
Last but not least to avoid having duplicate content issues due to the sessionIDs or other unnecessary parameters, you can use in each page of the series the rel=canonical elements:
<link rel=”canonical” href=”http://www.example.com/category.php?catID=3&subcategory=5&page=X” />
Where X is the number of each page. This technique should be used when:
- The View-All pages are not available on your website
- The loading time of View-All pages is too high or the navigation very complicated
- You don’t want to drive traffic to the View-All pages
- You want individual pages from the page series to appear on SERP. In fact if your content is segmented appropriately, you can optimize each page (Title, Description, Text etc) for different keywords and try to achieve better rankings and higher CTR. (Note though that 90% of the cases the page that appears on SERP is the first page of the series).
Last but not least note that rel=next and rel=prev is considered a strong hint by Google and that they are not forced to follow this directive.
10 Tips on how to implement pagination
First of all, my advice is to not to use the above techniques if you are not tech savvy or if you don’t fully understand them. It is very easy to shoot yourself on the foot and damage your SEO campaign. If your current website works and you don’t face a lot of problems, you can leave the analysis on Google. On the other hand if you are experienced, you want to have control over how Search Engines analyze your website; especially if you are developing a new website. Below I list 10 tips that will help you decide when and how to use pagination:
- Use pagination only when it is necessary; pagination always comes with a price.
- Over-segmentation is annoying for the users and causes problems on Search Engines.
- Unless you have a very important reason, avoid paginating articles and content.
- Pagination is in 99% of the cases required when you have a list of entries.
- Most of indexing properties, such as Links and PageRank, will be transferred by using the 2 techniques that are described on the article. Nevertheless have in mind that some of the signals might not be included or fully transferred.
- The “View All” pages are good for SEO but if you support them why did you do pagination anyway? You are still driving traffic to those pages via Google. Ask yourself again, do you really need pagination?
- View-All pages will be extremely slow for lists once the size of your website increases. Use the rel=next and rel=prev implementation to paginate lists of articles or products.
- Implement pagination by using all the best currently available web development techniques: Use SEO friendly URLs, Canonicals and mind your link architecture etc
- If you are experienced take control on your hands. If you are not experienced let Search Engines decide for you.
- Pagination will not affect only your SEO campaign, but also your Web Development, the User Experience, your Marketing and as a result your Business. Make sure you understand how all of these will be affected before you decide your implementation.
The last tip is very important and it is probably what most people don’t understand. We will dedicate our last article on this and we will examine a Real Life example which will show how complicated the decision making can become. Moreover we will see how you should select the implementation that matches your needs and what parameters you should take into account.