Pagination SEO: Best Practices for Numbered Pages and Infinite Scroll

Pagination SEO: Best Practices for Numbered Pages and Infinite Scroll

Pagination SEO is one of those technical areas where outdated advice persists long after the underlying reality has changed. Teams are still managing rel=prev/next (retired by Google in 2019), debating infinite scroll decisions without understanding how Googlebot actually handles JavaScript, and implementing noindex on paginated pages without considering the crawling implications for the content they contain. This guide covers what actually works in 2026.

Understanding How Google Crawls Paginated Content

Googlebot’s Pagination Discovery Model

Googlebot discovers paginated content through links. When it crawls a category page (/shoes/) and finds a link to /shoes/page/2/, it follows that link and crawls the second page. From page 2, it finds a link to page 3, and so on. This means:

  • Pagination must use HTML links with crawlable URLs — JavaScript-only navigation is invisible to Googlebot unless rendered
  • Deep pages are discovered via crawl paths from earlier pages — if page 1 doesn’t link to page 2, page 2 may never be discovered
  • Crawl frequency decreases with depth — page 10 is crawled less often than page 2, which is crawled less often than page 1
  • Google renders JavaScript but on a delay — JS-rendered pagination may be indexed days to weeks behind HTML-linked content

The rel=prev/next Retirement

Google retired rel=prev/next in March 2019 — they had been ignoring it for years before the official announcement. Bing followed. If your site still has rel=prev/next in templates, it doesn’t cause harm, but it provides zero benefit and is wasted effort to maintain. Remove it from your to-do list and focus on the signals that actually matter.

Numbered Pagination: Technical Implementation

URL Structure for Paginated Series

Clean, consistent paginated URL structures make crawling and indexing predictable:

Approach URL Pattern SEO Friendliness Notes
Path-based pagination /category/page/2/ Excellent Best practice; clean and crawlable
Query parameter pagination /category/?page=2 Good Works well; Google handles parameters
Fragment pagination /category/#page-2 Poor Fragments not crawled; invisible to Googlebot
JavaScript state pagination URL doesn’t change Very Poor No unique URLs = no indexable pages

Canonical Tags on Paginated Pages

Each paginated URL should have a self-referencing canonical — a canonical pointing to itself. This is the correct approach for paginated series:

  • Page 1: canonical = /category/
  • Page 2: canonical = /category/page/2/
  • Page 3: canonical = /category/page/3/

Do NOT canonicalize all pages back to page 1. This was historically recommended but signals to Google that pages 2+ are duplicate content of page 1, which prevents their content from being indexed. Products appearing only on page 3 will not be indexed if page 3 canonicals to page 1.

To Index or Noindex Paginated Pages?

The noindex decision for paginated pages depends on your specific situation:

Arguments for indexing paginated pages:

  • Products/articles on pages 2+ can rank for their own queries if indexed
  • Internal links from paginated pages pass PageRank to deeper content
  • Noindexing prevents Googlebot from discovering content only linked from those pages

Arguments for noindexing paginated pages:

  • Paginated category pages rarely rank on their own — they contain the same products/posts as page 1 with different ordering
  • Noindex + follow preserves crawl of linked products while preventing thin pagination pages from consuming index space
  • For large sites with millions of paginated URLs, selective noindex helps focus crawl budget

The pragmatic recommendation: index pages 2-10, noindex pages beyond page 10. Very deep pagination rarely earns rankings and wastes crawl budget.

Infinite Scroll: The SEO-Safe Implementation

Why Naive Infinite Scroll Fails for SEO

Infinite scroll loads new content as a user scrolls down — but Googlebot cannot scroll. Unless content is rendered in the initial page load, Googlebot only sees what’s visible on the first screen. This means 90%+ of an infinite scroll page’s content may never be indexed.

The Parallel URL Pattern Solution

