Functional design for tables

Good table design means that your information will be communicated quickly and accurately. By carefully designing the components of a table, you can ensure that the table is easy to understand both textually and visually.

This section covers guidance to:

Consider the data when structuring a table

When deciding how to arrange content in a table, consider:

  • the amount of data
  • the number of categories and number of sets of quantitative values
  • the number of characters in each data cell for each category
  • sequences and relationships in the data
  • subsets or groupings within the data.

Tables can be structured in 2 main ways (see tables below):

  • unidirectionally – categories are arranged in 1 direction, either across the columns or down the rows
  • bidirectionally – categories are arranged in 2 directions, both across the columns and down the rows: 

Unidirectional table with categories (cities) listed across the columns

Unidirectional table with categories (cities) listed down the rows

Bidirectional table with categories listed across the columns (gender) and down the rows (cities)

The categories themselves become the column or row headings.

When you are dealing with smaller tables (few categories and a small amount of data), there is more flexibility to arrange the data either way, although it is more conventional to arrange categories as column headings and list the data down the columns. If you have a large amount of data in each category, this may be your only option, because the table is then more likely to fit on a conventional page or screen.

Caution! Do not force a table with only a couple of columns to span an unnecessary width – this affects readability.

If you have a large number of categories but a small dataset for each, it may be best to arrange the categories as row headings and list the data across the table (see Use sequences to order your data).

If the data cells for some of your categories contain lengthy text, you may be better off restructuring the table by transposing the row and column headings. Then only some columns need to be wide, and text content will be easier to read, with a more appropriate column width: 

Poor arrangement of data, resulting in narrow, difficult-to-read text columns 

 Considered arrangement of data, allowing column widths to be adjusted to suit the cell contents

Another issue to take into account is which orientation will ensure that comparable sets of data appear close to each another. Also, screen readers will read a table from left to right across each row (see Making tables accessible), so consider how this will work with your data layout.

Return to top

Use sequences to order your data

Identify whether your dataset can be arranged into a hierarchical or meaningful order. Examples of meaningful order include chronological (time series), sequential (steps or advances), alphabetical, by rank or importance or significance, and by value (smallest to largest or vice versa).

If some data are derived from other data, the subordinate data should follow (either to the right of, or below) the data from which they were derived. Keep the order the same across a series of related tables.

Some hierarchical or sequential arrangements have associated display conventions. For instance, time series are best displayed horizontally (time advancing across columns), whereas rankings are best displayed vertically (most important in the top row to least important at the bottom). 

Return to top

Use groups and breaks to focus attention

Grouping parts of your table into smaller chunks or subsets of data can help to direct readers to analyse certain parts of the data in isolation. Breaking a table up can also be necessary because of page or screen limitations. When grouping or breaking up tables, it is important to do so logically, and with good design practices in mind:

  • Visually group or separate parts of the table using white space, and minimal lines or shading (eg use a light rule under the last row of a group but no separating lines within the grouped rows).
  • Repeat column headers at the start of each new page for a long table.
  • Do not use heading rows that span the table – restructure these either as a new left column or break the table into smaller tables (see Making tables accessible regarding use of subheadings).
  • Do not vary the structure of the table from group to group (eg using a different quantitative dataset or units partway down a column) – if this seems necessary, they should be separate tables.
  • If you want readers to analyse a group of data in isolation, consider putting it in a separate table. 
Return to top

Use clear column headings

The following principles are recommended, illustrated in the tables below:

  • Include column headings for all columns, even if it seems obvious to you or the heading is generic, such as Item or Characteristic.
  • Left-align the heading in the left-hand column (above the stub).
  • For columns of numerical data, centre the headings above the columns of numbers. For columns of text data, left-align the headings.
  • Align column headings to the bottom of the cell.
  • Keep column headings brief, and use sentence case (initial capital only for the first word and proper nouns).
  • Use only 1 level of headings, if possible, and not more than 2; if you have more than 2 heading levels, consider restructuring the table.
  • Separate headings from subheadings by a rule (cell border).
  • All text should be horizontal, where possible. If necessary, you can make it oblique (rotated 90°), but never vertical (ie with letters the right way up but stacked underneath each other) (see the tables below).
  • Include the unit of measure in parentheses at the end of the column heading (unless it is the same for all results columns, in which case it can appear in the title). Use unit multipliers as appropriate (see Large numbers), and make sure these are used consistently across similar tables.

Table column headings

Table column headings rotated – the 2 columns on the far right demonstrate how not to do it

Return to top

Visually define columns and rows

White space is the least distracting means of visually separating columns and rows. In other words, lines may not be needed – your eye automatically sees the structure, without the need to add any distracting and superfluous elements. This allows the eye to concentrate on the data and browse easily from item to item.

Garish, high-contrast ‘zebra’ striping of tables and heavy gridlines are more likely to deter readers than improve ease of reading. Therefore, rules (gridlines), shading and other dividers or guides should be minimised. Vertical rules at the edges of a table to separate the first or final column from adjacent empty space are unnecessary.

However, if your table is very large or complex, so that some data cells are a distance from the table headers, consider using subtle lines or shading to help guide the eye. In these cases, dividers or guides should run in only 1 direction, either dividing rows or dividing columns, not both (this would form a grid). The guides should run in the most logical direction to link cell data in the appropriate related information string, generally horizontally.

If your table is structured bidirectionally, the guides should run horizontally, because this is the predominant reading direction.

Rather than applying rules or shading to the entire body of a table, consider using these features to group or highlight subsets of data, such as summary rows. If alternate shading of rows is necessary, keep the shading subtle (pale) and low contrast (eg white alternating with a 10% tint of your chosen colour). Text can also be emphasised or highlighted by applying bold or italics to selected cells, such as totals; keep all body text in a single colour.

Although spacing is often enough to visually group or separate data, do not insert blank rows or columns to achieve that spacing – instead, use cell margins and good formatting to ensure sufficient space between data.

Return to top

Try to fit the table on a page

If a table can fit on a single page, do not allow it to break across pages – move it to the next page to keep it whole.

For a large or complex table that breaks across pages, try restructuring the table by transposing the rows and columns or breaking the table into multiple smaller tables (see examples below). Alternatively, or for larger datasets, it may be necessary to:

  • insert a landscape-oriented page, placing the table (with table name and any notes) on this page and continuing the text flow on the next portrait page
  • rotate the table (with table name and any notes) by 90° (anticlockwise) so that it sits sideways on a portrait page
  • span the table across a 2-page spread – it may be necessary to repeat the stub on the second page or add line numbers to both the left and right ends of each row to ensure that readers can follow the data across the page break or gutter
  • insert a larger page.

Inserting a landscape-oriented page in a portrait-oriented document

Rotating a table on the page

Spanning a table across a 2-page spread

If your dataset is so large that it requires any of these options, consider how this will affect the reading flow, pagination and print production of the document. For example, readers may display an online PDF in single-page view, which would make a spanned table difficult to view and comprehend; inserting a larger page that needs folding is likely to increase the cost of print production. Consider placing a large table at the end of the document as an appendix, or even providing tables as a separate document. Also consider whether the data could be presented as a graph or other figure type, with a reference to the table or data source.

Return to top

User login

... or purchase now

An individual subscription is only A$60 per year

Group and student discounts may apply

Australian manual of scientific style Start communicating effectively