Break up long lists
Use pagination when a list or table spans more results than one page should show.
The pagination component enables the user to select a specific page from a range of pages.
Use pagination when a list or table spans more results than one page should show.
The current page indicator helps users understand where they are in the set.
Pair with page size controls when users need to change how many results they see.
Previous navigation
Active page
Page number
Overflow icon
Next navigation
Pagination supports four visual styles. Choose the variant that best fits your layout density and the user task.
First, last and page-direction buttons with a window of page numbers and ellipses.
Match the pagination scale to the surrounding UI density.
Default size suitable for most pages.
Sets the active page on first render.
Mid-range page reveals leading and trailing ellipses.
Pagination can show number-only navigation or include previous and next controls.
Use page numbers when direct page access matters and previous/next controls are not needed.
Data length and items per page determine how many pages are rendered.
Use dataLength and itemsPerPage to match the number of records being paginated.
Each row is a colour, spacing, or size value the component uses, and the right-most column tells you where in the component you'll see it.
sgds-gap-2-xs4pxsgds-border-radius-md8pxsgds-dimension-4848pxsgds-outline-focus—sgds-outline-offset-focus—Pagination suits tables and lists with many entries. Set itemsPerPage to fit the surrounding layout.
If the full list fits on one page, omit pagination. A single-page control only adds visual noise.
When users only need previous and next controls, like a guided tour, the button variant keeps the UI clean.
Pagination and infinite scroll conflict on how data loads. Pick one pattern per surface.
TabShift+TabEnterShare them with us on Slack → #ask-sgds-v3
Report it on GitHub Issues → sgds/components/pagination
The Singapore Government Design System was developed to empower teams in creating fast, accessible and mobile-friendly digital services.