Average rating is 25% positive
25.0
16 votes
This pattern was helpful This pattern is useless

Pagination

Problem summary

The user needs to view a subset of sorted data that is not easily displayed on one page.

Example

Example image showing 'Pagination'

Usage

  • Use when there is more data than what is comfortably fitted into one screen.
  • Use when the dataset is ordered into amount of interest (that usually means newest first)
  • Do not use when you don’t want the user to pause for navigating to the next page.

Solution

Break the complete dataset of items into smaller sequential parts and show these on separate sequential pages. Provide pagination control to browse from page to page. Let the user browse to the previous and next pages by providing links to such actions. Also, provide links to the absolute start and end of the dataset (first and last).

If the dataset is of defined quantity, also show a link to the last page. If the dataset to show possibly is of varying size (for instance as a result from a search), do not bother to show a link to the last page.

Rationale

First and foremost, pagination parts large datasets into smaller bits that are manageable for the user to read and cope with. Secondly, pagination controls conveys information to the user about, how big the dataset is, and how much is left to read or check out and how much have they already checked out.

Pagination provides the user with a natural break from reading or scanning the contents of the dataset, and allows them to reevaluate whether they wish to continue looking through more data, or navigate away from the page. This is also why pagination controls are most often placed below the list: to provide the user with an option to continue reading through the larger dataset.

More examples images of the Pagination pattern

Pagination at a standard wordpress blog. Pagination at a Yahoo! 360 blog. Pagination at a Blogger blog. Pagination at a Digg.com.
Pagination at a standard wordpress blog. Pagination at a Yahoo! 360 blog. Pagination at a Blogger blog. Pagination at a Digg.com.
Pagination in Google Analytics The Pagination at flickr has large clickable areas, the current page is easily identified, and previous and next links are detached. Note that while on the first page, the 'previous' link is grayed out and without a surroun Pagination at OK-cancel - easily identifiable first, previous, next, and last links with large clickable areas with disabled links where appropriate. The Pagination at Vimeo has large clickable areas for each page, the current page clearly stands out from the links, and the previous and next buttons are nicely detached from the rest of the pagination through their shape and color.
Pagination in Google Analytics The Pagination at flickr has large clickable areas, the current page is easily identified, and previous and next links are detached. Note that while on the first page, the 'previous' link is grayed out and without a surroun Pagination at OK-cancel - easily identifiable first, previous, next, and last links with large clickable areas with disabled links where appropriate. The Pagination at Vimeo has large clickable areas for each page, the current page clearly stands out from the links, and the previous and next buttons are nicely detached from the rest of the pagination through their shape and color.
Pagination of comments at the Microsoft MIX '08 conference page. Pagination used on the Bravenet guestbooks Pagination at the fashion website Yoox.com. The upper part of the example image represents the top of the page and the lower the bottom of the page. In between is the paginated items.
Pagination of comments at the Microsoft MIX '08 conference page. Pagination used on the Bravenet guestbooks Pagination at the fashion website Yoox.com. The upper part of the example image represents the top of the page and the lower the bottom of the page. In between is the paginated items.
This pattern was last updated on February 07, 2008

2 comments

Post a comment

Required
Required
Will not be published
simple_captcha.jpg
Required
Type the code from the image