***This document provides helpful tips to improve your site's accessibility. While it doesn’t guarantee 100% compliance, it’s a great starting point to make your website more inclusive and user-friendly.***
Identification
ARIA progressbar elements must have an accessible name (Rule ID: aria-progressbar-name)
Applicable Standards
WCAG 2.0, 2.1, 2.2 Level A (1.1.1)
EN 301 549
Deque Best Practice
Impact
Serious level impact affecting:
Blind users
Low vision users
Users with mobility impairments
Proper Implementation
Provide descriptive accessible names for progressbar elements
Use one of these methods:
aria-label attribute with non-empty value
aria-labelledby referencing an element with visible text
title attribute with descriptive text
Ensure labels clearly describe the progress indicator's purpose
Examples of Correct Usage
Using
aria-labelfor an Accessible Name:
Thearia-labelclearly describes the purpose of the progress bar ("File upload in progress"), ensuring it is announced by screen readers.
Using
aria-labelledbyto Reference Visible Text:
Thearia-labelledbyattribute references the visible text ("Downloading updates..."), providing a clear accessible name for the progress bar.
Using the
titleAttribute for a Simple Name:
Thetitleattribute provides a descriptive name ("Processing payment") for the progress bar, which is announced by screen readers.
Including Both Purpose and Status:
Thearia-labelincludes both the purpose ("Loading dashboard") and the current status ("60%"), giving users complete context.
Using
aria-valuetextfor Custom Status Text:
Thearia-valuetextprovides a custom status message ("Nearly halfway done") that screen readers announce instead of the default numeric value.
Common Errors to Avoid
Missing Accessible Name:
Without anaria-label,aria-labelledby, ortitle, theprogressbarlacks an accessible name, leaving screen reader users unaware of its purpose.
Non-Descriptive Name:
Thearia-label("Progress") is too vague and does not provide meaningful context about the progress bar's purpose.
Visible Label Without ARIA Reference:
The visible label ("Uploading files...") is not connected to theprogressbarviaaria-labelledby, so screen readers cannot associate the label with the progress bar.
Incorrect Use of
aria-valuetext:The aria-valuetext ("80%") repeats the numeric value already provided by aria-valuenow, offering no additional value to screen reader users.
Using
role="progressbar"for Non-Progress Indicators:
Theprogressbarrole is misused for a static indicator ("Complete"). This role should only be applied to elements showing dynamic progress.
Rationale
Enables screen reader users to understand the progress indicator
Provides context for progress values
Essential for monitoring task completion
Ensures users understand what is being measured
Critical for task progress comprehension
Evaluation Method
Inspect the Code
Check that:
Each
progressbarelement has a descriptive accessible name viaaria-label,aria-labelledby, ortitle.The purpose and status of the progress bar are clear.
aria-valuemin,aria-valuemax, andaria-valuenoware used appropriately.
Test with Assistive Technology
Use a screen reader (e.g., NVDA, JAWS, or VoiceOver) to confirm:
The progress bar's purpose and current status are announced clearly.
Custom status messages (
aria-valuetext) are read as intended.
Evaluation Checklist

