Why I hate infinite scrolling

Note: if you already know you hate infinite scrolling are looking for instructions on turning it off, details are here.

Nasty surprise

A few weeks ago, something unpleasant happened to my blog. The top of the page looked OK, but if I scrolled down more than a small distance, a semi-transparent box would slide up at the bottom of the screen, obscuring the last few lines of text.

blog title on translucent background, floating on top of one of my posts

The first sign that something was wrong.

I dislike unsolicited popups on web pages anyway; I particularly dislike ones which can’t be got rid of but follow you down the page as you try to scroll past them. For me they have same distracting effect as, say, a moth landing on something I’m reading and walking around on it, or someone plonking things down on a book while I read. So I really didn’t want things I hadn’t even put there messing with the behaviour of my blog in this way.

I’ve known about this blemish for a while; yesterday I finally got round to trying to cure it.

It looked like some kind of CSS trick, so I expected I’d need to change the custom CSS I’ve paid WordPress a small annual fee to let me use.

First step: find out what needs modifying. My browser, Opera, is pretty useful for this sort of thing. In particular, the View menu lets you display various features of the code for the page. So I got it to show the Class and ID attributes which label blocks of text and so on for CSS purposes. I expected one would have a label like “floating-footer”, and I’d then write a CSS rule to make anything with that label invisible.

The actual labels I saw were more worrying:

The floating box, showing attributes called "infinite-footer" and "infinity-blog-tit[le], together with my comment "Oh bugger!"

I don’t like the look of those ID names . .

What were infinite and infinity doing there? I’d set the display format ages ago to five posts per comfortably-sized page—or comfortable for me, at least. I’d experimented with different page lengths, and that seemed the one that worked best. Five posts loaded acceptably quickly, even over my mobile broadband connection, and resulted in comfortable scrolling via the scrollbar. Please, no . . . !

I experimentally scrolled down to what was meant to be the bottom of the page. Then two posts further, to the actual bottom of the page. Sure enough, the ubiquitous and annoying “Sorry, you’ve got to wait while this goes round and and round and your browser goes all sluggish while we readjust your scrollbars” symbol appeared, jerkily rotating as my connection erratically downloaded things I hadn’t asked for. It was followed eventually by the next page of posts. On the same page. Or rather, posts 8 to 14. I’d now effectively got nearly three pages of posts filling up the browser with one idiotically long page.

So I hurriedly went to the blog settings, found the one responsible for infinite scrolling, and turned it off. I was relieved to see on my return that there was now no annoying floating popup. Phew.

OK, let’s scroll to the bottom again. Everything will be OK now. The Older Posts link will have come back, there won’t be any horrible stretchy page, I’ll be able to click the link for page 2, and . . .

screenshot showing "Load more posts" button at the end of the page

Sorry. We’ve taken the link away.

Oh. No. No! No no no no noooooooo! That’s just the same thing, but with a button! I don’t want to create an ultra-long page. I’ve just turned it off, for goodness’ sake! I simply want to go to the next page, where the next five posts will be. What are you doing to me?!

So, back to the settings page. (I must have missed the setting that give me normal pages . . .  Oh. No sign of it. Off to the user forum, then . . . What, discrete pages is currently not an option?! Good grief  . . . ! ) . . . And, finally, to an enthusiastic announcement from WordPress about how wonderful infinite scrolling is and how pleased they’re sure we’ll all be to have it.

That’s why I can’t find the setting, then. They’ve got rid of it. There’s a glimmer of hope in the word currently. But at least for now, I seem to be stuck with one long page which will contain all 103 of my posts if anyone’s determined enough to scroll all the way down. I can choose between having it load automatically when it feels like it, and on request when I click a button. But it’ll be the same unwieldy, user-hostile, browser-hogging, single page.

What’s so bad about it?

Um . . . Everything?

For a start, consider the experience of scrolling through the page. Now, I know that many people are using a scrollwheel. Maybe others like to use the arrow keys. For myself, I’m mainly browsing with a netbook that has a trackpad. Since the screen is quite small, I like to have fine control over the positioning of the page. This is often important if something is nearly the height of the screen. So I navigate using the vertical scrollbar.

Because the trackpad is so familiar and scrolling with it so instinctive, I mostly scroll without needing to look at the scrollbar. I know where it is, and that the pointer is already on it; my finger hovers over the trackpad as I read, ready to make a small, automatic movement when it’s time to scroll down a little. I do look occasionally, mainly to check the pointer hasn’t drifted off to one side, but mostly I’m just looking at the page content. Occasionally I’ll check the scrollbar to see how far through the page I am. It’s a pleasant, relaxed way of reading.

Now, suppose the page has infinite scrolling.

