How to fix empty table header on Squarespace
Add descriptive text to every table header cell (`<th>`) so that screen readers can announce what each column or row represents.
Steps for Squarespace
- In the Squarespace editor, tables are inserted as Content Blocks. Click on the table block to edit it and ensure every header row cell contains descriptive text — Squarespace renders the first row as `<th>` elements when 'Header Row' is enabled.
- If a column intentionally has a blank header for visual reasons, you must inject a fix via a Code Block or Custom CSS: go to Pages → the relevant page → add a Code Block near the table with a `<script>` that adds `aria-label` attributes to the empty `<th>` elements on page load, OR use Settings → Advanced → Code Injection to apply site-wide JavaScript.
- For custom code areas (Developer mode / Custom Code): go to Settings → Developer Tools (if on a Developer plan) or Settings → Advanced → Code Injection, and add JavaScript that targets empty `<th>` elements and assigns them `aria-label` values.
- Re-test with WAVE or axe DevTools after publishing changes.
<th scope="col">Price (USD)</th>
<!-- Visually hidden label for a decorative/spacer corner cell -->
<th scope="col" aria-label="Product thumbnail"></th>
<!-- Icon-only header with aria-label -->
<th scope="col" aria-label="Add to cart"></th>What is empty table header?
A table header cell (`<th>`) is the label that sits at the top of a column or the start of a row in an HTML table — it tells everyone what kind of data that column or row contains (e.g., "Product Name," "Price," "Quantity"). An "empty table header" means one or more of those label cells exists in your page's code but contains no readable text. The cell may look fine visually (perhaps it's a decorative spacer or uses an icon), but it has nothing for a screen reader to announce. Screen readers rely on header text to describe a table's structure, so when a header is blank, users who are blind or have low vision lose the context they need to understand the data.
**Accessibility & legal risk:** Empty table headers violate WCAG 2.1 Success Criterion 1.3.1 (Info and Relationships), which is the benchmark used in accessibility lawsuits and regulatory audits (ADA, EN 301 549, EAA 2025). A single empty header in a product-comparison or pricing table can make that entire table unusable for customers who rely on assistive technology — costing you sales and exposing you to legal liability. **SEO:** Search engines also use table structure to understand tabular content; properly labelled headers improve the semantic clarity of your pages, which can contribute to better crawlability and richer structured understanding of your data. **Conversions:** Accessible, well-labelled product or size tables are easier for all customers to scan, reducing the friction that causes shoppers to abandon a purchase.
See the complete Empty table header guide for every platform and the full background.
Not sure if your Squarespace store has this?
Run a free SEOLZ audit — we’ll find empty table header and every other issue across your whole site.
Scan my site free