ARIA Label Spot-Checker
A quick spot-check of common ARIA mistakes, not a full accessibility audit. Your HTML is analyzed in your browser only and never rendered.
How it works
仕組みA quick spot-check for the ARIA mistakes that appear in almost every codebase. Paste some HTML and it hunts for broken aria-labelledby references, buttons and links with no accessible name, aria-label sitting on plain divs where screen readers ignore it, aria-hidden="true" on elements a keyboard can still reach, misspelled or invalid role values, and redundant roles that native HTML already provides. It’s deliberately a spot-checker, not a full WCAG audit; think of it as a sharp chisel for the most common cuts. Your HTML is parsed in-browser only and never rendered or uploaded.
Generic elements have no ARIA role, so most screen readers have no reason to announce a name for them and simply skip the label. Give the element a suitable role (or use a semantic tag like <nav> or <button>) and the label starts working. Better yet, label the actual control inside it.
The element stays in the keyboard tab order, but screen readers announce nothing when focus lands on it, so the user hits a silent dead spot and can’t tell what they’re on. Either remove aria-hidden, or take the element out of the tab order too with tabindex="-1" or the disabled attribute.
Not functionally: assistive tech behaves the same either way, which is why this tool marks it as info rather than an error. It’s still worth removing: it adds noise, invites drift if the element changes later, and usually signals markup copied from a div-based pattern. The first rule of ARIA is to prefer native HTML.