As I approach the “bottom” of the  page, the next section starts to load. I don’t really notice, since I’m engrossed in reading someone’s wonderful blog post. If I did notice, it would be a distraction from reading.

The browser, however, does notice. The page is now longer; the scrollbar adjusts itself accordingly, moving upwards the appropriate distance. But I don’t know this, since I’m still busy reading.

I scroll down to read the next line, or to move the page by half a line or so to get an image positioned where I can see it properly . . .  and then all hell breaks loose. Instead of the small adjustment I’m expecting, the page starts hurtling upwards. When I thought I was dragging the scrollbar down, I was actually clicking just below it. Or rather, holding my finger down and sending a stream of auto-repeat clicks. They’re still happening since my reflexes haven’t yet taken my finger off the trackpad.

So the browser is now frantically trying to load the next 5, 6, 10, 20, God-knows-how-many pages. Once my reflexes catch up enough for me to look to the right,  the rapidly shrinking scrollbar is whizzing up the screen, several inches above the pointer. I chase after it. Not only is it running away from me, but it’s doing so erratically and jerkily since the browser and the internet connection can’t keep up.

I manage to catch the scrollbar and can finally start repairing the damage. Now, where was I on the page?

Well obviously I haven’t a clue where I was, have I? Not in relation to where I am now. Before the browser went insane I was three quarters of the way down, but that’s irrelevant now.  The scrollbar is up near the top and I obviously need to be somewhere above that, but how far? No idea.

So I start scrolling back up, trying to find my place. And because the page is now so long, I have to use very very very tiny movements if I’m to move the page at a speed where I can actually see it.

It’s the equivalent of happily reading a book only have it suddenly and unexpectedly snatched out of your hands by someone who then deliberately loses your place, mangles the pages so they won’t turn properly, then throws it back at you. Horrible, horrible, horrible, horrible, horrible.

And seriously, what sort of web designer is unable to anticipate that this will happen? They must have used a web browser. With scrollbars. And they must know that people use scrollbars for scrolling with, surely?

Of course, the wilfully autonomous scrollbars are only one of the problems, even if they’re the worst. Here are some of the others.

  • Pages never finish loading. The browser is forever connecting to the server to fetch the next bit of the page.
    Maybe with a wonderfully fast computer and internet connection this is fine. For me it’s not fine: whenever something is loading, scrolling is erratic, jerky and sluggish. This applies especially when I have a lot of tabs open, which I normally do.
    Scrolling becomes comfortable once the page has finished loading; infinite scrolling ensures that it never becomes comfortable.
  • Navigation. With discrete pages, you always know how far down a page you are, so you’ve an idea how much there is left to read.
    You also know which page you’re on. Maybe you’ve decided to browse your way through a few pages of posts, skimming through for anything that looks interesting. Remembering that you wanted to look at something a couple of pages back, you click the Back button twice and there it is.
    Maybe you want to close the browser for now and and continue  later from where you were: you bookmark page 16 and come back to page 16. Even if the blogger adds a new post in the meantime, you’ll be in more or less the right place.
    Infinite scrolling makes all of that impossible.
  • The ever-lengthening page. As you scroll down, the page gets longer. As mentioned above, this means smaller and smaller movements of the scrollbar are needed. Eventually they’re so tiny that trying to go any further is just too irritating to be worth it. Anything further down might as well not be there since reading it is too much hassle.
  • Sequential-only access. To get to page 50 via infinite scrolling, you have to scroll all the way from page 1. You can’t just type ?page=50 or whatever into the page URL. And you don’t know where page 50 is anyway; you have to guess its position on a page whose length is continually changing. Imagine a book where the only way to get to page 50 is by opening every single page on the way to it!
    . . . Well of course there was a time when books were like that. You navigated them by scrolling because they were scrolls and nobody had yet come up with anything better. Then, around 2000 years ago, books with pages were invented, and nobody in their right mind uses scrolls any more. Quite why web designers suddenly want to revert to an unwieldy system that’s 2000 years out of date is beyond me.

Yes, I know that a properly organised site will have archive links and so on for navigation. Scrolling won’t be the only way to get to things. But navigation links aren’t actually the same as, say, jumping forward a few pages to see what you find. They only work when they happen to coincide with what you’re looking for. Links and post titles won’t tell you there’s a hilarious cartoon on page 17. (They can’t; you don’t know it’s hilarious until you see it.) With infinite scrolling you can’t do the equivalent of flicking through the pages of a book until you find something interesting then making a note of the page; all pages are page 1.

Also, sites like Twitter don’t have archive links; you can’t really have thousands of 140-character links to individual 140-character tweets.

