Back to Learn
Pulseaccessibility

Command Elements Have Accessible Names

What This Audit Checks

This audit verifies that elements with role="link", role="button", or role="menuitem" have a discernible accessible name. These are ARIA command roles, and every command must announce itself to assistive technology users.

Why It Matters

A command without a name is a silent button. Screen reader users encounter an unlabeled interactive element and have no way to know what it does, forcing them to guess or skip it entirely.

How to Fix It

  • Add inner text to the element. The simplest accessible name source is visible text content.
  • Use aria-label when the element has no visible text, such as an icon-only button.
  • Use aria-labelledby to reference another element that contains the label text.
<!-- Bad: no accessible name -->
<div role="button">
  <svg><!-- icon --></svg>
</div>

<!-- Good: aria-label provides the name -->
<div role="button" aria-label="Close dialog">
  <svg><!-- icon --></svg>
</div>
  • Prefer native elements. A <button> with text content gets its name automatically.

How Pulse Tracks This

Pulse flags this audit in your Lighthouse accessibility score. When the audit fails, Pulse shows which elements triggered it so you can fix them directly.

Resources