Pagination
How to handle pagination for SEO — self-canonicals, why noindex breaks the crawl chain, the rel=prev/next story (Google dropped it, Bing kept it), and infinite scroll.
Pagination splits big content sets — category pages, blog archives, search results — across numbered URLs. Treat each paginated page as a standalone, self-canonical, crawlable page: don't canonicalize them all to page 1, don't noindex page 2+, don't nofollow their links, don't block them in robots.txt. Google quietly stopped using rel=prev/next before announcing it in 2019; Bing still uses it, so leave the markup in place. Paginated pages drive almost no direct traffic — their value is as crawl paths to the content they link to.
Evidence for this claim Google treats paginated component pages as individual URLs and recommends crawlable links between them. Scope: Current official or standards documentation. Confidence: high · Verified: Google: Pagination Evidence for this claim Paginated pages should generally use their own canonical URLs rather than canonicalizing every page to page one. Scope: Current official or standards documentation. Confidence: high · Verified: Google: Pagination canonicalizationTL;DR — PaginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. is splitting a long list — products, blog posts, search results — across numbered pages like page 1, 2, 3. Each page needs its own URL, and you want search engines to be able to crawl all of them so they can find the content linked from the deeper pages. The big mistakes are telling Google those deeper pages don’t matter (by canonicalizing them all to page 1 or noindexing them).
What pagination is
When you have more items than fit on one page — say 500 products in a category, or
years of blog posts in an archive — you split them across a series of pages. Page 1
shows the first batch, page 2 the next, and so on. Each page lives at its own
address (a URL), usually something like ?page=2 or /page/2/.
That’s pagination. You’ve used it a thousand times without thinking about it.
Why it matters for SEO
The pages themselves almost never rank for anything or get direct traffic. Their real job is to be a path that search engines follow to reach the products or posts listed on them. If a botA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. can’t get to page 3, it can’t find the things that are only linked from page 3.
So the whole game is simple: let search engines crawl every page in the sequence. Most pagination problems come from accidentally blocking that path.
The three ways to show paginated content
- Numbered pages (traditional pagination). Page 1, 2, 3, each its own URL. This is the safe, SEO-friendly default.
- A “Load more” button. One page, and clicking the button loads the next batch. Fine if the button is built on real links — a problem if it’s a JavaScript-only button that bots can’t click.
- Infinite scrollInfinite scroll is a loading pattern where content appears automatically as a user scrolls, instead of via numbered pages. Because Googlebot doesn't scroll or click, indexable infinite scroll needs real per-chunk URLs (paginated loading) that update via the History API — otherwise deep content may never be crawled, or worse, get merged into the wrong page.. Content keeps loading as you scroll. Great for users, but bots don’t scroll, so without real numbered-page links somewhere, the content further down may never get foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore..
The mistakes to avoid
- Don’t point every page’s canonical tagA rel=\"canonical\" annotation — in the HTML <head> or an HTTP Link header — that tells search engines which URL is the preferred version of duplicate or near-duplicate content. at page 1. That tells Google pages 2, 3, 4 are just duplicates of page 1 and shouldn’t be indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. — which can hide the content on them.
- Don’t add
noindexto page 2 and beyond. It feels tidy, but it can cause Google to eventually stop crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. those pages, and then it loses the path to everything they link to. - Don’t block pagination in
robots.txtor addnofollowto the page links. Both cut off the crawl path.
The one piece of history worth knowing
There used to be a special bit of code — rel="prev" and rel="next" — that told
Google how paginated pages connected. Google stopped using it in 2019. Don’t
panic and rip it out, though: Bing still uses it and browsers use it to load the
next page faster, so it’s worth keeping.
Want the full version — self-canonicals, the crawl-chain problem with noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed., and the strange story of how Google’s deprecation got discovered — switch to the Advanced tab.
Evidence for this claim Google treats paginated component pages as individual URLs and recommends crawlable links between them. Scope: Current official or standards documentation. Confidence: high · Verified: Google: Pagination Evidence for this claim Paginated pages should generally use their own canonical URLs rather than canonicalizing every page to page one. Scope: Current official or standards documentation. Confidence: high · Verified: Google: Pagination canonicalizationTL;DR — Treat every paginated URL as a standalone page: self-referencing canonical, crawlable, indexable, real
<a href>links. The classic mistakes — canonicalizing pages 2+ to page 1, noindexing them, nofollowing their links, blocking them in robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere. — all break the crawl chain to the content those pages link to. Google silently stopped usingrel=prev/nextbefore announcing it in March 2019; Bing still uses it, so leave the markup in place. Crawl budgetThe number of URLs an engine will crawl in a timeframe. only matters at very large scale, and paginated pages drive almost no direct traffic (one case study: ~0.3% of organic clicks) — their value is as crawl paths.
Each paginated page stands on its own
Page one, page two, and page three each have a unique URL and self-referencing canonical. Real anchor links connect one page to the next, and deeper pages expose unique product links. Canonicalizing deeper pages to page one, adding noindex, blocking them in robots.txt, or relying on JavaScript-only controls breaks or weakens that crawl path.
© Patrick Stox LLC · CC BY 4.0 ·
This is the single mental shift that fixes most paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. problems. After Google
dropped rel=prev/next, John Mueller put the new reality plainly: “For the most
part, we just indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. the pages as we find them, so as we’ve recommended for a long
time, it’s good to make sure that all pages can stand on their own.”
“Stand on their own” means each page in the sequence is a normal, indexable page with a self-referencing canonical — page 2’s canonical points at page 2, page 3’s at page 3. Google’s own current guidance is explicit: give each page its own canonical URLHow search engines pick one canonical URL among duplicates and consolidate signals onto it.; do not use the first page as the canonical for the whole set.
One exception to normal best practice: Google says identical <title> tags across
a paginated sequence are fine. Pages in a paginated set “don’t need to follow”
the usual unique-title recommendation, so you don’t have to contrive “Page 2 of 9”
suffixes (though they don’t hurt).
The rel=prev/next story — and why it’s the interesting part
Back in 2011 Google introduced rel="prev" and rel="next" — <link> elements
in the <head> that told Google which URLs formed a paginated sequence so it could
consolidate signals across them. For most of the 2010s, adding them was standard
technical-SEO hygiene.
Then it quietly stopped mattering. The way the SEO world foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. out is the part most
write-ups skip: Gary Illyes discovered, during internal research, that Google had
already silently stopped using rel=prev/next — and had not been using it for
some time. He escalated it internally, and on March 21, 2019 the @googlewmc
account made it public:
“Spring cleaning! As we evaluated our indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. signals, we decided to retire rel=prev/next. Studies show that users love single-page content, aim for that when possible, but multi-part is also fine for Google Search.”
The rationale: Google’s indexing had become good enough at recognizing paginated sequences from headings, titles, and internal linkingAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. that the explicit hint was redundant. When I spoke about this at SMX West in early 2020, the thing I kept coming back to was how completely it caught the industry off guard — we’d all been doing work that, it turned out, Google hadn’t been reading for a while.
Should you remove rel=prev/next? No — and this is where a lot of people
overcorrect. I covered exactly this in my Ahrefs piece,
SEOs Are Breaking Pagination After Google Changed Rel=Prev/Next.
Keep it, because:
- Bing still supports and recommends it. Bing’s guidance is unchanged — one
rel="next"and/or onerel="prev"per page, in the<head>. Stripping it to “clean up after Google” can only hurt your Bing performance. - Browsers prefetch with it — they can preloadResource hints are <link> elements (or equivalent HTTP Link headers) that tell the browser to do network work — DNS lookups, connection setup, or fetching a resource — earlier than it would discover the need on its own. The main ones are dns-prefetch, preconnect, preload, modulepreload, and prefetch. the next page for a faster experience.
- It’s a W3C standard and helps with accessibilityWeb accessibility means designing sites so people with disabilities can use them, per the W3C's WCAG guidelines. It overlaps with SEO in specific, checkable ways — alt text, heading structure, descriptive link text, captions, and page speed all serve both audiences — but Google has said accessibility itself is not a ranking factor, and most WCAG success criteria (keyboard focus order, ARIA live regions, form labels) have no SEO effect at all..
So: Google ignores it, everyone else still benefits. Leaving it in place is the correct call.
Canonicals: self-reference, not page 1
The old, now-harmful pattern was canonicalizing pages 2, 3, 4… back to page 1. The intent was to “avoid duplicate contentThe same or very similar primary content reachable at more than one URL. There's no general duplicate content penalty — the real costs are possible signal dilution, the wrong URL getting chosen, and less-efficient crawling.,” but the effect is the opposite of what you want: you’re telling Google those deeper pages are duplicates that shouldn’t be indexed, which orphans the content linked only from them and breaks the crawl path through the sequence.
Correct: each page is self-canonical. The one legitimate alternative is a view-all page — a single URL showing the whole set — with the paginated pages canonicalizing to that. Google’s older guidance leaned on view-all heavily; the current guidance softens it to “an option if the page loads fast enough.” For most large catalogs, self-referencing canonicals on each paginated page is the simpler, safer default.
Should you noindex page 2+? Almost never — and here’s the trap
The tidy-looking move is to noindex everything past page 1 so only page 1 shows
in search. The problem is what noindex does to crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. over time: Google
eventually crawls noindexed pages less, and can effectively stop following the
links on them. If page 3 is noindexed and Google stops crawling it, Google loses
its path to everything that’s only linked from page 3. That’s the crawl-chain
problem, and it’s why noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed. on pagination tends to quietly bury content.
Mueller’s heuristic for whether a page can be safely noindexed is a useful gut check: “If someone only saw this page from my site, would that be OK?” For a genuinely thin, valueless page the answer might be yes — but for a paginated listing that’s the only route to dozens of products, the answer is almost always no.
Where noindex is often appropriate: filter and sort variants, which people
confuse with pagination. A true paginated sequence (?page=2) should stay
indexable. A filtered or sorted variant (/shoes/?color=red&sort=price) is usually
a near-duplicate spider-trap candidate that you may legitimately want to noindex or
block. Knowing which is which is the whole skill — this overlaps heavily with how
you handle faceted navigationFaceted navigation (faceted search, product filtering) lets visitors refine a list of products or content by attribute — price, color, size, brand, rating. The SEO problem: each filter combination can spawn a distinct crawlable URL, turning a small catalog into millions of near-duplicate pages that waste crawl budget and dilute ranking signals., which is its own topic.
The other crawl-path killers
The same “don’t break the path” rule rules out a few more patterns:
- Don’t
nofollowpagination links. Each paginated page is part of your internal linkAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. graph; nofollowing the nav links blocks PageRankPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems. flow and crawl signal to the deeper pages. - Don’t block pagination in
robots.txt. That stops Google reaching the pages at all — and therefore everything linked from them. - Use real
<a href>links for pagination controls. Google crawls URLs found inhrefattributes; a JavaScript-only “Load more” button that fires anonclickwithout a real link is invisible to GooglebotGooglebot is Google's web crawler — the software that fetches pages so Google can index and rank them. It comes in two variants, Googlebot Smartphone (primary, under mobile-first indexing) and Googlebot Desktop, and runs an evergreen Chromium renderer.. Google is explicit that its crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. “don’t ‘click’ buttons and generally don’t trigger JavaScript functions that require user actions.”
Infinite scroll and “Load more” — make them crawlable
Infinite scrollInfinite scroll is a loading pattern where content appears automatically as a user scrolls, instead of via numbered pages. Because Googlebot doesn't scroll or click, indexable infinite scroll needs real per-chunk URLs (paginated loading) that update via the History API — otherwise deep content may never be crawled, or worse, get merged into the wrong page. is fine for users and hostile to crawlers unless you give bots a
fallback. The fix is a paginated, crawlable counterpart: real ?page=n URLs
with <a href> links (often surfaced in a footer or a <noscript> fallback) that
expose the same content the scroll loads dynamically. Same advice for “Load more” —
the button can drive the UX, but there should be a real anchor-link path to every
page of results behind it. For very large catalogs, lean on XML sitemapsAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. (or a
Merchant Center feed) to supplement discovery, since you can’t count on link
discovery alone reaching everything.
Structured data on paginated content
There’s no special schema type for “a paginated series.” Mark up what’s actually on
each page: Product markup belongs on individual product pages (not the pagination
container), and Article markup on each page of a multi-part article series. Don’t
try to express the prev/next relationship through structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. — that’s not what
it’s for.
Crawl budget and the reality check
Pagination creates a lot of URLs, which is why it gets blamed for crawl-budget problems. The honest answer: for most sites it doesn’t matter. Crawl budgetThe number of URLs an engine will crawl in a timeframe. is a real constraint only at large scale — think 1M+ pages, or very large rapidly changing catalogs. Google has, in Mueller’s framing, “a lot of experience dealing with pagination” and learns your URL patterns over time, so it generally handles paginated sequences well without special configuration.
And worth keeping in perspective: paginated pages drive almost no direct organic traffic. One well-known case study found pagination URLs accounted for only ~0.3% of total organic clicks, with no negative SEO impact from having lots of them indexed. That reinforces the framing throughout this page — paginated pages earn their keep as crawl paths to the content they expose, not as ranking pages in their own right. So the practical advice I keep giving: don’t over-engineer it. Make the pages crawlable and self-canonical, then leave them alone and let Google figure it out.
One honest caveat: getting the technical setup right — crawlable links, self-canonicals, no accidental noindex — only keeps the door open. It doesn’t guarantee Google crawls, indexes, or ranks any given paginated page, and it doesn’t guarantee traffic or an AI citation either. What it removes is the architectural reasons content on deeper pages gets missed in the first place.
This topic sits alongside the rest of the website structureWebsite structure (site architecture) is a site's visible hierarchy, navigation, breadcrumbs, and URL organization — how pages relate and how people and search engines move between them. Internal linking is the primary signal Google reads to understand that structure, not URL folders. cluster — internal linking, faceted navigation, URL structureURL structure is how the parts of a web address — scheme, domain, path, query string, and fragment — are organized and formatted. It mostly affects crawling, usability, and how engines understand a page, not rankings directly., and breadcrumbsBreadcrumbs are a secondary navigation trail (Home > Category > Page) that shows where a page sits in a site's hierarchy. They create internal links that pass PageRank, and when marked up with BreadcrumbList structured data they can drive the path Google shows in desktop search results. all shape the same crawl-path question from different angles.
AI summary
A condensed take on the Advanced version:
- PaginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. splits large content sets (category pages, archives, search results, article series) across sequentially numbered URLs. Each page’s SEO value is as a crawl path to the content it links to — not as a ranking page.
- Each paginated page should stand on its own: indexable, crawlable, with a self-referencing canonical. Google: give each page its own canonical URLHow search engines pick one canonical URL among duplicates and consolidate signals onto it. — don’t canonicalize pages 2+ to page 1.
rel=prev/next: Google silently stopped using it before announcing the retirement on March 21, 2019 (Gary Illyes foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. it internally). Bing still uses it, browsers prefetch with it, it’s a W3C standard — so don’t remove it.- Don’t
noindexpage 2+ in normal cases: noindexed pages get crawled less and Google can stop following their links, breaking the crawl chain to content linked only from those pages. Mueller’s test: “If someone only saw this page… would that be OK?” - Filter/sort variants ≠ pagination. True
?page=nstays indexable; filtered (?color=red&sort=price) variants are often legitimately noindexed/blocked. - Also avoid: nofollowing pagination links, blocking them in robots.txtA plain-text file at the root of a host that tells crawlers which URLs they may and may not request. It controls crawling, not indexing — a blocked URL can still be indexed if it's linked from elsewhere., and
JavaScript-only “Load more” buttons. Use real
<a href>links; give infinite scroll a crawlable paginated fallback. - Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding.: mark up what’s on each page (
Product,Article); no schema type expresses a paginated series. - Crawl budgetThe number of URLs an engine will crawl in a timeframe. matters only at large scale (~1M+ pages). Paginated pages drive ~0.3% of organic clicks in one case study. Don’t over-engineer it.
- No guarantees: correct setup removes the architectural reasons deeper pages get missed — it doesn’t guarantee crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor., indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed., rankings, traffic, or AI citations.
Official documentation
Primary-source guidance from the search engines.
- Pagination best practices for Google — current canonical guidance: give each page its own canonical URLHow search engines pick one canonical URL among duplicates and consolidate signals onto it., the three UX patterns (paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does., load more, infinite scrollInfinite scroll is a loading pattern where content appears automatically as a user scrolls, instead of via numbered pages. Because Googlebot doesn't scroll or click, indexable infinite scroll needs real per-chunk URLs (paginated loading) that update via the History API — otherwise deep content may never be crawled, or worse, get merged into the wrong page.), and crawlable-link requirements.
- Pagination with rel=“next” and rel=“prev” (2011) — the original (now-deprecated) guidance, kept for historical context.
- Video about pagination with rel=“next” and rel=“prev” (2012) — the 2012 follow-up.
- Consolidate duplicate URLs — canonicalizationHow search engines pick one canonical URL among duplicates and consolidate signals onto it. methods (the adjacent topic that pagination handling depends on).
Bing / Microsoft
- Implementing markup for paginated and sequenced content — Bing’s still-current
rel=prev/nextguidance: onerel="next"/rel="prev"per page, in the<head>, pairable with canonical. - Bing Webmaster Guidelines.
Quotes from the source
On-the-record statements from Google. Each link is a deep link that jumps to the quoted passage on the source page.
Google — the rel=prev/next retirement (March 21, 2019)
- “Spring cleaning! As we evaluated our indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. signals, we decided to retire rel=prev/next. Studies show that users love single-page content, aim for that when possible, but multi-part is also fine for Google Search.” — @googlewmc, March 21, 2019. See the tweet
- “Google no longer uses these tags, although these links may still be used by other search engines.” — Google Search Central, paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. docs. Jump to quote
Google — give each page its own canonical
- “Give each page its own canonical URLHow search engines pick one canonical URL among duplicates and consolidate signals onto it.” — and don’t use the first page as the canonical for all paginated pages. Jump to quote
- On crawlingCrawling is how search engines use automated bots (like Googlebot and Bingbot) to discover URLs and download pages. A page has to be crawlable to be indexed, but crawling on its own isn't a ranking factor. JavaScript pagination: Google’s crawlersA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. “don’t ‘click’ buttons and generally don’t trigger JavaScript functions that require user actions to update the current page contents.” Jump to quote
John Mueller, Google — pages must stand on their own
- “For the most part, we just index the pages as we find them, so as we’ve recommended for a long time, it’s good to make sure that all pages can stand on their own.” Coverage
- On the heuristic for noindexing a paginated page: “If someone only saw this page from my site, would that be OK?” If yes, you can noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed. it — but that’s a high bar for most paginated content. Coverage
#:~:text= deep links rely on the browser’s text-fragment feature and may need the exact passage confirmed against the live page. Pagination SEO checklist
A pass to confirm search engines can crawl your paginated sequences and the content behind them:
- Each paginated page has its own unique URL (e.g.
?page=2) — no fragment identifiers (#) marking page numbers (Google ignores fragments). - Each page carries a self-referencing canonical — not a canonical pointing back to page 1 (unless you’re deliberately using a view-all page).
- Pages 2+ are indexable (no blanket
noindex). - PaginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. controls are real
<a href>links, not JavaScript-only buttons. - Pagination links are not nofollowed.
- Pagination URLs are not blocked in
robots.txt. -
rel="prev"/rel="next"left in place (for Bing, browser prefetch, accessibilityWeb accessibility means designing sites so people with disabilities can use them, per the W3C's WCAG guidelines. It overlaps with SEO in specific, checkable ways — alt text, heading structure, descriptive link text, captions, and page speed all serve both audiences — but Google has said accessibility itself is not a ranking factor, and most WCAG success criteria (keyboard focus order, ARIA live regions, form labels) have no SEO effect at all.) — even though Google ignores them. - Infinite scrollInfinite scroll is a loading pattern where content appears automatically as a user scrolls, instead of via numbered pages. Because Googlebot doesn't scroll or click, indexable infinite scroll needs real per-chunk URLs (paginated loading) that update via the History API — otherwise deep content may never be crawled, or worse, get merged into the wrong page. / “Load more” has a crawlable paginated fallback with real anchor links.
- XML sitemapsAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. supplement discovery for large catalogs (especially JS-rendered listings).
- Filter/sort variants (e.g.
?color=red&sort=price) handled separately from true pagination — noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed./block these if they add no unique value. - Structured dataStructured data is a standardized way of labeling page content (using the schema.org vocabulary in JSON-LD, Microdata, or RDFa) so search engines can understand its meaning. It's not a direct ranking factor — its value is rich results and entity understanding. marks up what’s on each page (
Product,Article), not the pagination container.
The mental models
1. Paginated pages are crawl paths, not destinations. Their job is to expose the products/posts linked from them so botsA crawler — also called a spider or bot — is an automated program that fetches web pages, extracts their links, and queues new URLs to visit. Search engines use crawlers to discover and download content for their index. (and PageRankPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems.) can reach those. Once you internalize that, almost every rule follows: don’t do anything that breaks the path. One case study clocked paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. at ~0.3% of organic clicks — they don’t rank, they route.
2. “Can this page stand on its own?” Mueller’s reframing after the rel=prev/next retirement. Treat each paginated URL as a normal, self-canonical, indexable page rather than a dependent fragment of a set.
3. The four crawl-chain breakers. Keep these straight and most pagination mistakes disappear:
- Canonicalizing pages 2+ → page 1 (says “duplicate, don’t indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed.”)
noindexon pages 2+ (gets crawled less → links stop being followed)nofollowon pagination links (blocks PageRankPageRank is Google's original recursive link-graph algorithm: a page's score depends on the scores of the pages linking to it, and in the published model each page's score is split across its outbound links (the simplified version: links are weighted votes). Google says it's evolved since launch but still part of its core ranking systems. + crawl signal)robots.txtdisallow (blocks access entirely)
4. “Google uses it” ≠ “it’s still useful.”
rel=prev/next is the canonical example: Google dropped it, but Bing uses it,
browsers prefetch with it, and it’s valid HTML. Decide what to keep on all
consumers, not just Google.
5. Pagination vs. faceted variants.
A true sequence (?page=2) stays indexable. Filter/sort variants
(?color=red&sort=price) are usually near-duplicateThe same or very similar primary content reachable at more than one URL. There's no general duplicate content penalty — the real costs are possible signal dilution, the wrong URL getting chosen, and less-efficient crawling. clutter you can noindexNoindex is a directive that tells search engines to keep a page out of their index, so it won't appear in search results. It works only on pages a crawler can actually fetch — a page blocked in robots.txt can never be noindexed. or
block. Same-looking URLs, opposite handling — classify before you configure.
How should a long listing expose more items?
Choose a crawlable listing pattern
Pagination mistakes that cut the crawl path
Canonicalizing every page to page one
Page two and later contain different items, so page one is not their equivalent. Let component pages self-canonicalize; use redirectsA redirect sends browsers and crawlers from a requested URL to a different one. An HTTP redirect specifically is a 3xx status code paired with a Location header; meta refresh and JavaScript redirects achieve a similar navigation without being a 3xx response themselves. Permanent redirects (301/308) are Google's signal the target should be canonical; temporary ones (302/303/307) aren't. or canonical consolidation only when URLs are genuinely duplicates.
Adding noindex to page two and beyond
The directive removes those URLs from the indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. and can weaken the path to items linked only from deeper pages. Keep the sequence crawlable and improve the listing instead of hiding its continuation.
Building infinite scroll without persistent URLs
A scroll event or button is not a crawl path. Pair the experience with unique, loadable page URLs and real anchors so every item remains reachable without user interaction.
Common pagination failures
Products on later pages are not discovered
Symptom: Items visible after clicking or scrolling never appear in a crawl. Likely cause: The next batch loads only through JavaScript and has no anchor URL. Fix: Expose persistent paginated URLs, link them with normal anchors, and verify a crawl beginning at page one reaches the item URLs.
Google selects page one as canonical for the whole series
Symptom: URL InspectionA Google Search Console feature that reports how Google sees one specific URL on a property you own. By default it shows the last-indexed snapshot; a separate \"Test live URL\" mode fetches the current version. reports page one as Google’s canonical for deeper pages. Likely cause: All pages declare page one as canonical or render nearly identical content. Fix: Use self-canonicals, distinct item sets, stable titles where useful, and consistent internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. to each component page.
Crawlers loop through endless page numbers
Symptom: A crawl discovers empty or repeated URLs far beyond the last real page. Likely cause: The next link is generated without checking whether another batch exists. Fix: Stop emitting the next anchor on the final page and return a proper not-foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. response for impossible page numbers.
Pagination signal reference
| Signal | Recommended handling | Why |
|---|---|---|
| Canonical | Self-reference each component page | Each page exposes a different item set |
| Robots meta | Keep crawlable component pages indexable | noindex is not a substitute for architecture |
| Internal linksAn internal link is a hyperlink from one page on a website to another page on the same website. Internal links help search engines discover your pages and pass ranking signals (PageRank and anchor-text context) between them. | Real anchors to next, previous, and useful numbered pages | Creates a crawl path without interaction |
rel="prev/next" | Safe to retain, but do not rely on it for Google | Google no longer uses it; other consumers may |
| Infinite scrollInfinite scroll is a loading pattern where content appears automatically as a user scrolls, instead of via numbered pages. Because Googlebot doesn't scroll or click, indexable infinite scroll needs real per-chunk URLs (paginated loading) that update via the History API — otherwise deep content may never be crawled, or worse, get merged into the wrong page. | Pair it with persistent paginated URLs | User interaction alone is not dependable discovery |
| Impossible page numbers | Return a real not-foundA 302 (\"Found\") is a temporary redirect: it forwards users to a new URL while telling search engines the original URL should stay in the index. It's a weak canonicalization signal, not the zero-equity dead end of SEO folklore. response | Prevents an unbounded duplicate crawl space |
Test yourself: Pagination
Five quick questions on handling paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. for SEO. Pick an answer for each, then check.
Resources worth your time
My paginationPagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does. writing
- SEOs Are Breaking Pagination After Google Changed Rel=Prev/Next: Here’s How to Get It Right — my primary piece on this topic: why to keep the markup, and the four mistakes that break pagination.
- Canonical Tags: A Simple Guide for Beginners — the canonical mechanics that pagination handling depends on.
- The Beginner’s Guide to Technical SEO — where pagination sits in the bigger crawl/indexStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. picture.
My speaking
- Video: Patrick Stox on pagination, technical SEO & community (Search Engine Land, SMX West 2020) — my take on how Google’s quiet rel=prev/next deprecation caught the industry off guard, and why SEOs over-engineer pagination.
From around the industry
- Pagination best practices for Google (Google Search Central) — the current official guidance.
- Implementing markup for paginated and sequenced content (Bing WebmasterMicrosoft's free portal for monitoring and improving how a site appears in Bing search — the peer to Google Search Console, plus IndexNow instant indexing, richer backlink data, and keyword volumes. Because Bing's index also feeds Microsoft Copilot, it doubles as a window into AI-search visibility. Blog) — Bing’s still-current rel=prev/next requirements.
- Gary Illyes — The Googler Who Discovered rel=prev/next No Longer Supported (Search Engine Roundtable) — the story of how the deprecation surfaced.
- Google’s Advice On Pagination & Page Series Post rel=next and rel=prev (Search Engine Roundtable) — Mueller’s “stand on their own” guidance.
- What happens when 67% of a site’s indexed URLs are pagination? (GSQI / Glenn Gabe) — the case study where pagination drove only ~0.3% of organic clicks with no negative impact.
- Explaining the ‘rel=prev/next’ saga of 2019 (Embryo) — a clear walkthrough of the deprecation and its aftermath.
Pagination
Pagination splits a large set of content — product listings, blog archives, search results — across multiple sequentially numbered URLs. For SEO, each paginated page should be crawlable, indexable, and self-canonical; Google no longer uses rel=prev/next, but Bing still does.
Related: Canonical Tag, Crawl Budget
Pagination
Pagination is the practice of dividing a large set of content across multiple sequentially numbered pages, each accessible via its own unique URL (commonly ?page=2, /page/2/, and so on). You see it on ecommerce category pages, blog archives, search results, forum threads, and multi-part article series.
From an SEO perspective, paginated pages exist mainly as crawl paths to the content they link to. Each page in a sequence should be individually crawlable and indexable so search engines can discover everything on the deeper pages. The common mistakes all break that crawl path: canonicalizing every page back to page 1, adding noindex to pages 2+, nofollowing the pagination links, or blocking the pattern in robots.txt.
The headline nuance: Google stopped using rel="prev" / rel="next" in 2019 — it had silently dropped the signal before announcing it — and now treats each paginated URL as a standalone page. Bing still supports rel=prev/next, browsers use it for prefetching, and it’s valid HTML, so you leave the markup in place rather than removing it. Each paginated page should be self-canonical (point to itself), not canonicalized to page 1.
Related: Canonical Tag, Crawl Budget
Build-time retrieval analysis plus live signals for this exact article. The automatic chunk report includes a deterministic readiness score and is ready without a model download.
Search Console
sampleGA4 traffic (28d)
sampleCloudflare traffic (7d)
sampledCrUX field data (28d, phone)
sampleGoogle NLP entities
localChangelog
Updated Jul 18, 2026.
Editorial summary and recorded change details.Summary
Reviewed against fresh research evidence (canonical/self-reference, rel=prev/next, noindex, infinite scroll, and structured-data claims) and confirmed the article's existing guidance already holds up against Google's live pagination documentation — no facts changed. Added one honest-caveat note that correct pagination setup doesn't guarantee crawling, indexing, rankings, traffic, or AI citations, only that it removes the architectural reasons deeper pages get missed.
Change details
-
Added a closing caveat in the Advanced lens (and a matching bullet in AI Summary) clarifying that crawlable, self-canonical pagination is necessary but not sufficient — it doesn't guarantee crawling, indexing, ranking, traffic, or AI citation outcomes.
Full comparison unavailable — no prior snapshot was archived for this revision.