210

As a designer I believe "Page system" is less efficient than progressive loading inside a single page. However it is still widely used on many websites including Google’s search results.

Google Search pagination, offering links from "1" to "10"

Maybe there is an important advantage of the pagination system that I am missing.

Can you help me to figure out why it is still commonly used?

40
  • 356
    In what way do you believe progressive load is more efficient? Are we talking about 'user finding what they want' efficient, or computational efficiency? In my (anecdotal) experience, I find infinite scrolling pages to be worse on both counts. Commented Oct 24, 2017 at 11:39
  • 87
    Google does use infinite scroll when searching for images, though.
    – user51343
    Commented Oct 24, 2017 at 13:21
  • 225
    I personally find progressive loading, for anything other than social media, extremely annoying and "un-user friendly". If you are searching for something specific and find it on a page, then you know where it is and can deep link to it. If you leave the results and go back, you know where to go to quickly get to where you left off. Not to mention there is less memory required to render the redundant results in progressive loading. Commented Oct 24, 2017 at 14:57
  • 263
    Because everybody except web designers caught up in latest trends (i.e. especially users) knows that progressive loading is utterly awful ux. Browser eventually slows down to a crawl, and it's usually impossible to find the same thing more than once; even if you can, it can take hours, and "search in page" doesn't work until you manually scroll far enough to reach the desired content. Commented Oct 24, 2017 at 15:44
  • 114
    Because infinite scrolling is annoying and bad, especially on phones, I'd be scrolling through some stuff and then I accept a phone call or check the map or something and when I come back the page has reset itself and I have scroll through ALLL items again for ten minutes just to get to where I was, so annoying. It's not a problem with pages though.
    – Maxim
    Commented Oct 24, 2017 at 20:05

17 Answers 17

339

Infinite scroll has its uses, but a search result page is not one of them. Infinite scroll relies on discovery and exploration. This works well for when you're not looking for anything in particular; when you're sifting through a massive amount of data until you find something that hooks your interest. This format lends itself extremely well for social media with newsfeeds, or inspiration platforms like Pinterest.

You may measure the benefits of infinite scrolling with the example of a Facebook news feed. By unspoken agreement, users are aware that they won’t get to see everything on the feed, because the content is updated too frequently. With infinite scrolling, Facebook is doing it’s best to expose as much information as possible to the users and they are scanning and consuming this flow of information.

Search results are all about finding what you need.

Pagination is good when the user is searching for something in particular within the list of results, not just scanning and consuming the flow of information.

Google wants to show you relevant data. Pagination tells you where the search results are located (page) and in which order they match your criteria. This helps to estimate how much time it’ll take to find what you're actually looking for and helps you find results back.

Google has experimented in the past with loading times. Turns out, even with a slightly longer delay in loading, people are more likely to abandon the search. Infinite scroll is rather heavy on performance, so this would multiply this abandoning rate.

More here: https://uxplanet.org/ux-infinite-scrolling-vs-pagination-1030d29376f1

22
  • 14
    @Darkwing Unless you're using the same Google localization, the results will wildly vary. Commented Oct 24, 2017 at 13:30
  • 4
    @JohnHamilton Are you using touch devices or desktops/mouse driven devices? I would argue that it's partially a device issue, with mobile pagination is far more cumbersome to control. I do hate progressive tough - even on mobile - for it usually is so power-hungry at some point it crashes the browser and it's hard to re-engage then (on the other hand, good time to stop slacking off). Commented Oct 24, 2017 at 13:41
  • 53
    @JohnHamilton Google search result is personalized. If we both search for the word X then we may well get completely different results, regardless our geographic area (assuming we both have a Google account...) Commented Oct 24, 2017 at 15:00
  • 10
    "[infinite scrolling] works well [...] when you're sifting through a massive amount of data until you find something that hooks your interest." I dispute that, since it breaks search within page. Commented Oct 24, 2017 at 16:46
  • 8
    @DavidRicherby The use-case made for infinite scrolling is when you don't know yet what you are looking for, so you couldn't type a search anyway. That's why it fits news feeds and the like, where information is offered and you just browse through it without a clear cut goal. (I'm still disliking performance issues and site size changes etc, but I see the benefit). Commented Oct 25, 2017 at 9:32
