Glossary · Code

Live region

Definition: A live region is an area of a page whose changes a screen reader announces on its own, even when focus is somewhere else. It is marked with aria-live or a role such as status or alert. This is how status messages meet WCAG success criterion 4.1.3 [1][2].

German: Live-Region · Also: aria-live · Last reviewed: 27 September 2026

Why you need one

Sighted people notice when something changes on the page: "Added to basket", "12 results found", "Saved". A screen reader only reads where focus is. Without a live region, a blind person misses the message – and cannot tell whether their click did anything.

The alternative would be to move focus to the message, but that pulls people away from what they were doing. WCAG 4.1.3 therefore requires status messages to be announced without moving focus [1].

The main variants

The main variants
MarkupEffectExample
role="status" (same as aria-live="polite")announced when the screen reader has finished speaking"3 items in your basket"
role="alert" (same as aria-live="assertive")interrupts immediately"Your session ends in 1 minute"
aria-live="off"not announceddefault

alert is for urgent things. Mark every detail as an alert and you interrupt people constantly.

Common mistakes

  • Inserting the region together with the message. Many screen readers only notice changes in a region that was already in the DOM. Create the empty container on load and fill it later.
  • Too much in one region: make a whole results list live and all of it gets read out.
  • Error messages shown only in colour, with nothing announced.
  • Messages that vanish after two seconds, before anyone can read them.

In code

<!-- Present on load, empty at first -->
<p role="status" id="cart-status"></p>
// After adding the item, set the text only
const status =
  document.getElementById('cart-status')
status.textContent = '3 items in your basket'

How to test it

Turn on a screen reader such as NVDA or VoiceOver. Trigger every status message: apply a filter, add to basket, submit a form. Is the message announced without you moving focus?

How Reviseberg handles it

Whether a message is announced can only be checked with a screen reader running. WCAG 4.1.3 is therefore one of the criteria Reviseberg does not test automatically: it stays "untested" until a person records a result and the method they used. A guided test sets out the procedure step by step. A screen reader agent is not part of Reviseberg today.

Screen reader · ARIA · Accessibility tree · Form label · Manual accessibility testing

Further reading

Frequently asked questions

What is the difference between polite and assertive?

polite waits until the screen reader has finished its current sentence. assertive interrupts at once and is meant for urgent messages.

Does every change on the page need to be live?

No, only status messages: results, success, progress, errors. When the context changes fundamentally, such as a dialog opening, focus should move there instead.

Why is my message not announced?

Usually the region was inserted together with its text. Create it empty on load and change only its content.

Sources

  1. W3C, WCAG 2.2, Success Criterion 4.1.3 Status Messages – https://www.w3.org/TR/WCAG22/#status-messages
  2. W3C, WAI-ARIA 1.2, aria-live – https://www.w3.org/TR/wai-aria-1.2/#aria-live
  3. MDN, ARIA live regions – https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/ARIA_Live_Regions

See what a scan finds on your site

One page in about thirty seconds, no email needed. The full report covers up to 100 pages and a keyboard journey.