Template · User stories

Acceptance criteria Template

What accessible means for a story, written so a tester can check it: a definition of done for every story, and Given/When/Then criteria for eleven common components. Each criterion names the WCAG 2.2 success criterion it checks and says how to test it. Copy them into stories, or import the CSV into your tracker.

Version
1.0
Updated
2026-10-07
Standard
WCAG 2.2
Criteria
50
Formats
Markdown, CSV
Licence
CC0 1.0

Download

The files

Plain text files you can open anywhere.

Markdown

Criteria and definition of done

acceptance-criteria.md

The definition of done as a checklist, then every criterion under its component, with its WCAG criterion, level and how to test it. Copy the parts a story needs.

Format
Markdown text (.md)
Size
20,711 bytes
Contents
396 lines

Preview: the first 20 lines

# Accessibility acceptance criteria

> Template version 1.0, 2026-10-07, from https://auricartisan.com/templates/acceptance-criteria/
> Licence: CC0 1.0 (https://creativecommons.org/publicdomain/zero/1.0/). Copy it, change it and use it for anything; no credit needed.
> The same criteria are in acceptance-criteria.csv, one row each, for importing into a tracker.
> Copy what applies into your stories, change the examples to fit your product, then delete this note.

Each criterion names the WCAG 2.2 success criterion it checks, and that criterion's level. The criteria cover common components, not every success criterion, so passing them all does not mean a page conforms to WCAG 2.2.

## Definition of done

A story is done, for accessibility, when:

- [ ] The acceptance criteria for each component the story adds or changes pass, tested as each one says.
- [ ] Everything works with the keyboard alone, and focus is always visible.
- [ ] The page works with text zoomed to 200%, and at 320 CSS pixels wide.
- [ ] It has been used with at least one screen reader, such as NVDA with Firefox or VoiceOver with Safari.
- [ ] An automated checker reports no new failures, and a person confirmed each result.
- [ ] Text alternatives, labels, link text and error messages are final copy, not placeholders.
- [ ] Anything that still fails is logged as an issue with its WCAG criterion and severity, and the team agreed to release with it.
Download the file

CSV

Criteria for a tracker

acceptance-criteria.csv

The same criteria, one row each, in the same words, for importing into Jira, Azure DevOps or a spreadsheet.

Format
Comma-separated values (RFC 4180)
Size
16,581 bytes
Contents
8 columns, 50 rows

Preview: the header and the first 3 rows

ID,Component,Given,When,Then,WCAG criterion,Level,How to test
PAGE-01,Page and title,any page of the site,it opens in a browser tab,"its title describes the page's topic or purpose, such as ""Your basket - Example Shop""",2.4.2 Page Titled,A,"Read the title in the browser tab or the window list. Without looking at the page, it tells you what the page is for."
PAGE-02,Page and title,any page,a browser or a screen reader reads it,"the html element's lang attribute gives the page's main language, such as en or hi",3.1.1 Language of Page,A,Inspect the html element: lang is present and is a valid code for the language most of the page is in.
PAGE-03,Page and title,a page that starts with a header and navigation repeated on other pages,a keyboard user arrives on it,"a skip link, or landmarks, let them go straight to the main content",2.4.1 Bypass Blocks,A,Press Tab once after the page loads: a skip link appears and moves focus to the main content. Or list the landmarks with a screen reader and jump to main.

The columns, in order

  • ID
  • Component
  • Given
  • When
  • Then
  • WCAG criterion
  • Level
  • How to test

Licence: CC0 1.0 Universal, a public domain dedication. Copy, change and use these files for anything, including paid work, without asking or giving credit. The files are plain ASCII text in English, so they open the same everywhere.

What goes in it

What the criteria cover

A definition of done for every story, then criteria for eleven components. Each criterion is one Given/When/Then statement, tagged with the WCAG 2.2 success criterion it checks.

  1. Definition of done. What every story passes before it counts as done: its criteria, the keyboard, zoom, a screen reader, an automated check, final copy, and any failure logged.
  2. Page and title. The title, the language, a skip link, headings and landmarks, text zoom and reflow (2.4.2, 3.1.1, 2.4.1, 1.3.1, 1.4.4, 1.4.10).
  3. Links and buttons. Keyboard use, visible focus, link text, names of icon buttons, labels in names and target size (2.1.1, 2.4.7, 2.4.4, 4.1.2, 2.5.3, 2.5.8).
  4. Form fields and labels. Labels and instructions, names, grouped options, autocomplete, information asked for twice, and signing in (3.3.2, 4.1.2, 1.3.1, 1.3.5, 3.3.7, 3.3.8).
  5. Error messages. Errors described in text, suggested fixes, announced messages, and a chance to check before anything final (3.3.1, 3.3.3, 4.1.3, 3.3.4).
  6. Images. Text alternatives for images that inform, silence for decoration, charts, and images of text (1.1.1, 1.4.5).
  7. Modal dialog. Focus moving in and back out, the dialog's role and name, and a way out by keyboard (2.4.3, 4.1.2, 2.1.2).
  8. Navigation menu. Consistent order, expanded state, keyboard use, submenus on hover, and focus hidden by sticky bars (3.2.3, 4.1.2, 2.1.1, 1.4.13, 2.4.11).
  9. Data table. Headers announced with each cell, sort order, and wide tables on narrow screens (1.3.1, 4.1.2, 1.4.10).
  10. Video and audio. Captions, audio description, transcripts, sound that plays on its own, and player controls (1.2.2, 1.2.5, 1.2.1, 1.4.2, 2.1.1).
  11. Animation and motion. Pausing movement, flashing, reduced motion, and features worked by moving the device (2.2.2, 2.3.1, 2.3.3, 2.5.4).
  12. Color and contrast. Text contrast, contrast of controls and graphics, and color used as the only cue (1.4.3, 1.4.11, 1.4.1).

Column by column

Columns of the criteria file

Columns of the criteria file (table)
ColumnWhat to write
IDA short reference: the component and a number, such as FORM-03.
ComponentThe component the criterion applies to, such as Modal dialog.
GivenThe situation: the component, and the state it is in.
WhenWhat the user does, or what happens.
ThenThe result that must be true for the criterion to pass.
WCAG criterionThe WCAG 2.2 success criterion it checks, by number and name, such as 2.4.3 Focus Order.
LevelThat criterion's level: A, AA or AAA.
How to testHow to check it by hand: with a keyboard, a screen reader, zoom or a contrast checker.

Example

Four criteria, as a story carries them

Taken from the file: one each for a form, an error message, a dialog and text contrast.

Four criteria, as a story carries them (table)
ComponentGivenWhenThenWCAG criterion
Form fields and labelsa group of radio buttons or check boxesa screen reader moves into the groupit announces the group's question as well as each option, such as with fieldset and legend1.3.1 Info and Relationships (A)
Error messagesa formit is submitted with a field missing or wrongeach field in error is identified, and the error is described in text3.3.1 Error Identification (A)
Modal dialoga modal dialogit closesfocus returns to the control that opened it, or to the next logical place if that control is gone2.4.3 Focus Order (A)
Color and contrasttext, and images of textthey are measured against their backgroundcontrast is at least 4.5:1, or 3:1 for large text (at least 24px, or 18.66px bold)1.4.3 Contrast (Minimum) (AA)

Given, When and Then are the words of Gherkin, the format many teams write acceptance criteria in; the Then is what a tester checks.

How to use it

Use them in a sprint

  1. Agree the definition of done. Add its checks to your team's definition of done, so every story meets them, not only the stories about accessibility.
  2. Copy the criteria into each story. For each component a story adds or changes, copy its criteria into the story's acceptance criteria, and change the examples to the story's own.
  3. Or import the CSV. In Jira's CSV import, match each column to a field. Azure DevOps needs Work Item Type and Title columns, no ID column for new items, and a field for every other column, so adapt the file first. Azure Boards: import work items from a CSV file
  4. Test during the sprint. Check each criterion as its How to test says, before the story is closed, not in an audit months later. Every WCAG 2.2 criterion, with tests
  5. Log what fails. A criterion that fails at review becomes an issue, with the WCAG criterion it names and a severity. Use the issue template

Know its limits

Criteria are not a conformance claim

These criteria cover common components and the success criteria most stories touch, not all of WCAG 2.2. Passing them does not show that a page conforms.

Each criterion gives the level of the WCAG criterion it checks. Those at Level AAA go beyond Level AA: keep them if they suit your product, or delete them.

Some details, such as closing a dialog with Escape, come from the WAI-ARIA Authoring Practices Guide rather than from WCAG itself.

Next

Related templates and tools

Sources

Where this comes from

Written by Auric Artisan. Not yet reviewed by an independent accessibility specialist.

Suggest a change to the template