143

There is no official statement regarding this, so no one can give you a 100% accurate answer.

One of the biggest reasons might be the ad placement of Google. They earn money with every search, and since they use pagination they can even earn money multiple times with only one search, try it yourself.

For example if you search for "toaster" (in Germany), these are the 1st and 2nd page ads:

First Page top-ad Search results, with ads to the right

So in short, I think pagination fits Google's business goals.

9
  • 32
    +1, good point! Pagination is user friendly for search, but it definitely also serves their business goals. Commented Oct 24, 2017 at 11:45
  • 3
    There are ways to change ads while user scrolls, though it may be not as efficient.
    – Runnick
    Commented Oct 24, 2017 at 17:47
  • 3
    duckduckgo for example uses infinite scrolling, so it seems even arbitrary, some do, others don't. Commented Oct 25, 2017 at 14:38
  • 7
    "They earn money with every search" - do they? It says here that they only charge per each click on the add: adwords.google.com/home Commented Oct 26, 2017 at 11:30
  • 4
    @RasmusLarsen They charge per click, but impressions (showing up in search results regardless of whether clicked) factor into the bidding process on keyword ads, so every related search increases the final charge once someone clicks.
    – Beofett
    Commented Oct 27, 2017 at 18:31
107

Since no one posted it yet, to me the main reason against infinite scrolling is shown in this XKCD comic:

Maybe we should give up on the whole idea of a 'back' button. 'Show me that thing I was looking at a moment ago' might just be too complicated an idea for the modern web.

The tool tip reads:

Maybe we should give up on the whole idea of a 'back' button. 'Show me that thing I was looking at a moment ago' might just be too complicated an idea for the modern web.

Here is the Explain XKCD page for the comic strip.

Update 1:

I just found the hidden comment above that already mentioned this XKCD comic strip.

Update 2:

To clarify, why I do think my answer is valid here is: To me, the equivalent of the above

"If I touch the wrong thing, I'll lose my place and have to start over"

is when clicking a SERP entry, going to the destination URL and then clicking the Back button.

This would usually return me to some other location than the previous SERP infinite scroll position where I left.

24
  • 16
    Whoa. XKCD has tooltips! That will help make sense of some of the comics I didn't get...
    – Andrew
    Commented Oct 25, 2017 at 13:39
  • 22
    New idea: infinite scrolling tooltips...
    – Andrew
    Commented Oct 25, 2017 at 13:40
  • 17
    @Andrew the tooltips are part of the comic, and the mystery. They won't provide you new clues, but a second joke. For help in "getting them", the explainxkcd.com community website is a great resource (especially for people from different cultural and education backgrounds)
    – Zefiro
    Commented Oct 27, 2017 at 12:06
  • 6
    @JonW Actually it's quite explanatory, particularly what the scrolling person says. For more explanation, see the comments on the question.
    – Andrew
    Commented Oct 27, 2017 at 18:16
  • 4
    @Ben Keeping track of where the user was might be easy, but actually getting them back to there might not be. The user may have scrolled down through 20 requests worth of data - meaning if they leave the page and try to hit back, all 20 of those requests either need to be compressed into one massive payload, or they are going to have to sit there while 20 requests load in sequence, or some other not-so-great approach to get them back to where they were - It's not uncommon for developers to just avoid the issue and leave the users to fend for themselves.
    – Blake Mann
    Commented Oct 30, 2017 at 16:00
95

Noscript Support

In addition to the other answers above, infinite scroll is only possible with javascript enabled. If Google wants to appeal to the widest possible userbase for their main page, then it is beneficial for them to display search results to people who do not have javascript enabled.

Infinite scroll has the added downside of hiding the footer of the page unless its position is fixed to the screen.

