Inferensys

Glossary

Accessible Name

The programmatically determined, human-readable label for a UI element calculated by the browser's name computation algorithm, serving as the primary identifier used by assistive technologies and AI agents.
Developer demonstrating multi-agent tool use, agent tool selection interface on laptop, casual tech demo moment.
PROGRAMMATIC IDENTITY

What is Accessible Name?

The accessible name is the programmatically determined, human-readable label for a UI element calculated by the browser's name computation algorithm, serving as the primary identifier used by assistive technologies and AI agents.

An accessible name is the definitive text string that the browser assigns to an interactive element through a standardized computation algorithm, which assistive technologies and AI parsers rely upon to identify the element's purpose. This name is derived from content sources such as an element's text content, aria-label, aria-labelledby, or associated <label> elements, following a strict precedence order defined by the WAI-ARIA specification.

When an AI agent or screen reader encounters a button, link, or form field, it queries the accessibility tree—a parallel structure to the DOM—and retrieves the accessible name as the primary descriptor. Without a properly computed accessible name, an element becomes an anonymous, unidentifiable node, rendering it invisible to both assistive technology users and automated AI content extraction systems.

Core Properties

Key Characteristics of an Accessible Name

An accessible name is not merely a visible label; it is a programmatically determined string calculated by the browser's name computation algorithm. The following characteristics define its behavior and reliability for assistive technologies and AI agents.

01

Programmatic Determinism

The accessible name is derived algorithmically, not by visual heuristics. The browser computes it by walking a strict precedence order: aria-labelledbyaria-label → native HTML labeling (e.g., <label> wrapping) → title attribute → placeholder text. This ensures AI parsers and screen readers receive a consistent, machine-readable identifier regardless of CSS styling or visual layout.

02

Computation Precedence

The Accessible Name and Description Computation algorithm defines a strict hierarchy. If multiple sources exist, the highest-priority source wins, and lower-priority sources are ignored entirely.

  • 1st: aria-labelledby (references other element IDs)
  • 2nd: aria-label (direct string attribute)
  • 3rd: Native host language labeling (e.g., <label for='id'>)
  • 4th: title attribute (fallback only)
  • 5th: Placeholder text (weakest, not recommended as sole name)
03

Concise and Functional

An accessible name should convey the purpose of the control, not its current state or descriptive metadata. For interactive elements, it typically answers 'What will happen if I activate this?'

  • Good: 'Submit application'
  • Bad: 'Blue rounded button with shadow'
  • Good: 'Close dialog'
  • Bad: 'X icon' (unless purely decorative and hidden from accessibility tree)
04

Flat String Output

The computation algorithm flattens all referenced content into a single, plain text string. Nested semantics are stripped: if aria-labelledby points to a <div> containing a <strong> element, the bold formatting is lost. The algorithm concatenates text nodes in depth-first DOM order, ignoring CSS display: none and visibility: hidden content, but including off-screen text positioned via CSS tricks.

05

Language and Internationalization

The accessible name inherits the language of the element or its nearest ancestor with a lang attribute. This is critical for screen reader pronunciation. An English button labeled 'Paris' inside a French lang='fr' container will be pronounced with French phonetics. AI agents use this language signal to correctly disambiguate named entities in multilingual documents.

06

Role-Specific Requirements

Certain ARIA roles require an accessible name for the element to be valid in the accessibility tree. Without one, the element is effectively hidden from assistive technology.

  • Require name: button, link, checkbox, textbox, combobox, dialog
  • Do not require name: group, presentation, none
  • Conditional: region (requires name only if not a landmark)
PROGRAMMATIC IDENTIFIER COMPARISON

Accessible Name vs. Visual Label vs. DOM Text Content

Distinguishing between the three primary text sources a browser uses to identify UI elements for assistive technologies and AI agents.

FeatureAccessible NameVisual LabelDOM Text Content

Primary Consumer

Assistive technologies & AI agents

Sighted human users

Browser parser & scripts

Computation Source

Browser's accessible name algorithm

CSS-rendered text node or image

textContent property of DOM node

Overridden by aria-label

Overridden by aria-labelledby

Includes CSS ::before/::after content

Exposed in Accessibility Tree

Visible on screen

Affected by display:none

ACCESSIBLE NAME CLARIFIED

Frequently Asked Questions

Precise answers to the most common technical questions about the browser's accessible name computation algorithm and its critical role in AI-driven content interpretation.

An accessible name is the programmatically determined, human-readable label for a user interface element calculated by the browser's accessible name computation algorithm. This string serves as the primary identifier exposed to assistive technologies like screen readers and, critically, to AI agents parsing the accessibility tree. The algorithm follows a strict precedence order defined by the W3C: it first checks for aria-labelledby, which points to one or more element IDs whose text content is concatenated. If absent, it checks aria-label. Next, it looks for native HTML labeling mechanisms—such as the <label> element associated with an <input> via a for/id pairing, or the text content inside a <button>. Finally, it falls back to the title attribute or placeholder text. Understanding this cascade is essential for semantic HTML authoring, as the computed name is what an AI model uses to understand the function of a control, not the visual presentation.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.