Aria Expanded Checker

Paste your page HTML and find menus, accordions and filters missing true/false expanded state or a matching panel id.

What this tool gives you

boolean value audit
aria-controls match
missing expanded
disclosure inventory

Check aria-expanded

Paste your page HTML. Analysis runs locally in your browser — nothing is sent anywhere.

Menus, accordions and filters need aria-expanded="true|false" plus an aria-controls id that exists.

What this checker looks for

WCAG 4.1.2 (Name, Role, Value) fails when a disclosure control never exposes whether it is open.

Boolean values

aria-expanded must be true or false — not yes, 1 or maybe.

Matching targets

aria-controls must point at an id that exists on the page.

Missing expanded

Buttons that already have aria-controls still need expanded state.

Menus and accordions

Nav toggles and FAQ rows are the usual gaps.

Closed is still a state

false is a valid value. Omitting the attribute is not.

0–100 score

Track disclosure bugs across templates, not just the homepage.

How to expose expand/collapse state

Three rules cover almost every broken accordion and nav toggle.

1

Use true or false

aria-expanded must be a boolean. yes, 1 and maybe are ignored by assistive tech.

2

Point at a real id

aria-controls should match the panel id that opens. Invented ids fail silently.

3

Keep it in sync

Flip the attribute when the panel opens. A stuck false is as wrong as a missing attribute.

Why answer engines care about disclosure state

Open/closed state is a cheap-to-parse signal that the page has real interactive structure, not fake dropdowns.

SignalWhat engines inferWhy it helps
Boolean expandedMenus actually open and close.Extractors can tell primary nav from collapsed chrome.
Matching panel idsThe control owns a real region.Crawlers follow the disclosure instead of a dead button.
FAQ accordionsAnswers are in structured panels.Citation-ready Q&A without a fake “click to expand”.
WCAG 4.1.2 passState is exposed to AT.Citable, trustworthy pages get quoted more often.
Keyboard-friendlyUsers can act on every toggle.Engagement quality feeds crawl and ranking models.

Related GEO pages

Disclosure state pairs with named buttons and named dialogs so interactive chrome is actually usable.

Aria-expanded FAQs

Why does aria-expanded have to be true or false?

WCAG 4.1.2 (Name, Role, Value) requires the current state of a disclosure to be programmatically available. Values like yes, 1 or maybe are ignored. Screen readers announce “collapsed” or “expanded” only for true/false.

Do I still need aria-controls?

Yes when the panel is a sibling, not nested. Point aria-controls at the panel id so AT can jump to the content that just opened. A missing or invented id is a silent fail.

Is a details/summary enough without aria-expanded?

Native <details> exposes open state on its own. Custom buttons, nav toggles and accordion headers still need aria-expanded kept in sync when the panel opens and closes.