Tables in the content

When you want to show information in a structured way, a table made up of rows and columns is a clear way to present your data. How do you do this so that everyone understands the information?

Important to make the data understandable for users that rely on assistive technology like a screen reader:

  • Make sure you use a real HTML table and not, for example, spaces or other dividers to separate the data.
  • Use table headers to describe the columns and rows.
  • If possible, give the table a caption to describe the purpose of the table. If that is not possible, add a heading just above the table with a heading level that fits within the heading structure of the page.

How to create tables in frontend development is addressed in the “Frontend code” section Tables in code.

The cities of WordCamp Europe
Year City Country
2026 Kraków Poland
2025 Basel Switzerland
2024 Turin Italy

Entering the table, the caption is announced, then the table headers, and then with each cell the header is repeated with the cel data. In the table above “The cities of WordCamp Europe” is the caption. “Year”, “City”, and “Country” are the table headers.

When designing the structure of a table, keep in mind: when a complex table is hard to make accessible, it’s probably also hard to understand for every reader. It’s sometimes best to split up a complex table into multiple tables or use a different structure, such as unordered lists. Try to display the data as simply as possible, always keeping your reader in mind.

Warning: Using a table only for layout and not for displaying data makes the content hard to understand for screen reader users. It is actually a WCAG violation to use a table for layout only. See WCAG 1.3.1 Info and Relationships.

The table block in WordPress Admin

With the default Table block you can create simple accessible tables. This example is created with WordPress 7.1.

Step 1. When editing or adding a post, search for the table block and select it. Search for the table block

Step 2. Select how many columns and rows you want in the table and add the table to the content.

Step 3. Give the table a sort heading that describes the purpose of the table.

Step 4. Select the table block and select with the options: Header section. Check the Header section

Step 5. Fill in the table headers and the cells.

Step 6. Save the post and check the table on the webpage SCreenshot of the table in the web page

Read Table block in the WordPress documentation for more information about how to use the Table block in the Admin read.

These are the current options to create an accessible table in the WordPress Admin. If you want more, try out one of the plugins that can add more features to the table block, like row headers and captions. Before using a plugin, make sure it creates accessible tables in the website. You can test this by using a test tool like the WAVE Browser Extension on the webpage with the table.

Work is currently underway to improve and enhance the table block in the WordPress Admin. You can follow this in the GitHub issues labeled Block Table. There are plans for expanding the capabilities of the table block, assistance is welcome in making this happen.

Resources

Other resources

  • First published: September 08, 2026
  • Last updated: September 10, 2026
  • Edit article: Improve it on GitHub
  • Contributors: Rian Rietveld, Joe Dolson.