Skip to content

Comparison / pricing page lacks semantic <table> with <th scope> headers

A semantic table is one built with actual HTML <table> tags and correctly labelled column and row headers (<th scope>), rather than a grid of styled <div> boxes that only looks like a table visually. This check found a comparison or pricing page on your site using the div-grid approach instead of a real table.

Why this matters

Tools that extract data from pages can generally read a genuine HTML table more reliably than a div-based layout that only looks like a table. If your pricing or comparison data sits in divs, some tools may not be able to recover its rows and columns correctly when asked to compare your plans or products.

How to fix it

Your developer needs about 2-4 hours per page. Convert the div-based pricing or comparison grid into a real <table>, using <thead> for the header row and <th scope='col'> for column headers or <th scope='row'> for row headers. Visual styling with CSS is unaffected, since semantic structure and design aren't in conflict.

Turn website findings into an action plan

Create an account to start a Full Audit of your website, with supporting evidence and a prioritised action plan.

Start Full Audit