Recently Updated: 16 min read

SEO Pagination for Ecommerce Category Pages

SEO Pagination for Ecommerce Category Pages

As a catalog grows, showing every item on one category URL can strain the browser, the application server, and the shopper’s ability to find a product. Pagination divides a long list into manageable pages. A poor implementation, however, can leave products on later pages difficult for search engines to discover. The opposite mistake is exposing every filter and sort combination as an indexable URL, creating a vast set of near-duplicate pages. A sound setup supports shopping and crawling at the same time.

This guide covers page size, durable URL patterns, sequential links, canonical tags, filter and sort policies, and JavaScript “load more” interfaces. There is no universal configuration for every store: adapt the technical pattern to catalog size, performance evidence, and how shoppers browse. For the related problem of filter-generated URLs, see our guide to ecommerce filters and faceted navigation.

What is category pagination?

Pagination splits a larger collection into sequential sections, each available at its own URL. A footwear category might show 24 products on the first page and the next 24 on page two. When someone opens page two, both the product set and the address should represent that state. A stable URL makes refresh, sharing, browser history, and direct visits behave predictably.

Pagination is different from filtering and sorting. The second page of running shoes continues the category’s list. A size filter narrows the list; a price sort rearranges the same items. These distinctions matter for URL policy. Sequential category pages need to be reachable, while filter and sort variations should be controlled according to whether they deserve search visibility.

Crawling, discovery, and indexing are separate

A crawlable URL is not automatically eligible to appear in search results. A search engine must discover the URL, access it, process its response, and decide whether it is useful enough to index. Pagination should first make later product groups discoverable. Each individual product page must also be accessible, useful, and eligible for indexing if you want it to appear on its own.

Google generally follows URLs in <a href> elements; it does not click a button the way a shopper does. If “Load more” depends entirely on a JavaScript event and exposes no destination link, the next page may not be discoverable through that control. Keep the button for shoppers if it suits the interface, but provide a crawlable <a href="/category/page/2"> destination too. If a product cannot be reached through category links, an XML sitemap can provide another discovery path, though it does not replace internal links.

How many products should each page show?

There is no ideal page size that applies to every store. Showing more products reduces the number of pages, but images, filters, and scripts can make each response slower. Showing fewer can shorten mobile browsing, while adding more navigation steps. Base the choice on card dimensions, image optimization, mobile interaction data, server response times, and user research. Copying the number used by a competitor is not enough evidence.

Measure more than a Lighthouse score. Test the actual path from category entry to page two, applying a filter, and using the back button on a mid-range phone. Track field metrics such as LCP, INP, and CLS, but do not put the entire catalog on one page just to reduce navigation. A controlled experiment can compare page sizes using conversion and product-discovery rates. Segment the result by device and category type before choosing a default.

Give each page a stable, distinct URL

Every indexable step in a paginated sequence should have a unique URL that returns the same page consistently. Common patterns include `/category?page=2` and `/category/page/2`. If you use query parameters, give them descriptive names. Google recommends clear `key=value` parameters because they are less ambiguous than a bare number. Changing the page number should return the corresponding product group, not the first page over and over.

Do not use a fragment such as `#page=2` to replace the product list. A fragment is not sent to the server and does not act as a separate page signal for Google. Session IDs, the current time, random campaign values, and other changing parameters can also make a crawler see endless versions of similar URLs. Normalize parameters, return a consistent response for invalid page numbers, and use one URL format in internal links. Review Google’s ecommerce URL structure guidance (Opens in a new tab) when choosing a pattern.

Which canonical should page two use?

Each paginated category page you want indexed should normally point its canonical to its own URL. Pointing `/shoes?page=2` to page one may not describe the distinct products on page two, and can make it harder for later items to be treated as a separate page. A self-referencing canonical does not guarantee that page two will be indexed; it tells search engines which URL you prefer for that page.

Choose whether page one uses the bare category URL or `?page=1`, then keep that choice consistent across navigation, breadcrumbs, sitemaps, and canonicals. If both versions exist, avoid maintaining unnecessary duplicates by redirecting one format or signaling the preferred one with a canonical. Use the same preferred URL in HTML, internal links, and the XML sitemap. Remember that canonical is a hint: Google may select a different URL based on the signals it finds.

Let shoppers move to the previous and next sections. Page one should link to page two; page two should link back to page one and forward to page three. Numbered links show a shopper where they are in the collection. On a long sequence, consider links to nearby pages and to the beginning so someone on page 18 is not forced to take many single steps backward.

Use actual <a href> elements rather than a div or button that only has an onclick handler. Give each link an accessible name such as “Page 3” or “Previous page.” Mark the current page with aria-current="page" so screen-reader users can identify it. Google recommends sequential links between paginated pages; linking back to the first page from pages in the set can also help clarify where the collection begins.

