---
title: aria-roledescription Usage | Accessibility Rule
description: aria-roledescription must be on elements with a semantic role
source_url:
  html: https://testingbot.com/support/accessibility/web/rules/aria-roledescription
  md: https://testingbot.com/support/accessibility/web/rules/aria-roledescription/index.md
---
# Ensure aria-roledescription is only used on elements with an implicit or explicit role

Rule ID: aria-roledescriptionUser Impact: seriousGuidelines: Deprecated

The `aria-roledescription` attribute allows authors to override or refine the accessible description of an element’s role. This rule ensures it is only used on elements that have a valid, implicit, or explicit ARIA role.

## What is being tested?

The test checks if `aria-roledescription` is applied only to elements that already have a valid `role`—either explicitly set or implicitly provided by the HTML element.

## Why it matters

Using `aria-roledescription` incorrectly (for example, on elements with no role) can confuse assistive technologies like screen readers, causing misleading or broken announcements. This can negatively impact the user experience for people relying on accessibility tools.

## How to fix the problem

- Use `aria-roledescription` only on elements with a valid ARIA role.
- Check if the element has an implicit role (for example, `<button>` has `role="button"`).
- If adding `aria-roledescription` to a generic element (like `<div>`), first assign an explicit role (like `role="combobox"`).

## Examples

### ✅ Passing examples

    <img aria-roledescription="my img" src="foo.png" />
    <button aria-roledescription="my button">button</button>
    <div role="combobox" aria-roledescription="my combobox"></div>

### ❌ Failing examples

    <p aria-roledescription="my paragraph">paragraph</p>
    <div aria-roledescription="my div">div</div>

### ⚠️ Incomplete examples

    <h1 aria-roledescription="my heading">heading</h1>
    <div role="rowgroup" aria-roledescription="my row"></div>

## Best practices

- Refer to the [ARIA in HTML conformance requirements](https://www.w3.org/TR/html-aria/#docconformance) to know which roles and attributes are valid for each element.
- Do not use `aria-roledescription` as a replacement for proper ARIA roles or native HTML semantics.

## Other Rules

Interested in other web accessibility rules? Please see these other rules:

- [audio-caption](https://testingbot.com/support/accessibility/web/rules/audio-caption)
- [duplicate-id-active](https://testingbot.com/support/accessibility/web/rules/duplicate-id-active)
- [duplicate-id](https://testingbot.com/support/accessibility/web/rules/duplicate-id)
