Skip to content

Heading text quality

The substantive merit of heading content -- whether headings convey actual information vs being placeholders, generic CMS defaults, or misformatted paragraphs.

Heading text quality is the orthogonal axis to heading hierarchy: a page can have a perfect H1 → H2 → H3 outline (passing structural audits) and still have terrible heading text. Common quality issues:

Placeholder text: CMS / WYSIWYG / template defaults that escaped to production. Common patterns:

  • Untitled, Untitled Page, New Page -- WordPress / Squarespace defaults
  • Heading, Heading 1, H2 -- editor-block placeholders
  • Lorem ipsum dolor sit amet... -- design-stage filler
  • Click here, Read more -- generic link text accidentally used as heading
  • {{title}}, ${heading} -- template-engine leaks (server failed to render)
  • TODO: write heading -- editorial drafts shipped without revision

Length extremes:

  • ≤2 characters: usually emoji, typo, or alignment hack -- not a real heading. Screen readers announce "heading 2" + the single character, conveying nothing.
  • 120 characters: almost always a paragraph that received heading semantics by accident (CMS editor selected the wrong block type). Screen readers will announce "heading" and read the entire paragraph at heading prosody.

All-uppercase styling: when the text itself is uppercase ("WELCOME TO ACME") rather than lowercase styled with text-transform: uppercase, some screen readers read it letter-by-letter ("W-E-L-C-O-M-E"). Style with CSS, not by typing in caps. Short acronyms (≤3 chars: API, FAQ, PDF) are intentional and not flagged.

The BeaverCheck heading-quality analyzer complements AnalyzeHeadings (which covers presence, hierarchy, skips, empty headings) by auditing the textual substance of the headings that ARE present.

Why search engines and screen readers care: heading text is one of the highest-weighted content signals. Search engines use it to understand page structure for snippet generation; screen readers offer "navigate by headings" as a primary navigation mode for visually-impaired users. Placeholder text in headings = pages that read as "Heading 1 -- Untitled. Heading 2 -- Heading. Heading 3 -- Lorem ipsum dolor."

Related terms

Further reading

Send Feedback