
Most pagination arguments are about mechanics — cursors versus offsets, stable sorts, the total count query nobody needs. Those matter, but they are downstream of a question the engineering team usually skips: what is a page for?
Offset pagination re-scans rows it has already skipped and shifts under you when something is inserted. Cursor pagination hands you an opaque marker and continues from there. For an API that feeds a build, cursors are the right default — you are walking the whole set once, in order.
Five posts per page is a reading decision. So is whether the archive is paginated at all, or is one long list that a browser's find-in-page can search. Ask what a reader is doing on that screen before picking a number.