The only SEO-safe infinite scroll implementation requires a parallel paginated URL structure that Googlebot can crawl independently:

  1. Implement infinite scroll for users — smooth scrolling experience loading additional content
  2. Create traditional paginated URLs: /category/page/2/, /category/page/3/ (even if users never see these)
  3. Ensure each paginated URL returns the same content as the corresponding infinite scroll position
  4. Link to paginated URLs in your sitemap
  5. For very important content, add HTML-accessible links somewhere on page 1 that lead to page 2 URL

This approach is used by major e-commerce sites: the user sees infinite scroll, Googlebot indexes the traditional pages. Both experiences are satisfied simultaneously.

Load More Button: The Middle Ground

“Load More” buttons that append content via JavaScript have the same crawlability issue as infinite scroll — Googlebot won’t click a button. The same parallel URL pattern solution applies. However, “Load More” implementations are easier to retrofit with SEO-safe parallel URLs because the load trigger is explicit and can be tied to URL state changes.

Crawl Budget Management for Large Paginated Sites

How Pagination Wastes Crawl Budget

For large e-commerce sites, pagination can consume a disproportionate share of crawl budget on low-value pages while leaving high-value product detail pages under-crawled. Common culprits:

  • Category pages with 200+ pages of pagination when sort and filter create duplicate content at each pagination level
  • Faceted navigation combined with pagination creating thousands of parameterized paginated URLs
  • Deep archive pages (blog post archives going back 10 years) with hundreds of paginated pages
  • Search result pages with pagination (these should be noindexed + parameter excluded from crawling)

Crawl Budget Optimization for Pagination

  • Google Search Console URL Parameters tool: Mark pagination parameters to control how Googlebot handles them
  • Robots.txt disallow for deep pages: Consider Disallow: /category/page/ patterns beyond a certain depth to prevent crawling of very deep, low-value pagination
  • XML sitemap exclusion: Don’t include paginated URLs in your XML sitemap — sitemaps should contain canonical, indexable pages only
  • Internal linking to important deep content: If critical products appear only on page 15, add internal links to them from high-authority pages so they’re discovered without relying on sequential pagination crawl

View All Pages: When They Work

View All Pros and Cons

A “View All” page loads all paginated content on a single URL. From an SEO perspective:

Benefits: Consolidated internal link equity, single indexable URL for all content, simplified canonicalization, better user experience for small product counts

Drawbacks: Page size and load time issues for large catalogs, Googlebot may not crawl to end of very long pages, may overwhelm crawl budget with a single large document

View All works well for categories with under 200 items. For larger catalogs, the page weight and load time costs outweigh the link consolidation benefits.

E-commerce Pagination: Category Page Best Practices

Category Page Pagination Checklist

  • Clean URL structure with consistent pagination path: /category/page/N/
  • Self-referencing canonical on each paginated page
  • HTML links in pagination controls (not JavaScript-only)
  • XML sitemap includes page 1 only (not all paginated variants)
  • Product sitemaps include individual product URLs (not pagination as discovery mechanism)
  • Noindex on search result pages, parameter-generated pages that duplicate category pages
  • Faceted navigation parameter handling configured in GSC
  • Pagination links crawlable by Googlebot (no auth walls, no JavaScript-only controls)

Testing Your Pagination Implementation

Before finalizing your pagination approach, test with these tools:

  • Google Search Console URL Inspection: Test individual paginated URLs to verify Googlebot sees them as expected
  • Screaming Frog: Crawl your site with JS rendering enabled vs. disabled to identify content visible only via JavaScript
  • Google’s Rich Results Test: Validate any schema on paginated pages
  • Log file analysis: Review Googlebot logs to see how frequently it crawls your paginated URLs and where it stops in deep pagination

Technical SEO is often about removing friction, not adding signals. Clean pagination that’s consistently structured, properly canonicalized, and accessible to Googlebot will outperform complex pagination schemes every time. Keep it simple, keep it crawlable, and monitor in your SEO audits regularly. For a comprehensive review, see our qualification form.

Pagination causing crawl budget or indexing issues?
Our technical SEO team diagnoses and fixes complex pagination, faceted navigation, and crawl budget problems for e-commerce and content sites. Get your technical SEO audit