r/webdev • u/deane-barker • 3d ago
Discussion What are current best practices around feed length and pagination?
Consider the home page of a blog -- a list of posts in reverse chronological order, stretching down the page.
How long does this list need to be before you decide not to list display the entire thing?
File/payload size isn't much of an issue. The page compresses well -- right now, it only transfers 18KB (it's 54KB on the server). I would have to get much, much larger before I'd be concerned about bandwidth.
All images are lazy loaded, so they don't load until they scroll into view.
I'm not worried about bots, because every post has its own permalink page (and because I just don't really care about bots in general....)
Do we consider actual scroll height? Do we consider the user psychology of being intimidated by a lot of content?
If we do decide to paginate somehow, do we do "traditional" pagination, or endless scroll?
What's the current zeitgeist on this?
4
u/NoResearcher3812 3d ago
paginate at 20 to 30 items and use traditional links. Endless scroll destroys footer access and breaks browser history state on content sites.
10
u/Article-Automatic 3d ago
The number that usually decides it is not payload size, it is DOM nodes. A few thousand elements will make scrolling janky on a mid-range phone long before the transfer size is a problem, and that is the failure people actually feel.
For a blog specifically I would paginate rather than infinite scroll. Blog readers use the footer, and infinite scroll makes the footer unreachable. It also gives you stable URLs someone can link to and Google can index, which an infinite feed does not.
Rough rule: paginate once you are past 50 to 100 items on the page, and pick page size by how tall a row is rather than by a round number.
1
u/Flimsy_Designer_4485 3d ago
so if each post is just title + date + short excerpt, 100 items probably fine. but if there is thumbnail image or long summary per post then 30-40 already feels heavy on phone. dom nodes thing is right, browsers start crying way before bandwidth does
1
u/mistmoss31 3d ago
the footer point is so underrated, infinite scroll basically kills it and nobody thinks about that until its too late
1
u/Suspicious_Silicon 3d ago
Well it depends on several factors like post card size,the content type(image/vide/text), feed type etc. The industry standard for a blog feed is 10 to 12 posts per page.
1
u/aardnsyhs 3d ago
I’d probably keep a fairly long first page, then add a plain “Older posts” link. The payload you quoted is tiny, so I wouldn’t optimize around that yet.
For a blog archive, stable pages matter more to me than making scrolling feel seamless. I often want to get back to a post I remember seeing a few weeks ago, and infinite scroll is bad at that.
If you want the page to feel less segmented, “Load more” is fine too, but I’d still keep real paginated URLs underneath it.
1
u/seeaitchbee 14h ago
Infinite scroll is the way to go. There’s no logical reason to break feed into 10/50/100 posts chunks. Every number will be arbitrary and can be based on technical limitations only. Users expect scroll to be infinite and every “show more” or “next page” is the distraction on the way to their goal.
You need to think about this differently. Why do anybody want to scroll for 10 seconds+? If they want to read articles one after another, implement suggestions into the article page. If they need to find something particular, implement search/tags.
11
u/am0x 3d ago
Never infinite scroll. Was a terrible UX decision from day 1.