Skip to main content
WCAGrules
Quick navigation

Glossary · Accessibility term

ARIA

Also called: WAI-ARIA, Accessible Rich Internet Applications

ARIA is a set of attributes that tell assistive technology what a custom control is and what state it is in. ARIA 1.2 defines 48 of them, every one named aria-something, plus the role attribute, whose value comes from a vocabulary of 94 roles. Twelve of those roles are abstract and exist only to hold the vocabulary together, so authors must not put them in content and the number you can actually write is 82. It exists for the things plain HTML has no element for, like tab strips, tree views and live announcements. What ARIA cannot do is change behavior. Put a button role on a div and a screen reader announces a button, while pressing Enter still does nothing, because you promised a button and shipped a div. That is W3C's own framing. A role is a promise, and the first thing its authoring guidance says is "No ARIA is better than Bad ARIA".

In practice

Reach for HTML first, because that is where W3C's own rules start. If a native element already carries the semantics and the behavior you need, use it. A real button hands you the role, the focusability, the keyboard activation and the state for nothing, and none of that arrives with a role attribute. The other three rules are short. Do not change native semantics unless you really have to. Keep every interactive ARIA control usable by keyboard. And never put a presentational role or aria-hidden on something focusable.

The guidance moved, which matters if you are citing it. The document that carried those rules was discontinued in February 2026, and W3C now sends readers to its Authoring Practices Guide instead. There are four rules, not the five that get repeated. The guide is also where the widget patterns live, each with the markup, the states and the keyboard behavior expected of it. Copy from there rather than inventing your own and finding out later.

Three places ARIA is genuinely the right answer, and they are worth naming because everything else deserves a second look. Announcing changes that happen without a page reload. Naming controls drawn as icons. Building composite widgets HTML has no element for, like tab strips and tree views. Check the native list before you reach for the third one, because HTML has a select element with combobox semantics and a dialog element, and both are commonly rebuilt by hand for no reason. Outside those, the honest question is whether you are describing something or repairing something you built the hard way.

Why it matters

Bad ARIA is worse than none, because it makes confident false statements to somebody who has no way to check them. A control announced as a checkbox that does not behave like one is harder to deal with than an unlabeled div, since the reader now holds a wrong model instead of no model. The volume is the reason to care. ARIA was present on 82.7% of the top million home pages in 2026, and those pages carried more detected errors than pages without it, 59.1 against 42 on average. WebAIM, who took that measurement, warns against reading it as ARIA causing the errors, because complex pages use more ARIA and have more of everything. What the same study found separately is narrower and harder to explain away. Among the pages using an ARIA menu, 22% of those menus introduced barriers of their own.

A role is a promise

Writing a button role on a div tells every screen reader user that Enter will work, that Space will work, and that the thing takes focus. If you have not written the script making all three true, you have made a promise the page cannot keep. W3C's own comparison is a Place Order button that abandons the order and empties the basket. The announcement was fine. The behavior was the lie.

Where this shows up on the site

Related terms

Knowing the word is the easy part.

Find out where your own site stands. The free scan checks 10 pages in a real browser against all 90 supported automated rules, separates 27 best-practice checks from its WCAG findings, and names the rule behind every result.

Run the free scan

Go somewhere useful

Find tools, resources and your workspace.

29 destinations