Do you need rel=prev and rel=next?

Google has said it no longer uses `rel="next"` and `rel="prev"` to understand pagination. If an older template still emits these tags, do not rely on them as the only path to later pages. Keeping them for another search engine can be a separate product decision, but they do not replace visible, crawlable links. The dependable foundation is a set of normal URLs that both shoppers and crawlers can follow.

Removing legacy tags is rarely an emergency on its own. It can be handled during template cleanup or a standards update. First verify that each `href` points to the correct page number, page two is reachable from page one, and the sequence does not form a loop. When an old SEO article says that prev/next markup is sufficient, compare it with current documentation. Search engine guidance evolves, so verify technical decisions against primary sources.

Keep filter and sort parameters separate

Color, size, brand, price range, and sort controls can create thousands of combinations. Most stores do not need every combination in search results. A URL such as ?page=2&color=blue&sort=price-asc describes a page, a filter, and a sort order at once. Decide which variants merit indexing based on search demand, distinct usefulness, and commercial goals instead of making every parameter indexable by default.

Choose a deliberate policy for variations you do not want indexed. Depending on the application, you might use a `noindex` directive, a robots.txt crawl rule, a canonical, or a redirect that normalizes parameters; these tools do not serve the same purpose in every case. A crawler must be able to fetch a page to see a `noindex` tag. If robots.txt blocks it, the crawler cannot read that directive. Compare the choices with our faceted navigation URL guide.

Make load-more and infinite-scroll interfaces crawlable

A “Load more” button can add products without forcing a full-page transition. But if added products have no durable URL or navigable path, refresh, browser history, and crawl discovery can break. When a click changes the address through the History API, make sure reloading that address returns the same product group. Rendering the initial products in the first HTML response also preserves a useful baseline when JavaScript is delayed or unavailable.

Infinite scroll may update the address as a shopper moves down the list, but this does not remove the need for separate URLs and normal links. Google’s crawler does not continuously scroll like a person. Make each section accessible at its own URL and provide links between sections. For implementation details, consult Google’s documentation on pagination and incremental loading (Opens in a new tab).

Build JavaScript navigation as progressive enhancement

A modern store can use client-side navigation without making the entire interface server-rendered. The initial HTML should expose product cards and real links; JavaScript can make transitions feel faster. Clicking a link should update the URL and content, and opening `/category?page=4` directly should return the same state. If the application changes only internal state after a button click, a direct-URL check will fail.

Check that page two has a link when JavaScript is disabled, then compare the initial response with the rendered DOM when it is enabled. Lazy-loaded images need attention too: if every off-screen image only appears after a user scrolls, discovery may be limited. Use real image sources and responsive variants; do not unnecessarily delay prominent images above the fold. Our JavaScript SEO rendering guide describes how to inspect rendered output.

A product should not be discoverable only through the store’s search box. Crawlers generally do not submit queries to an internal search form. Products should be reachable from category pages, subcategories, or other meaningful internal links. Sequential category pages provide a path to items lower in a list. Very large catalogs may not make it practical to link every product from a single page, so combine a clear hierarchy with supporting discovery sources such as sitemaps.

Review merchandising rules so important items are not stranded on page 40. Best sellers, in-stock products, or seasonal selections can receive contextual links from early pages and editorial collections. This does not mean pushing every item to the top; balance commercial priorities with relevance to the category. Read Google’s ecommerce navigation guidance (Opens in a new tab) for more on how internal links help search engines understand a store.

How should titles and category copy work?

Page two does not always need a completely different title tag. Google’s pagination guidance says pages in a sequence can share titles and descriptions. Still, a visible heading such as “Women’s Running Shoes - Page 2” can clarify a shopper’s position. Prefer a simple template tied to the page’s purpose over long, automatically generated descriptions packed with keywords.

If a category introduction repeats on every page, do not present that repetition as new value. A detailed introduction on the first page and a short context line or prominent product list on later pages may be more useful; the right choice depends on the theme and user evidence. Each URL must actually show the products belonging to that page number. A fake pagination system that changes the parameter but repeats the same cards undermines trust and confuses search engines.

Handle empty, final, and invalid page numbers

As inventory changes, a formerly valid last page can become empty. A category with 73 products and 24 items per page has four pages; after stock changes leave 50 items, page four is no longer useful. The application can return a genuine 404 or redirect to a relevant final page, depending on the situation. Sending every invalid URL silently to the category root removes the shopper from the place they requested and obscures why the address changed.

Validate page values on the server: zero, negative numbers, text, or extremely large values should not produce unpredictable results. Normalize repeated parameters, capitalization, and trailing slash variants. When a page disappears because inventory changed, consider a permanent redirect only if a close replacement exists. If a category has been removed or has no items, use an appropriate 404 or `noindex` policy and provide a useful empty state instead of a blank screen.