10
  • 28
    @FedericoPoloni If someone disables javascript knowingly, they wouldn't enable it even if google required it, and instead would go to some other service providing search. Then, being Google, you'd be losing potential users for your search engine as well as other products, just because you want to spite them for not allowing you to run your ad-related js. Not a very healthy relationship to have with potential users. Commented Oct 24, 2017 at 18:01
  • 5
    I doubt this is a real reason. Not many people use Noscript.
    – gerrit
    Commented Oct 24, 2017 at 18:40
  • 17
    @Federico Poloni: The ad revenue on Google.com itself is generated when a user clicks an ad, which can be recorded regardless of whether or not the user has javascript enabled. gerrit: I'm not just talking about people who use a specific plugin to disable javascript; I am talking about everyone who has javascript disabled, regardless of what they use, which is thought to be about 1% of users. If Google has the option of getting 1% more ad revenue from this, then that would be a valid consideration for them to take into account.
    – kloddant
    Commented Oct 24, 2017 at 19:11
  • 10
    This can't be the reason. It would be trivial for Google to provide a UI that uses infinite scroll when JS is enabled, and pagination when JS is disabled. Commented Oct 24, 2017 at 22:47
  • 4
    I can confirm that as a security conscious (read: paranoid) user, I browse with NoScript on by default, and I enable scripts from only specific https:// subdomains very selectively, and if the website doesn't work within a couple of rounds of selectively-enable-and-reload, I will just stop using the site unless I really have to use it. I also intentionally use the HTML-only DuckDuckGo page instead of the fully-featured one precisely because as a user I prefer the no-infinite-scroll and other simpler page behaviors.
    – mtraceur
    Commented Oct 27, 2017 at 19:06
23

Pagination works better for several reasons:

  1. Because the resulting HTML isn't complete, some browsers display NOTHING, while others display what comes back. So, browser compatibility would be one reason.

  2. Because with pagination, Google can place sponsored ads at the top of each page; with infinite scrolling, that's more complicated to do

  3. Because with infinite scrolling, the server (google) is still doing work, even though the user might not be doing anything. With pagination, it is guaranteed that the user wants more data, because the click next page; with infinite scrolling, the server is still providing data, and there's no reason to think the user will be consuming that data

  4. Because infinite scroll is a horrible memory pig

On the flip side,

With infinite scroll, the only benefit for the end user is that they do not need page navigation to find what they want: everything's on the page, and simple CTRL-F can help them hone in on something. This trick does not work with pagination.

Other than that, I don't see much benefit to infinite scroll.

EDIT: Sorry, can't address all the comments without making a million comments myself, so I'll include them here, as they are relevant to the OP's question:

If you google "trump", Google will report "about 755,000,000" results were found. Of them, only 12 are displayed. The user's only requirement is, to keep asking for more. That list of 755M results is residing somewhere on some Google server, but is not downloaded to the user's browser. That's because pagination is used.

With infinite scrolling, there are several implementations of it. Some is pseudo "infinite", where there are blocks (larger than a page; perhaps, 2 or 3 pages or more) which are privately downloaded and displayed a page at a time by the browser, and as the user scrolls down near the bottom of the block, another block is downloaded and displayed line by line or page by page. This gives the appearance that the list is infinite, and is a very common implementation.

Another type of infinite scrolling is "true" infinite scrolling, whereby the server, in this example, flings all 755M results to the browser. Here, the server determines the method to display:

It can be by way of a giant HTML, in which case, the full display may take a long time because the HTML is not, in fact, complete, and, the server is constantly working to send those 755M results down the pipe. Or the server can serve up a response containing complete HTML and no data, but, also contains browser script (eg, JavaScript, VBScript, ActiveX, Java, or some other scripting component) fills up a data island, allowing the display to grow as the user scrolls around.

Which method is employed depends a lot on the type of data being served up. For Google, the potential to fling down 755M results means that managing that on the browser would cause a huge amount of network traffic to result, as well as crashing most browsers as the amount of data becomes unwieldy. But divvying up that 755M results is also unwieldy for Google, and is wasted effort since few people or systems will consume that much data. So Google more efficiently manages that data by privately storing only 128 of those results on its side, and divvys up that data into blocks of about 14 pages. The user sees 10 pages, but you can slide to the last page (page 10) and then see an additional 4 pages. You'll also note that the query has resulted in "Page 14 of about 128 results", not "Page 14 of 62,916,667 pages in .98 seconds"

