Infinite scroll search-friendly recommendations

Thursday, February 13, 2014

Your site's news feed or pinboard might use infinite scroll—much to your users' delight! When it comes to delighting Googlebot, however, that can be another story. With infinite scroll, crawlers cannot always emulate manual user behavior—like scrolling or clicking a button to load more items—so they don't always access all individual items in the feed or gallery. If crawlers can't access your content, it's unlikely to surface in search results.

To make sure that search engines can crawl individual items linked from an infinite scroll page, make sure that you or your content management system produces a paginated series (component pages) to go along with your infinite scroll.

Infinite scroll page is made search-friendly when converted to a paginated series
Infinite scroll page is made "search-friendly" when converted to a paginated series—each component page has a similar <title> tag declared in the <head> tag on the page.

You can see this type of behavior in action in the infinite scroll with pagination demo created by Webmaster Trends Analyst, John Mueller. The demo illustrates some key search-engine friendly points:

  • Coverage: All individual items are accessible. With traditional infinite scroll, individual items displayed after the initial page load aren't discoverable to crawlers.
  • No overlap: Each item is listed only once in the paginated series (for example, no duplication of items).

Search-friendly recommendations for infinite scroll

1. Before you start

  1. Chunk your infinite-scroll page content into component pages that can be accessed when JavaScript is disabled.
  2. Determine how much content to include on each page.
    1. Be sure that if a searcher came directly to this page, they could easily find the exact item they wanted (for example, without lots of scrolling before locating the desired content).
    2. Maintain reasonable page load time.
  3. Divide content so that there's no overlap between component pages in the series (with the exception of buffering).