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:
- Implement infinite scroll for users — smooth scrolling experience loading additional content
- Create traditional paginated URLs: /category/page/2/, /category/page/3/ (even if users never see these)
- Ensure each paginated URL returns the same content as the corresponding infinite scroll position
- Link to paginated URLs in your sitemap
- 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.
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