This component is highly customizable. There are many types of information you can show in our data table component, as shown in the following examples. All table columns are sortable, except for the actions column.

While the number of columns is not fixed, the amount of columns should not be so high as to interfere with the user’s ability to read the table. The user cannot edit in-line within a table due to accessibility concerns.

Variations

Standard table

This is our standard table. It can contain static information or a link and static information. It can have a footer or not, depending on the amount of data in the table.

This is an example of a standard table.
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with selectable rows

Adding a checkbox to each row will allow the user to select and deselect rows.

This is an example of a table with selectable rows.
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with actions

The user can perform individual actions each table row. These actions appear in the last column to the right. If there are more than two actions, these actions should appear in a dropdown (see the next example).

This is an example of a table with actions.
Actions
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with action dropdown

If there are more than two actions (see the preceding example), these options should appear in a dropdown represented by an icon. In this case, the action column should not have a header.

This is an example of a table with an actions dropdown.
Actions
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with an icon column

Boolean information can be represented as an icon. The icons that are most often used are checkmarks and warning icons. These icon columns should only be used for simple yes / no, true / false options. These icons must always be accompanied with an aria label.

This is an example of a table with icons.
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with a status column

If all objects are assigned statuses, these statuses should be shown in the table. Indicators accompany status text to help with scannability. Status indicators must always have a label. See the icons page for more information around status indicators.

This is an example of a table with statuses.
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell Warning
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell In Progress

Table with expandable rows

Table rows can expand to reveal more information relating to the open row. Information can appear in columns or in multi-line strings. The information shown should be necessary to help the user make an action or decision on the page.

This is an example of a table with expandable rows.
Expand/Collapse
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with expandable and selectable rows

Table rows can be expandable and selectable.

This is an example of a table with expandable and selectable rows.
Expand/Collapse
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell

Table with a link column

The link column most commonly appears as the first column, as the object or row identifier. The link takes the user into the object to view or edit. Tables can have multiple link columns. This is generally used if the object or row contains information that lives in different places.

This is an example of a table with links.
Standard Table CellStandard Table CellStandard Table CellStandard Table CellLink Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table CellLink Table Cell

Table with filters

Table filters allow the user to view subsets of a larger data set. Table filters vary from product to product, and depend on the filterable data set. They appear below the page header and above the table. Please see table filters for more information.

Table with footer

Most of our tables have footers attached. The footer allows the user to go through multiple pages of data and choose how many rows they want to see per page. The footer can also contain a column selector and/or a display density selector. The user can select which columns to display through the column selector, and, if applicable, at which density they want to view the data. Pagination is required when using the table footer.

This is an example of a table with a footer.
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
Standard Table CellStandard Table CellStandard Table CellStandard Table Cell
16 result(s)
10 rows

Configurations

The page title is the only required element in a landing page header. All elements in the table below are optional.

Table optional elements and descriptions
ElementPurposeNotes
PaginationNavigates the user to other pages of data of the same tableUse when the table has more than ten rows of data
Column selectorAllows the user to show and hide columns from the table
Display densityNavigates the user to a page or opens a modal where the user can create a new object
LinkNavigates the user to another page related to that row’s informationUse when the user needs to see more information about a row or an object
Multi-select checkboxesAllows the user to select an entire rowUse when the user should be able to perform bulk actions on selected rows
One to two actionsAllows the user to take individual actions on one row at a timeUse when the user should be able to take one or two actions on an individual row
More than two actionsAllows the user to take individual actions on one row at a timeUse when the user should be able to take more than two actions on an individual row
Icon columnRepresents boolean information with iconsUse when there is boolean information that would better be represented by icons
Status columnShows the status of each row or objectUse when every row or object within the table has a status