canvas-text-alternative-quality
<canvas> text alternative must be appropriate (manual review)
Flags <canvas> elements with a detected text alternative for human review of equivalence and appropriateness.
Applies to. Applies to <canvas> elements that already carry a text alternative: fallback content inside the element, an ARIA name, or a title. A <canvas> with none of those has no alternative whose quality could be judged; that's canvas-text-alternative-present's failure. The element must be included in the accessibility tree, and role="presentation"/"none" takes it out of scope unless it is focusable, which restores its role.
Expectation. Human review is required to confirm that the provided text alternative is accurate and appropriate.
What a finding reports.
reasonCode:TEXT_ALTERNATIVE_REVIEW.value: the text alternative to review. When the fallback content has no text of its own but holds an image with alt text or an element with an aria-label, this is the placeholderfallback-content.mechanism: where the text alternative comes from:canvas-fallback(content inside the <canvas>),aria-labelledby,aria-labelortitle.flags: notes on how the text alternative was found, such astitle-usedwhen only the title attribute provides it.
These data.details fields help to read and reproduce a finding. Apart from reasonCode and the few fields Output schema names as stable, they are not a stable contract: a field may be renamed or dropped in a minor release, so don’t build on them.
Examples
<canvas width="400" height="200">Bar chart</canvas>
The fallback text "Bar chart" is present but generic — worth confirming it conveys the actual data, not just the chart type.
<canvas width="400" height="200"></canvas>
No fallback content, ARIA name, or title exists to review; that's canvas-text-alternative-present's failure instead.
How to check
When this rule can’t decide, it reports cantTell and leaves the question to a person. Each question it can ask is listed here under its reason code, with the steps to answer it. A finding carries the same steps as howToCheck, in the scan’s language. See Output schema.
TEXT_ALTERNATIVE_REVIEW
- Look at what the canvas the report names shows on screen, including any changes as you use it.
- Read its text alternative (the value the report gives, or its fallback content and name in the Accessibility pane).
- If the text alternative only names the canvas, as is common for charts and diagrams, the details may be given elsewhere: in a caption, text or a table next to it, or a link beside it. That counts only if a screen reader user can find it from the canvas and it gives everything the canvas shows.
- Check that the text, with any such description, conveys the same information or purpose as the drawing, and keeps up if the drawing changes.
Pass. The text alternative, alone or with a description a screen reader user can reach from it, gives the same information or purpose as what the canvas shows.
Fail. Neither the text alternative nor a description reachable from it gives the information the canvas shows, or the text is vague or wrong, which fails WCAG 1.1.1.