# Table Pagination & Rows per Page Selector

## Purpose

Pagination and the Rows per Page Selector provide a clear and efficient way to navigate through large datasets without overloading the interface.

Instead of rendering hundreds of entries at once, this feature divides data into manageable segments, improving performance, readability, and user control.

These controls ensure that users can view, scroll, and interact with data quickly, even in tables with extensive records.

{% hint style="info" %}
[Learn how to use Search and Filter Data](https://docs.cloudscaff.com/general-tools-and-features/search-and-filter-bar)
{% endhint %}

***

## How to Use Navigating Pages

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FXGKtniJnBlnJeDCt8R4g%2FScreenshot%202025-10-31%20at%2009.01.51.png?alt=media&#x26;token=dbdee91c-ebb4-4c51-8929-aed3dcd6bf44" alt="" width="280"><figcaption></figcaption></figure></div>

The pagination bar appears at the bottom of the table and includes the following controls:

**First Page** – Jump to the first page of data.

<div align="left"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2Fn3FNPERVfehBrqOpfhoW%2FScreenshot%202025-10-31%20at%2009.09.24.png?alt=media&#x26;token=19d3cefb-bbb8-46b3-b534-3f061d9392bb" alt="" width="67"><figcaption></figcaption></figure></div>

**Previous Page** – Move back one page.

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FXpZ1FbdZCBdmIjgxs7uY%2FScreenshot%202025-10-31%20at%2009.09.32.png?alt=media&#x26;token=ef836e0e-bcb2-450e-a0aa-205322a724c6" alt="" width="56"><figcaption></figcaption></figure></div>

**Page Numbers** – Click a specific number to jump directly to that page.

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FXmAXDM0bF91oCHOcczLW%2FScreenshot%202025-10-31%20at%2009.10.38.png?alt=media&#x26;token=dc424050-52be-488a-95dc-3f924eeb9c75" alt="" width="375"><figcaption></figcaption></figure></div>

**Next Page** – Move forward one page.

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FZhKnT4DeUOeKz11Ykwpf%2FScreenshot%202025-10-31%20at%2009.09.41.png?alt=media&#x26;token=0417d03a-4221-4b3b-b9bd-1b5db6b58fd2" alt="" width="56"><figcaption></figcaption></figure></div>

**Last Page** – Jump to the final page.

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FnXvniJdrGAfXNXEqxpMx%2FScreenshot%202025-10-31%20at%2009.09.50.png?alt=media&#x26;token=c2a57739-4f6d-4d01-a14e-13ce1c2c0993" alt="" width="68"><figcaption></figcaption></figure></div>

Users can click through pages to view additional records without leaving the table view.

***

## How to Use Selecting Rows per Page

On the top left of all tables is a **Rows per Page Selector**, represented by a dropdown menu.

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2FVtqjl9ewbnmP9akxcjr7%2FScreenshot%202025-10-31%20at%2009.00.46.png?alt=media&#x26;token=0aee155f-6e40-4c34-8fe1-6d8068a3d408" alt="" width="62"><figcaption></figcaption></figure></div>

Clicking it opens a list of options such as:

<div align="left" data-with-frame="true"><figure><img src="https://3532476255-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsVJ0qURLvzCOxTGXEZIZ%2Fuploads%2F3MvnrrDOmjtXK05W3jP1%2FScreenshot%202025-10-31%20at%2009.00.59.png?alt=media&#x26;token=0f488fc7-b7d9-4cbd-b15b-9493e0ad2360" alt="" width="211"><figcaption></figcaption></figure></div>

Selecting a new value automatically updates the table and adjusts how many rows are displayed on each page.

You can choose to display:

* 7 rows
* 10 rows
* 50 rows
* 100 rows

***

## How It Works in Practice

* The table only loads and renders the records relevant to the active page and the selected row limit.
* When the row count is changed, the table recalculates the number of pages and resets to Page 1.
* Pagination actions (Next, Previous, or Page Number) dynamically fetch and display only the required data.
* This ensures a responsive experience even with large datasets, reducing unnecessary data processing and improving performance.

***

## Best Practices

* **Start Small:** Set a small default (for example, 7 or 10 rows) to ensure faster load times and a cleaner display.
* **Preserve User Preferences:** If possible, remember the user’s last selected page size and page number for continuity.
* **Display Totals:** Include “Page X of Y” or “Showing X–Y of Z” information for clear context.
* **Avoid Overloading:** Do not include very high row count options (for example, 500 or 1000). Large loads may cause slow rendering on mobile devices or lower-performance systems.
* **Maintain Accessibility:** Ensure pagination buttons and dropdown menus are easily clickable and screen-reader friendly.
* **Consistent Placement:** Keep pagination controls at the bottom-right or center-bottom of tables for intuitive user interaction.

> **Tips:**&#x20;
>
> * Allow page-jump functionality in tables with very large record counts.
> * Combine pagination with search and filter tools to make data navigation faster and more precise.
