For Designer

Components/Navigation

Pagination

Pagination splits a long list or table into pages, and shows people where they are and how much is left

Variants
9
Parts
51
Sizes
3

Playground

Pick a variant, then page through 120 results or change the rows per page

Page Number · Type=01 · Size=Medium · Page 1 of 12

Types

All three keep the page controls on the right. The left side holds what people need next: a rows select, a count, or nothing but the context

Type=01 · Rows per pageTables where people set how many rows they see
Type=02 · Result countLists where the total count matters
Type=03 · Previous and nextFeeds and short lists, previous and next only

Sizes

Match the table or list it controls: Large for full pages, Medium for most tables, Small inside cards and side panels

40Large · 18/24
32Medium · 16/24
24Small · 12/16

States

Numbers and actions are flat until hovered. The current page gets a stroke/soft-200 outline, and actions at either end are disabled

A1Number · Default
B1Number · Hover
C1Number · Select
DNextAction · Default
ENextAction · Hover
FNextAction · Disable

When to use

Use when

  1. A table or list has more items than fit comfortably on one screen
  2. People need to jump to a page or come back to the same place later
  3. The total count helps people judge how much is left

Avoid when

  1. People browse a feed with no end, load more as they scroll
  2. The list is short enough to show in full
  3. People move through steps of one task, use a Stepper

Do and don’t

Do

Disable Previous on the first page and Next on the last, so the ends are clear

123456789
Don’t

Don’t list every page number, keep the first, the last and the ones around the current page

Tokens and specs

PropertyTokenValue
Height—40 / 32 / 24 px
Corner radius—12 / 10 / 8 px, Small action 6 px
Text—Inter Medium 18/24, 16/24, 12/16
Number text, Small—Inter Medium 14/20
Text#171717
Hover#F7F7F7
Current page outline#EBEBEB
Disabled action#A3A3A3
Result count#5C5C5C
Action padding—8 / 12, icon side 10 (Large)
Icon—16 px, 12 px at Small
Gap inside a group4 px
Gap between groups16 px
Rows select100 px wide, sub-300 when open
Rows options—10, 25, 50, 100
Esc