Other forms of infinite scrolling don't involve that much data, but definitely more than a few pages: a news source, for example. US News and World Report today has 100 articles: it displays only 4 or 5, and in the background has downloaded about a dozen; you scroll down consuming that dozen, and when you get close to the last page of a dozen, another dozen or so is downloaded - all the appearance of infinite scrolling - this is the pseudo variant. There aren't 755M articles, but there are well over 100. When you get to 100, you can make a hard click to get more articles, and the process repeats: I gave up after making 10 "load more" clicks, suggesting there are well over a thousand results (indeed, the age of the articles are showing to be several months old; the implication is that the articles might go back as far as their repository contains).

An example of true infinite scrolling serving up all results that pauses the browser as the last of the HTML is waiting to be received would be a client connecting to a site containing limited amounts of display data: an email client, an FTP client, or a music or photos page. There, the amount of items displayed might be expected to be no more than, say, a few hundred items, and so, that particular site might decide not to implement expensive libraries to manage the display. Other sites, like Flickr, for example, which does serve up images, has determined that many of its users have more then just a few hundred images, and so, they will implement a more robust pagination library.

And therein lies the answer: performance vs functionality vs cost. If Flickr went on the cheap and decided not to implement fancy pagination, anyone using their site would walk away as their browsers crashed and burned as the wait time (or memory usage, or both) became too cumbersome. Question is, are you willing to implement an expensive pagination library (or roll your own) to keep your users happy? What is your ROI? How much time do you have? What features to you need to expose to the end user? What server resources do you have? Will your results result in even more data being displayed?

As to that last question, here's a consideration: Google serves up only text. So you scroll and scroll, you see nothing but text. Suppose you served up images, like US News and World Report's news thumbnails, or Flickr's image thumbnails. Now your users are not only downloading the relatively small HTML representing an image, but, once downloaded, the browser has to independently download the actual image - that may come from another site like an advertisement. So the user's wait time to download data your server is serving up, but it also must further download user-friendly content. With infinite scrolling, that is a consideration for you: even background downloading of your data must necessarily include downloading content, which could be audio, photo, or video.

10
  • 5
    1) I'm not sure what you're trying to say here, but i'm pretty sure that how the pagination is implemented specific to the application. 2) fair 3) the user has to scroll for any ajax requests to be made to google so this is not accurate. 4) This is implementation specific. But in general it is. flip side) Can't ctrl-f a page and expect to find something that hasn't been ajaxed in yet. If the user had scrolled until the server gave up then yeah i guess. If you have the option to "show X" amount of rows in a paginated list you can do this more effectively. Commented Oct 24, 2017 at 21:04
  • 5
    Though that "benefit" is squandered if you reload a page for any reason. Searching infinite-scrolling pages using the built-in browser text search can be quite a frustrating experience.
    – Alex P
    Commented Oct 24, 2017 at 21:04
  • Because the resulting HTML isn't complete why would the HTML be broken with infinite scroll?
    – Brad
    Commented Oct 24, 2017 at 21:54
  • 10
    Your points 1 and 3 make no sense. Do you think that Facebook is sending malformed HTML to your browser nonstop even if you aren't scrolling? It's still being paginated on the backend, and only sent to your browser on request. It's just not your explicit request; rather, it's implicit by the fact that you're nearing the end of the loaded content. If you quit scrolling, you quit receiving. Commented Oct 24, 2017 at 22:14
  • 2
    For somebody who knows that there are browsers that will render partial responses, you know little of ajax. Edit: The server sends a complete response, which includes some javascript code that will be executed when the user scrolls down, this code will send an async request to the server which will respond with the data for the next "page" which will be processed and added at the end of the page via javascript... that allows the user to continue to scroll down. With this model the server doesn't have to be working all the time, in fact it is idle waiting for requests, just as usual.
    – Theraot
    Commented Oct 25, 2017 at 12:36
13

Google is already testing progressive load...

Google loads content progressively on Google images, but they don't do that on web results. There are many reasons for this, as already mentioned in other answers, but the most likely reason is to provide control to users

Think about this: I know I saw that interesting results on Page2 is way better than "I have no idea where in this infinite page did I see this result".

And Ctrl+F won't solve the issue if you have no idea what the result actually said. For example, if you search for white cat, you'll probably have hundreds of results on an infinite loading page, all of them for... white cat. How will ctrl+f help you identify the page you were looking for?

... mobile only

However, it seems they're changing their minds and already testing with progressive load, but it seems they're doing this only on mobile. See the A/B testing below:

enter image description here

