Subtitles and accessibility: what the WCAG captions rules require
A plain guide to the WCAG captions rules: which success criteria are Level A, which are AA, what captions must contain, and how to produce the file.
WCAG asks for captions on prerecorded video with sound at Level A, and on live video at Level AA. The rules sit in guideline 1.2, five success criteria covering audio-only, video-only, prerecorded and live media. Two things tend to surprise people reading them for the first time. A transcript sitting on the page does not satisfy the WCAG captions rule for video. And captions are more than the dialogue: the W3C definition covers non-speech audio, and the guidance on 1.2.2 says they identify who is speaking.
Captions and a transcript are not the same thing
The W3C’s Web Accessibility Initiative defines captions as a text version of the speech and non-speech audio information needed to understand the content, displayed within the media player and synchronized with the audio.
A basic transcript carries the same material, in the same words, but it lives on the page as ordinary text with no timing attached. A descriptive transcript goes further and adds a text description of the visual information needed to understand the content.
That distinction decides which criterion you are satisfying. Captions travel with the video and appear in sync. A transcript stands on its own and can be read without playing anything.
A note on vocabulary, because it trips up British and European readers. WAI uses captions for text in the same language as the spoken audio, and subtitles for spoken audio translated into another language, while noting that some regions use subtitles for both. If you say subtitles and WCAG says captions, you are usually talking about the same file.
The WCAG captions rules are five success criteria at two levels
Here is the part of guideline 1.2 that applies to prerecorded and live content, with the conformance level the WCAG 2.2 Recommendation assigns to each.
| Success criterion | Level | What it asks for |
|---|---|---|
| 1.2.1 Audio-only and Video-only (Prerecorded) | A | For audio with no video, “An alternative for time-based media is provided that presents equivalent information”. For video with no audio, “Either an alternative for time-based media or an audio track”. |
| 1.2.2 Captions (Prerecorded) | A | “Captions are provided for all prerecorded audio content in synchronized media.” |
| 1.2.3 Audio Description or Media Alternative (Prerecorded) | A | “An alternative for time-based media or audio description of the prerecorded video content is provided for synchronized media.” Either one. |
| 1.2.4 Captions (Live) | AA | “Captions are provided for all live audio content in synchronized media.” |
| 1.2.5 Audio Description (Prerecorded) | AA | “Audio description is provided for all prerecorded video content in synchronized media.” |
Three of them, 1.2.1, 1.2.2 and 1.2.3, carry the same exception: they do not apply where the media is “a media alternative for text and is clearly labeled as such”. That covers a video whose only job is to act out something already written on the page.
So for a normal video with people talking, at Level A you owe captions under 1.2.2, plus either a transcript or audio description under 1.2.3. At Level AA, 1.2.4 adds captions for anything you stream live, and 1.2.5 removes the transcript option for prerecorded video and asks specifically for audio description, which the WCAG glossary defines as “narration added to the soundtrack to describe important visual details that cannot be understood from the main soundtrack alone”.
There is one useful release valve on the audio description criteria. The Understanding document for 1.2.5 notes that for 1.2.3, 1.2.5 and 1.2.7, if all of the important information in the video track is already conveyed in the audio track, no additional audio description is necessary. A talking head, or a screen recording where the narrator says what they are clicking, often falls into that category. A chart shown in silence does not.
Which level applies to you, and whether any of it is legally required, varies by country and by the kind of organisation you run. This is general information about the WCAG standard, not legal advice.
Captions carry the speaker and the sounds that matter
This is the part a raw transcript never gives you. The W3C’s Understanding document for 1.2.2 puts it plainly: captions carry the dialogue, identify who is speaking, and include non-speech information conveyed through sound, including meaningful sound effects.
In practice that means three additions to the words your transcription tool produced. Name the speaker when it is not obvious who is talking, usually a name or a role followed by a colon at the start of the cue. Put meaningful sounds in square brackets, such as [applause] or [glass breaks]. Note music where it carries meaning rather than filling space.
The test for what to include sits in the definition itself: the speech and non-speech audio “needed to understand the media content”. You are not transcribing every noise in the room. You are making sure a viewer who cannot hear the audio ends up with the same understanding as one who can.
Producing the caption file is four small jobs
- Get the words and the timings. Speech recognition does this in a fraction of the time it takes to type. Our transcriber runs on your own machine and exports SRT or VTT with the cues already built.
- Correct the text against the audio. Play it back and read along. Names, jargon and numbers are where the errors hide.
- Add the speaker labels and the sound descriptions. Nothing automatic will do this for you.
- Fix the line breaks. WAI notes that if you already have the transcription as text, free tools will “generate a captions file with timestamps”, but that you “will need to edit it for line breaks”. Our exporter keeps cues to 42 characters per line, two lines, one to six seconds, with an 80 millisecond gap.
Then attach the file to the player. If you are hosting the video yourself, SRT, VTT or plain text covers which format each player expects, and how to make an SRT file has the exact syntax and the five small mistakes that get a file rejected.
An automatic transcript is a first draft, not a caption track
WAI is direct about this: “Automatically-generated captions do not meet user needs or accessibility requirements, unless they are confirmed to be fully accurate.” The example it gives is a recipe video where the automatic text reads “Broil on high for 45 minutes” and the audio said four to five minutes. The advice on transcribing says the same thing: “Plan to spend time correcting automatically-generated transcription.”
Two gaps, then. Accuracy, which you close by reading the transcript against the audio. And speaker identification and sound information, which 1.2.2 asks for and which no speech model hands you.
That is the honest role for a tool like ours. FreeTranscribe runs OpenAI’s open-source Whisper model, base size, English, on your own graphics card through WebGPU, so nothing you load ever leaves the browser. It needs desktop Chrome or Edge with a working WebGPU adapter, downloads about 200 MB of model once, and ran at roughly 1.5 times real time on a desktop with a graphics card in our test. A thin laptop takes about as long as the recording. It was word-perfect on our clean text-to-speech test, and names, technical terms, strong accents and noisy rooms are the known weak spots. Read the output through before you publish it.
Transcribe your video in the browser, then correct the file and add the speaker labels. That correcting is the work that turns a transcript into a caption track.
Frequently asked questions
Does a transcript on the page satisfy 1.2.2? No. 1.2.2 asks for captions in synchronized media, which means text that appears with the video in time. A transcript is an “alternative for time-based media”, which is what 1.2.1 accepts for audio-only content and what 1.2.3 accepts as one of its two options. Publishing both is common, and they answer different criteria.
Do captions have to be burned into the picture? WCAG defines captions by what they do, not by how they are delivered: a “synchronized visual and/or text alternative for both speech and non-speech audio information needed to understand the media content”. A separate caption file the viewer can switch on meets that, and so do captions rendered into the video itself.
Which level should I aim for? WCAG 2.2 assigns 1.2.2 and 1.2.3 to Level A and 1.2.4 and 1.2.5 to Level AA. Which of those you have to meet depends on the policy or rule you are working to, and that differs by country. The standard defines the levels; it does not decide which one applies to your site.
Do I need audio description for a webinar recording? Often not. The Understanding document says that where all of the important information in the video track is already conveyed in the audio track, no additional audio description is necessary. If the slides carry numbers the speaker never reads out, that stops being true, and a descriptive transcript is usually the cheaper fix.
Sources, checked 15 September 2026
- W3C, “Web Content Accessibility Guidelines (WCAG) 2.2”, for success criteria 1.2.1 to 1.2.5, their levels, and the glossary definitions of captions and audio description: www.w3.org/TR/WCAG22/
- W3C, “Understanding SC 1.2.2: Captions (Prerecorded)”, for what captions must include beyond dialogue: www.w3.org/WAI/WCAG22/Understanding/captions-prerecorded.html
- W3C, “Understanding SC 1.2.5: Audio Description (Prerecorded)”, for when audio description is not needed: www.w3.org/WAI/WCAG22/Understanding/audio-description-prerecorded.html
- W3C, “Understanding SC 1.2.1: Audio-only and Video-only (Prerecorded)”, for the full criterion text: www.w3.org/WAI/WCAG22/Understanding/audio-only-and-video-only-prerecorded.html
- W3C WAI, “Captions/Subtitles”, for the captions definition, the captions and subtitles distinction, and automatically-generated captions: www.w3.org/WAI/media/av/captions/
- W3C WAI, “Transcripts”, for basic and descriptive transcripts: www.w3.org/WAI/media/av/transcripts/
- W3C WAI, “Transcribing Audio to Text”, for correcting automatic transcription: www.w3.org/WAI/media/av/transcribing/
- Our own model, speed, browser support and cue-building limits, measured on this site