Skip to content

Accessibility and Inclusive Content

Heading Structure Audit

Verify that page headings expose a meaningful hierarchy, label sections accurately, support navigation, and match visual relationships in the content.

Free editable Markdown · Accessibility testers, editors, and web teams ·

Download Markdown

Accessible HTML preview

Blank template

The downloaded file contains the same fields in editable Markdown.

Page outline

Page URL and version
[Location/build]
Primary page subject
[One sentence]
Application shell heading
[If relevant]
Heading order source
[DOM inspection/tool/manual]
Assistive technology tested
[Name/version or Not tested]
Viewport/state
[Desktop, mobile, expanded, logged in]
Audit owner and date
[Name; YYYY-MM-DD]

Heading record

Sequence
[1, 2, 3]
Visible text
[Exact heading]
Semantic level
[H1–H6 or none]
Visual role
[Page title, section, subsection, card, decorative]
Content governed
[What follows]
Parent heading
[Expected relationship]
Issue
[Missing, vague, duplicate, wrong level, order, hidden]
Revision
[Text, level, component, or removal]

Audit checks

  • Main page subject is exposed as a meaningful heading.
  • Visual and semantic hierarchies describe the same relationships.
  • Heading levels represent nesting rather than font size.
  • Labels remain useful in a headings-only list.
  • Decorative text is not announced as a heading.
  • Dynamic components preserve logical order and state.
  • Keyboard and assistive navigation were tested where available.
  • Shared-component defects have regression coverage and ownership.

How to use this template

  1. Capture the page purpose and extract every semantic heading in rendered DOM order.
  2. Compare visual hierarchy, reading order, heading levels, and associated sections.
  3. Review heading wording for specificity, uniqueness, and meaning out of context.
  4. Test navigation with keyboard and relevant assistive technology, including dynamic components.
  5. Fix page and component issues, then retest and assign regression ownership.

Extract the actual outline

List headings in DOM order with their level, visible text, component, and associated content. Compare this sequence with what a sighted reader perceives. A large styled sentence is not a heading unless marked semantically, while a semantic heading should label a section rather than serve as decorative typography. Identify the page's main subject and whether the heading structure begins at a sensible level for the application shell. Evaluate embedded widgets and repeated cards as part of the complete document.

Test labels and nesting

Read only the headings and ask whether the page purpose, major sections, and relationships remain understandable. Replace vague labels such as “More,” “Details,” or repeated “Learn more” headings with specific section names. Heading levels should represent hierarchy, not font size; a subsection belongs beneath its parent even if design calls for smaller styling. Avoid skipping levels when it obscures relationships, but do not invent empty headings solely to create a perfect numeric sequence.

Verify navigation in context

Use keyboard and assistive technology to navigate headings, checking announced text, order, hidden duplicates, and dynamic updates. Ensure modal, accordion, tab, and single-page application behavior exposes meaningful structure without cluttering the outline with inaccessible or collapsed content unexpectedly. After editing, review visual styles separately so semantic levels do not dictate undesirable design. Add regression checks to shared components when one defect affects many pages.

See the fields in context

Fictional example: gardening course page

Moss School is an invented site and the outlined defects are illustrative.

  • Finding: Every fictional course card uses an H2, while the card group itself has no heading and follows another H3.
  • Reader impact: The headings-only list makes each course appear unrelated to the “Autumn courses” section.
  • Revision: Add an H2 “Autumn gardening courses” and mark course titles H3 within the list.
  • Styling decision: Preserve existing card title size through CSS rather than choosing levels for appearance.
  • Retest: DOM outline, keyboard route, and screen-reader headings list now communicate the group relationship.

Frequently asked questions

Must every page have exactly one H1?

Use a clear main page heading and follow the conventions appropriate to your framework and document. The essential goal is an understandable, consistent hierarchy.

Is skipping a heading level always a failure?

It can obscure hierarchy and should be reviewed. Judge the actual relationship and applicable accessibility requirements rather than adding meaningless headings.

Can headings be visually hidden?

Sometimes a meaningful heading can support structure without a visual label, but hidden content must use an accessible technique and should be justified by the design.

Should card titles be headings?

Use headings when cards represent sections or navigable items in the content hierarchy. Do not mark every prominent label as a heading automatically.

File details

File name
heading-structure-audit.md
Format
Markdown (.md)
Size
2 KB
Designed for
Accessibility testers, editors, and web teams

Usage note: Audit the rendered page and its semantic heading outline, not bold styling alone. Headings support navigation for many readers, including people using screen-reader shortcuts. This worksheet focuses on content structure and cannot replace a complete accessibility evaluation, automated and manual technical testing, or conformance review against the standard applicable to your product.