I think programmers who inflict infinite scrolling on us should be forced to use a programming language in which all access to memory, databases and arrays is sequential. And to use programming manuals written on scrolls. Let’s see how they like that.

I don’t like infinite scrolling.

25 responses to “Why I hate infinite scrolling

  1. god I love this post
    I absolutely HATE HATE HATE infinite scrolling
    also floating crap that I can’t scroll past on pages.

  2. I abhor infinite scrolling. I use the scroll bar the same way as you do as I read so to suddenly be jerked from what I was reading and having to find my place on the page again is a pain in the ass. All of my favorite blogs seem to be going to this system and it’s painful to use.

    I understand why they’re doing it of course, you do end up spending far more time on their pages as it continually puts new things in front of you. And while I know they expect me to like this I am instead finding that it’s causing me to waste a lot more time (and in the case of things like kickstarter) more money as I no longer have a natural break to remind me and stop and go to bed or whatever else.

  3. Some user interface design patterns are useful – ‘infinite scroll’ is not. However, lazy loading (limited infinite scroll?) does provide initial rendering speed benefits, as long as there actually is a limit to the [infinite] scrolling – namely a pagination control of some kind, which gives the user some idea of the size of the data subset. This may be 5 pages, 50 pages or 5000 pages; in all cases, I want to know.

  4. I stopped using Facebook and Twitter when they changed to this display method. Twitter locks up my browser after loading around pages of Tweets.

    YouTube now use this method, so I add RSS feeds to Google reader for channels I want to subscribe to. Much neater and easier to use than YouTube’s page.

  5. Yes, infinite scrolling sucks big time. I HATE IT! One of the worst “inventions” in the history of computers….

    “The ever-lengthening page. As you scroll down, the page gets longer.”

    Not just that but also the big resources that ever-lengthening page requires. The browser becomes instable to the point of crashing. Imagine if you want to see the page 1000; with infinite scrolling you should load ALL 1000 pages in one tab. Disaster…

  6. Infinite scroll is a joke. Some people want to be able to move back and forth anywhere on a page without having to put a stapler on the page down key and walk away for ten minutes. I don’t give a **** how much time it saves in loading the page, when you navigate away and back you have to repeat the whole process again. I would much rather have to go from page to page, because if I am looking for something on (or around) page thirty I can go straight to page thirty instead of scrolling to the bottom and waiting for the page to load thirty ******* times. When I try to scroll the bottom using the scroll bar, the page hijacks the bar and moves it away from my mouse so I have to move my mouse back up to it, drag it down and repeat the process. Whatever idiot thought of infinite scroll should be fired. Not fired from their job, but rather fired out of a ******* cannon.

  7. Pingback: To Infinite Scroll or Not to Infinite Scroll: Where We’ve Come So Far | Design Shack | Mrs. Web

  8. I can only agree with your post (which I found by specifically looking for arguments for or against this). While I don’t use the scrollbar, I can see how even more hellish it would be. I’m already annoyed by the inability to bookmark a given page. Your example of books and scrolls made my day because I had the *exact* same thought. I loathe this modern(?) philosophy of jumping on the next shiny new thing and using it everywhere without a single thought for how much it will wreck things.

    • The inability to bookmark is the major drawback, I think. That makes it actually worse than a physical scroll. At least with a roll of papyrus you can keep it open at the point you’ve reached and come back to it later. Infinite scrolling is like having one that automatically rewinds itself to the beginning the moment you put it down.

  9. Since posting this, infinite scrolling has only become more popular, despite being a horrible regression in usability. Even worse than when sites split their practically non-existent content over 10 pages to increase ad impressions.

    When I see my scrollbar start to grow, I get an overwhelming instinct to BAIL!

  10. I found this post on a Google search for “Why I hate infinite scrolling”. I knew I hated it, but it seemed to be used everywhere. I thought, “Am I the only one?” What am I missing here?” I knew there MUST be others out there who hated it as much as I do. Thank you for articulating why so well!

    • You’re welcome. (Apologies for not acknowledging your comment at the time; I wasn’t active on this blog for a few years. Now I’m reading through comments from that period, and being encouraged by them.)

      And for what it’s worth, I still hate infinite scrolling.

  11. Yeah, I completely agree. I hate this thing so much… I thought I was the only one. But thank goodness I’m not. Although I don’t really know how we could do something about it.

  12. Infinite scrolling is yet another example of imposing smartphone UI design principles on everything. Apparently the average web developer is a single-minded ape that can only cope with a single paradigm at once. Therefore every machine with a display, even if it has a keyboard full of navigation keys and no touch input whatsoever, must now be treated as if user interaction can only happen by swiping fingers.

    What I hate most about it, is that there is no way of figuring out how much information is available. In the past, I could simply look at a page number or see how large the scroll bar was. Now I see no page numbers and a big scroll bar, so I think: “aha, only little content, so I can scroll through this quickly.” Then I start scrolling and the page keeps on growing as if I am in a virtual implementation of Zeno’s paradox.

    • This is why I used pagination and NO INFINITE SCROLLING. I also hate mouseovers. I did not want infinte scrolling on http://www.enterfan.com

    • Sorry to reply—er—7 years late . . .

      I’m not sure I like infinite scrolling on a smartphone either—it often does the same thing of slowing the browser down until it crashes, and I can’t help wondering whether it’s also partly responsible for the insane amount of storage the web browsers accumulate until it’s impossible to so much as update a 1MB app.

      Zeno’s paradox is exactly the right analogy. 🙂

  13. I hate this too

  14. I agree completely. The feature of infinite scrolling used here, Yahoo, Twitter etc. is the stupidest internet revolution ever. I am amazed why hardly anyone criticises it. For e.g. in Yahoomail I have around 3000 emails. To go to my 2000th email, I will have to keep scrolling. It’s not only time consuming but slows down the browser too.

  15. InfiniteScrollingSucks

    It’s 2015 and stupid infinite scrolling is still everywhere. However, it looks like finally some bright head at google noticed: http://www.zdnet.com/article/google-tries-to-save-the-web-from-the-curse-of-infinite-scrolling/

  16. As a Software engineer and Web Developer… I want to shoot every POS in the face that uses infinite scrolling in their pages.

    I hate it to the max, just less than mouseovers. What happens is it eventually adds to the pages DOM so much that the browser freezes more and more until it fails.

    Infinite scrolling, mouseovers and many other POS things need to go. Notice I used no mousevers and no infinite scrolling on http://www.enterfan.com

  17. Craig Wellington

    I HATE infinite scrolling and I leave such websites immediately blocking them from my PC.

  18. Sarah Thompson

    I couldn’t agree with you more completely!

    If only there were a way to offer the user a choice, then fine, let frivolous people with all the time in the world and no need to know how far along they are or to return to a particular place choose infinite scrolling.

    Let the rest of us know what fking page we’re on out of how fking many pages in all. Please!

  19. Pingback: To Infinite Scroll or Not to Infinite Scroll: Where We’ve Come So Far | Design Shack

  20. The-Internet-Has-Regressed!

    I am in heaven here with other Infinite-Scroll-HATERS! Me, too! There should be an ongoing forum somewhere for the entire world to revolt against Infinite Scroll, which I have despised from the FIRST time encountering it several years ago (at WP blogs), then TWITTER, & even Google Images uses it (talk about hogging your RAM with a zillion photos down one page, ugh! & near-impossible to quickly grab a DIRECT LINK to a photo!) YouTube is a similar misery!

    Pleeeeease SOMEBODY create a way for Mac OS &/or Firefox-for-Mac (that non-techie people can understand & implement) to STOP or BLOCK Infinite Scrolling, especially on TWITTER & GOOGLE IMAGES. Sadly, too many foolish sites are using it. Give me NEXT PAGE/Pagination option!

    And a plea to ALL wordpress.com-freebie-blog users: Do not use themes that force us to “infinite scroll.” I won’t visit your site again if you put me through that misery! (Turn off the option in Settings like TIMTFJ did, or choose themes with FOOTERS in which you can add at least ONE widget & that will STOP Infinite Scroll.)

    The Internet gets worse & worse over the decades rather than better. The newer constant “spinning” sections (“mouse-overs”?) on webpages totally stink & turn webpages into bloated hogs. Ditto the loathing for “floating crap” that won’t get the H out of the way!

    And an ancient Internet horror that used to be called “FRAMES” seems to have made a comeback as well, cramming sections of websites into separate “FRAMES” that you then have to scroll up/down/sideways in that little section! Walmart’s newer Grocery.Walmart dot com site does that to their CART! What a nightmare trying to assess your cart’s contents! The Amazon site is NO FUN EITHER. Too much crap on the pages.

    My Motto: “Developers are Not Inventors but are Destroyers.” Curse them all!

  21. Thanks for your post! I have exactly the same experience, even though I use a computer. I scroll using the scrollbar, and happen upon the craziness when webpages suddenly decide to add more to the bottom of the page. Then I have to scroll back and try to find where I was.
    I found your post when I was particularly annoyed by this. Glad to see that I’m not the only one that despise infinite scroll.

    I occasionally do a startpage.com search (I don’t use google anymore) for plugins to disable infinite scroll, but have not found a solution.

    Maybe it would be possible to make a filter list for adblock/ublock.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s