Clicking one or another button doesn't seem like a big trade-off. For most users, it's just a change of label

This actually makes sense, because mobile surfing behaviors are quite different to desktop, and this kind of content loading arguably sticks better with the tendency to Progressive Web Apps (PWA) .

Now, are these tests going to change the way Google did things up to date? We don't know. I don't think so, pagination on desktop is very valuable to Google, and we know they aren't big fans of changing their flagship product (Google search). For now, they're testing with this behavior on mobile, that's all we know.

4
  • 7
    Ctrl+F is doubly pointless, since the results aren't actually part of the page until you scroll to them (give or take a screen or two). In some versions, not even then, since if you want true infinite scrolling, you need to cleanup after yourself instead of letting the page take up more and more memory.
    – Luaan
    Commented Oct 25, 2017 at 11:32
  • @Luaan Not to mention that Ctrl+F doesn't work very far away from where you've currently scrolled, either too far up or too far down, even if the results are already loaded.
    – EKons
    Commented Oct 28, 2017 at 11:37
  • 1
    "Show more results" isn't infinite load. It's pagination. I'm speaking from the server side. Whether page 3 has 21-30 or 1-30 makes little difference to the backend, presuming the client side is caching 1-20. the point is the user has to ask for more data (presumably after finding the first data does not suffice). Commented Oct 30, 2017 at 17:13
  • @Harper I'm talking from the user side and her interactions
    – Devin
    Commented Oct 30, 2017 at 19:23
10

Google follows both models; pagination and progressive loading at the same time but for different pages.

e.g. for images like here, you can see that there is progressive loading and after a certain moment, a CTA saying "Show more results" come which can show the other set of results but when you search in general like this then after a certain points, pagination option comes.

Google Image search

Ggogle normal search

The reason for this is when you do the image search, you are not looking for something particular and many results can solve your purpose of search but in the case of news and all results, you are looking for something particular and there are high chances that your required answer can arrive on the first page of results.

You can find this quote here too.

In general, an infinite scroll works well for something like Twitter where users consuming an endlessly flowing stream of data without looking for anything in particular, while pagination interface is good for search results pages where people are looking for a specific item and where the location of all the items the user has viewed matter.

5
  • 1
    What is the source for the quoted final paragraph?
    – grg
    Commented Oct 25, 2017 at 8:42
  • @grgarside check the conclusion part here uxplanet.org/…
    – Sanshizm
    Commented Oct 25, 2017 at 8:45
  • I can't find that text anywhere in that article using ⌘F?
    – grg
    Commented Oct 25, 2017 at 8:47
  • @grgarside not the exact words. These are by me but you can find a sentence on similar path on the link I sent. :P Check conclusion part :)
    – Sanshizm
    Commented Oct 25, 2017 at 8:49
  • 6
    Don't use quote formatting for something you haven't quoted then!
    – grg
    Commented Oct 25, 2017 at 8:54
2

I think google does that so that it's easy to paginate & bookmark the search results if the user would like to, compare that to being lost in hundreds / thousands of lines of search results using progressive loading. Maybe..

2
  • Could you expand on your reasoning because as of right now it's more of a comment than an answer.
    – Mayo
    Commented Oct 27, 2017 at 17:17
  • didn't I provide my reasoning already ^^ ? Commented Oct 28, 2017 at 6:58
2

UX consistency (over time)

Of all the websites I'm using daily, google search is surely the one that has visually and functionally changed the least throughout the years. They recently changed a few colors for the links I think and that was a pretty big thing for them.

Any change there can potentially harm a billion users daily routines and muscle memory so it seems to me that Google is very conservative with displaying results on Google Search.

Google image search changed a few times, Google News has been refreshed rather newly. But they don't dare perform too big changes on Google Search. I think they would think many times before even changing to something beter so no wonder they won't change it to something worse.

In the end, McDonalds BigMac and cheeseburger haven't changed much and they're still selling. (This answer is not sponsored)

2

Pagination adds psychological breakpoints

If you get to the bottom of the page you have to make a choice, either go to the next page or change your search criteria.

With progressive loading these breakpoints don't exist and users will continue scrolling way longer.

Having breakpoints allows you to abandon bad search keywords and try something else, helping you to find what you're looking for much faster.

