Skip to main content
WCAGrules
Quick navigation

Glossary · Accessibility term

Voice control

Also called: Speech input, Dragon, Voice Access

Voice control means operating a computer by speaking, saying things like "click Submit" or "scroll down", and it is built into macOS, iOS, Windows and Android. It works by matching what you say against the labels you can see, which is why WCAG requires a control's accessible name to contain the text printed on it. Note that word. Contain, not match. A button reading "Search" whose accessible name is "Search for a value" conforms perfectly well. A button reading "Send" whose name is "submit-form" does not, and saying "click Send" is then unlikely to reach it, which leaves the user hunting for a slower route. The audience is wider than people who cannot use their hands. Pain, fatigue and being able to type only for short stretches all bring people here, and plenty of them use voice alongside a keyboard rather than instead of one.

In practice

The mechanism is worth knowing, because it explains why good intentions break this. Both aria-label and aria-labelledby take precedence when a browser works out an element's accessible name, and they override the visible text even when that text is properly associated with the control. So a team adds an aria-label to make an announcement clearer, and quietly disconnects the control from the words printed on it, with nothing visibly wrong. A scan may catch it. There is a proposed test rule comparing visible text against the accessible name and at least one engine implements it, so run the check rather than assuming nothing can see this.

There is a second failure mode and it is the worse of the two. When the accessible name and the visible label differ, the name works as a hidden command. The control does not respond to what the user can see, and it does respond to a phrase they cannot, so it can fire by accident.

"Show numbers" works the same way on macOS, Windows and Android, overlaying a number on every clickable thing so the user can say a number instead of a name. There is a grid command too, which lays numbered squares over the screen and lets the user drill in until they can reach a precise point. That is the fallback for everything labeled badly, and it is slow, which is the cost of a mismatch rather than an excuse for one.

Speech-input users are not the only people this rule serves. Somebody who sees the screen and also hears it read, which includes many people with dyslexia and low vision, gets a mismatch between the words they read and the words they hear. Nothing fails to activate for them, and it is still disorienting.

Two product notes, because the field moved. Dragon's home edition came off sale in February 2023, so what you can buy now is the professional and enterprise line, and copies people already had did not stop working. And Windows Speech Recognition was replaced by Voice Access from September 2024 on Windows 11, so older advice naming it is out of date.

We could not find a measurement of how many people use voice control. The screen reader surveys do not ask, and the nearest thing our search turned up is thirteen years old with 46 respondents. If you need a number, we have not found one worth quoting.

Why it matters

It is the assistive technology a well-meant ARIA label breaks most quietly, because nothing about the result sounds wrong. The screen reader announces a cleaner name, the visible label stays exactly where it was, and only somebody speaking to the page finds out. That is also why the criterion asks for containment rather than a match, which is more forgiving than most people assume and worth knowing before you file a finding against a control that conforms.

Say what you see

Somebody says "click Send". If the button reads Send and its accessible name is "Send message", the command has what it needs, because the name contains the label. If the accessible name is "form-cta-1", the words on screen are not in the name and the command is unlikely to land. They are left with the number overlay or the grid, and no way to see why the obvious route failed.

Where this shows up on the site

Related terms

Knowing the word is the easy part.

Find out where your own site stands. The free scan checks 10 pages in a real browser against all 90 supported automated rules, separates 27 best-practice checks from its WCAG findings, and names the rule behind every result.

Run the free scan

Go somewhere useful

Find tools, resources and your workspace.

29 destinations