We have a website which lists machine parts by code number. These show in a paginated list:

/parts?page=1 has records 1 to 25 of 356736.

We use canonical, next, and prev links. The list may be filtered by brand or by (partial) code number, so /parts is the overall list, /parts?brand=brand-name is a sublist, and /parts?code=0.008 is another list. The, canonical, next, and prev links take this into account, so next and prev only change the page number (they retain the rest of the URL), while the canonical URL retains only relevant URL parameters.

Each individual part also has its own page, which is at /parts?part=[CodeNumber]. The URL may contain a bunch of other parameters relevant to filtering the list, which are used to supply backlinks to the list, but the canonical link is the simple, tidy URL. There are no next or prev links for individual part pages.

There is also /sitemap, a HTML which contains a link to each page, each product, and each part on the site. One massive long list. (It does link to the overall list of spare parts, but only to the first page thereof, not each page of the pagination.)

There is also /sitemap.xml, which is an XML sitemapindex linking to eight individual sitemaps, which between them contain all the URLs shown in the HTML sitemap.

Searching by part code returns inconsistent results.

For a few items, mostly those early in the list, Google brings us straight into that part’s unique page. For a few others, also early in the list, Google brings us to the correct page of the paginated list, which is a reasonable compromise.

For part codes in the middle of the list, Google brings us to /sitemap, which is not ideal but better than nothing.

And for part codes in the latter half of the list, Google doesn’t find them at all.

Is there anything I can do to improve our results?

While our SEO links (next, prev, and canonical) are correct on this list and have been for some time, canonical links in other parts of the site have been a bit messy till now (mostly, each page just pointed to itself, resulting in a certain amount of duplicate content). I fixed them today. Might that have an effect?

  • The idea was that people would come from Google straight to the relevant page. Failing that, they'd use our in-built search, which does work.
    – TRiG
    Dec 18, 2018 at 17:37

1 Answer 1


You have created the worst possible site structure possible for both users and SEO. You have products that are 14,000 clicks away from the home page. Users and search engines like sites that are tightly linked. That is that every page is only a few clicks away from any other page.

Pagination is bad for SEO. It may get Googlebot to come crawl all your content, but it won't get much of that content indexed. Google indexes pages only when they have unique content; only when users are likely to search for that content; and only when the pages have enough PageRank. After just a couple pages of pagination almost all the Pagerank has been used up. That is why you are seeing only products near the beginning of the list get their product pages indexed.

Pagination is bad for usability. Only 1-2% of users ever interact with pagination. Almost all of those users only get to page 2. Implementing pagination is easy, but it won't help users get to the products they are interested in.

Sitemaps are also a red herring. They don't help SEO any more than pagination. See The Sitemap Paradox.

So, what should you do instead?

  1. Link each of your product pages to 10 to 50 other product pages. Create links that will help users; things like "people who bought this also bought", or "similar products". Not only will it help users but it will pass the PageRank through your site more efficiently. That is why this site has a "related questions" list on every question page.

  2. Implement site search. Users love site search. It is far better for users than pagination. (Great, I see from your comment that you already have this!)

  3. Implement faceted navigation. Allow users to be able to drill down within your product catalog on facets like price, brand, size, color, and features. It may also help SEO for Google to crawl a few facet pages such as "blue widgets." But prevent Googlebot from crawling very specific facet pages such as "1 inch BrandX blue widgets with robo-zoom"

  4. Link to a selection of your top products and your best categories on your home page. Your home page can easily support 200 links. This will help seed PageRank deeper into your site while giving users suggestions.

  • The problem is that these are machine parts. They have a brand and a code number, and that's it. I have no idea what most of them are. Someone looking for a spare part for his tractor isn't going to browse the site, they're going to type their exact part number into a search, and hope to land directly on the relevant page. I don't really expect anyone to page through the list.
    – TRiG
    Dec 18, 2018 at 17:57
  • (The search does work, yes. Ideally, we'd like to appear on search engines too. When we do appear on Google, we're often the only result, or one of two or three. Not many people are selling these things.)
    – TRiG
    Dec 18, 2018 at 17:58
  • Google also doesn't index pages with very little content. If you want to get indexed on Google you'll need more than just a brand name and a code number. Even details such as which tractor the part fits would be something. That would allow you to create "other parts for this tractor" listings. Dec 18, 2018 at 18:16
  • Hmm. We don't have that data, but I'll try asking for it.
    – TRiG
    Dec 18, 2018 at 18:35

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.