That is why search engines have pagination. It has nothing to do with technology.

2

To begin with, not anymore. Since Dec 2022 Google has switched over to progressive loading, so I believe this proves a point that in those years Google product team has been asking themselves the same question.

The path to this decision would be relatively simple in my opinion - Since most users is used to scrolling, not interrupting them would be better than interrupting. What power-users think and the negative impact they experience(mine included), in the vast majority of things, simply does not matter.

0

Computational load

Computing search results isn't free. Asking the search engine for the first 10 results is much cheaper than asking for the first 100 or 1000.

They certainly use a caching system: if they have seen your query 5 minutes ago, they don't hard-recompute the answer again, they give you the same answer they gave the last guy. Typically this is done by allocating that query to a specific server which handles all queries, say, in that MD5 range. The server then queries the search engine proper if this is uncached or if some heuristic indicates it is fast-changing.

How large a query set is hard-computed: 10 results? 20? 100? A big factor is how much the caching system has the space to cache. Search results contain a lot of meta-data -- a LOT -- so the data is bigger than you think. Mind you, this is before the blending computations that localize your result. Some of the meta-data is for localization.

This for sure: extending searches by down-scrolling means quite a few more people will be going deeper into search results than they now do... And that means significantly more computing overhead.

Every feature-add can mean having to rack more servers to accommodate the load. However this one could mean quite a few more servers, with a considerable cost. Bricks and mortar may also get in the way: They may not even have the rack space.

2
  • "They certainly use a caching system: if they have seen your query 5 minutes ago, they don't hard-recompute the answer again, they give you the same answer they gave the last guy." Really? Google does user-specific search taylored for your history.
    – Almo
    Commented Nov 1, 2017 at 21:11
  • @Almo You're talking about the blended result the front end gives you. It is mixing content from several search clusters. The results from those clusters is what it caches, and then it uses the metadata I mentioned to customize the search further for you. For instance the node that handles the "pizza" query might get general information about pizza from the main cluster, and information about pizza in Noblesville IN from another cluster. Both of those can be cached, even though it does further work on selection and ranking customized for you. Commented Nov 2, 2017 at 2:58
0

If you find the your answer in the last result of the page 1, then there is no need to go to page 2. In case of progressive loading as soon as you reach the bottom of the page i.e you are seeing last few results it will automatically load the data and increase the load on servers too.

0

Alongside many of the things already mentioned, there are numerous Accessibility issues with infinite scroll. Cognitively there is the inability to search, not knowing where you are, or where to find previous content.

http://simplyaccessible.com/article/infinite-scrolling/

0

As a user (and full-stack engineer) I am often annoyed by many of the single-page sites out there, and especially progressive loaders. These often scroll the page out from under me, or I loose track as things fade in and out. Or I still have to wait for the content to load, or end up looking at immensely long pages. More designers should opt for page-oriented designs, not the current fad of single page sites, if the pages are too long or slow. Forget it. Even the 'page' I am looking at right now is getting close to what I'm talking about.

0

"as a designer I believe "Page system" is less efficient than progressive loading inside a single page" ... then you are a lousy designer. The very opposite is true. Progressive loading imposes items on a user whereas paginated results gives the user the power to choose, which is more efficient as the user gets to where they want quicker.

0

The existing answers here are excellent, just to add what I think there may be another factor at play:

Nobody cares, because (almost) no one ever goes to page 2.

I failed to find actual research on this, but I'm pretty sure that a very, very high percentage of searches don't leave the top five results, let alone the first page. Not saying it never happens — personally I'd say I leave the first result page about once a month — but it's not part of the core experience. As in, Instagram or TikTok relies on an "excellent" (by some definition, not user's mental health) infinite-content-exploration mechanism. For gSearch, the user going past the first results is something that only happens when they basically already failed at doing their job well — serving you relevant content (and ads) as far up as possible.

Since Google as a company is very driven by profit incentive, I can easily imagine that they haven't got around to switch it yet because it's not that relevant.

However I'm just a random guy on SE, and this is all just guesswork :)/

TLDR: As opposed to feed-based content media, doom-scrolling is not actually an important or even desirable feature of gSearch, therefor Google has no incentive to change the current system.

Not the answer you're looking for? Browse other questions tagged or ask your own question.