An XML sitemap is an additional way to report important canonical URLs; it is not a substitute for a useful internal link structure. Include only product and category URLs you want considered for indexing. Adding every filter combination or sort parameter can muddy the signals you send. Listing product URLs in a sitemap may support discovery, while links between category pages give shoppers and crawlers a meaningful browsing path.

After a deployment, sample sitemap URLs for response codes, canonical targets, and robots directives. Do not change `lastmod` on every request when the page has not materially changed. Compare sitemap coverage with the category hierarchy and inspect products that appear in the sitemap but receive no links from the store. Our XML sitemap audit guide provides a practical review process.

Find pagination issues in Search Console and server logs

Inspect examples of page-two and later URLs in Google Search Console. “Crawled, currently not indexed,” “Google chose a different canonical,” and a server error point to different investigations; a report label alone does not identify the root cause. URL Inspection helps compare the version Google last saw with a live test. Start with a handful of URLs, then expand the review to categories and page numbers using the same template.

Server logs show when Googlebot requested a URL, which response it received, and whether it keeps spending requests on parameters. If page one is crawled but page two is never seen, inspect link access, rendered HTML, and the next-page targets. If many parameter URLs are crawled, review filter rules and internal link generation. Search Console and log analysis complement each other. Our SEO server log analysis guide covers useful ways to segment requests; the indexing diagnosis guide provides a broader framework.

Pre-launch and post-launch checklist

  • Do page one, page two, and the final page return the correct product groups at distinct URLs?
  • Can a crawler follow a normal <a href> link from the first page to later pages?
  • Does every indexable page point its canonical to the preferred version of its own URL?
  • Are the page-one URL and `?page=1` handled consistently?
  • Do filter and sort URLs follow a deliberate indexing policy?
  • Does a direct visit or a JavaScript-disabled check still expose the page content?
  • Can products also be found through product URLs, useful internal links, and the sitemap?
  • Are empty categories, inventory changes, and invalid page numbers handled consistently?
  • Has mobile performance been measured on real devices?
  • Are crawl and response changes monitored in Search Console and logs after release?

Do not treat the checklist as a one-time SEO audit. Repeat it in staging and after launch as the catalog, inventory, and filter design change. Agreeing on acceptance criteria across engineering, SEO, and ecommerce teams reduces surprises between product decisions and technical requirements.

Common failures and practical fixes

A frequent mistake is giving every page the first category URL as its canonical. Check whether page two contains a distinct, useful product list; if it does, use its own canonical. Another mistake is exposing additional products only behind a button, with no URL for the next section. Keep the interface but provide a sequential link. A third is allowing every filter and sort URL into the index. First identify whether a combination deserves a stable, useful landing page at all.

Another failure is returning the same products on page two as on page one. This often comes from unstable sorting, backend offset errors, or inventory synchronization. If item order is random on each request, shoppers may see duplicates or miss products between pages. Add a stable secondary sort key, such as a product ID when popularity or date values tie. Stable ordering improves both user experience and the reliability of automated checks.

What good pagination looks like

Good category pagination tells shoppers where they are, shows the correct items, and connects the pages with direct links. URLs are durable and distinct; an indexable page two has its own canonical; and the first-page format is consistent across the site. JavaScript can enhance the experience, but reaching the next section does not depend entirely on a click or a scroll event. Filter and sort combinations follow a separate URL policy.

This structure does not guarantee discovery or rankings. It gives people and crawlers a clear path to the rest of a product collection, with URL behavior the team can test. Monitor Search Console, server logs, field performance, and product conversion data. When a problem appears, inspect the template, link destination, canonical, and server response together rather than changing one signal in isolation.

Frequently asked questions

Should paginated category pages share one canonical URL?

Pages showing different product groups that you want considered for indexing should generally point to their own URLs. This is a preference, not an indexing guarantee; content and other signals also matter.

Does Google use rel=prev and rel=next?

Google says it no longer uses these tags to understand pagination. Connect pages with real, crawlable HTML links.

Is a load-more button enough for SEO?

If the button adds content only after a user click, also expose a durable URL and link to the next product group. Google crawlers generally do not click buttons.

Should every filter URL be indexed?

No. Select combinations with search demand, distinct value, and a reason to exist as durable landing pages. Define a consistent crawl and index policy for other parameters.

Can the second category page canonicalize to page one?

If page two contains different products, pointing it to page one may not represent its content. A unique URL and self-referencing canonical are generally more appropriate for distinct pages in a sequence.

Sources and further reading

0 Comments

No comments yet for this article.

Post a comment

Please log in to leave a comment. Login