Video Captions & Accessibility (WCAG 1.2): A Practical Implementation Guide

6 min read J. Vicente Training

Learn how to implement accessible video captions under WCAG 1.2. Practical guide covering Amara, Rev.com, 3Play Media, WebVTT, SRT formats, and audio description for full web accessibility compliance.


Why Video Captions Are Far More Than a Nice-to-Have

Think about the last time you watched a video on mute — maybe on a crowded train, in a noisy coffee shop, or late at night with someone sleeping next to you. You turned on the captions, right? Now imagine you are deaf or hard of hearing, and captions are not a convenience but your only gateway to the content. That is the gap between comfort and fundamental right.

According to the World Health Organization (WHO), over 1.5 billion people globally live with some degree of hearing loss, and that figure is expected to exceed 2.5 billion by 2050. In the United States alone, approximately 48 million people experience significant hearing difficulties. Captions are not optional; they are essential.

Personally, I believe the biggest mistake web developers make is treating captions as an afterthought — something to bolt on at the end. That "end" rarely arrives, and in the meantime, millions of people are locked out of your content.


WCAG 1.2: The Success Criteria for Time-Based Media

The Web Content Accessibility Guidelines (WCAG), published by the W3C through the Web Accessibility Initiative (WAI), devote the entire 1.2 guideline to time-based media: audio, video, and multimedia. Let us break it down so you know exactly what each criterion demands.

Breakdown of the SC 1.2.x Sub-Criteria

Criterion Level What It Requires
SC 1.2.1 A Alternative for pre-recorded audio-only and video-only: transcript or text description
SC 1.2.2 A Captions for pre-recorded video with audio
SC 1.2.3 A Audio description or text alternative for pre-recorded video
SC 1.2.4 AA Captions for live content (real-time captions)
SC 1.2.5 AA Audio description for pre-recorded video (when main audio track does not cover all visual info)
SC 1.2.6 AAA Sign language interpretation for pre-recorded video
SC 1.2.7 AAA Extended audio description (pausing video if needed)
SC 1.2.8 AAA Full text alternative for pre-recorded time-based media
SC 1.2.9 AAA Alternative for live audio-only content

If you are aiming for Level AA — the benchmark required by the European Accessibility Act (Directive 2019/882), the EN 301 549 standard, and Section 508 in the US — you need criteria 1.2.1 through 1.2.5 at a minimum. Sounds like a lot? Take a deep breath; we will work through each one step by step.


Captions vs. Subtitles vs. Closed Captions: Clearing Up the Confusion

There is a persistent mix-up around these terms, so let us set the record straight once and for all.

  • Subtitles: a translation of dialogue into another language. They do not include ambient sounds or speaker identification.
  • Captions (closed captions / CC): a full transcription of the audio, including sound effects, music cues, and speaker labels. Designed for deaf and hard-of-hearing viewers.
  • Open captions: burned into the video stream; the viewer cannot toggle them off.
  • Closed captions: delivered in a separate file (WebVTT, SRT) so the viewer can choose to enable or disable them.

When WCAG references "captions" in SC 1.2.2 and SC 1.2.4, it means closed captions — the full audio transcription, synchronized with the video. Why closed rather than open? Because the user must have the choice to activate or deactivate them.


Caption File Formats: WebVTT, SRT, and Beyond

Not all caption formats are created equal. Each has strengths and a natural habitat.

Format Extension Key Strengths Recommended Use
WebVTT .vtt W3C standard, CSS styling, positioning, voice markup HTML5 <track>, modern web players
SRT (SubRip) .srt Dead simple, near-universal compatibility YouTube, Vimeo, desktop players
TTML/DFXP .ttml/.xml Rich styling, broadcasting support Television, professional streaming (Netflix)
SSA/ASS .ssa/.ass Advanced styling, free positioning Anime, fansubbing communities

For the web, WebVTT is the W3C-recommended standard and the only format natively supported by the HTML5 <track> element. My advice is straightforward: use WebVTT for your own site and export to SRT only when you need compatibility with external platforms like YouTube.


Professional Tools for Creating Accessible Captions

You do not need to transcribe everything by hand. There are powerful tools that combine artificial intelligence with human review for production-quality results.

Captioning Tool Comparison

Tool Type AI Accuracy Approximate Price Best For
Amara Open-source collaborative platform Auto-transcription + human editing Free (community edition) NGOs, educational projects, collaborative teams
Rev.com Professional service 99% with human review From $1.50 USD/min (human) Businesses requiring maximum accuracy
3Play Media Enterprise platform 99%+ with humans Custom pricing Large corporations, universities
YouTube Auto-captions Built-in AI 85-95% depending on language Free First drafts, informal videos
Otter.ai Conversational AI 90-95% From $16.99 USD/month Meetings, podcasts, informal content

Personally, my favourite workflow is: generate a first draft with YouTube's AI or Otter.ai, export the SRT file, import it into Amara for collaborative editing, then convert it to WebVTT for deployment. Is it perfect? No. Is it efficient? Absolutely.


Audio Description: The Forgotten Pillar of Video Accessibility

Captions address the auditory side, but what about visual information? A chart that flashes on screen, a meaningful gesture, a scene change — all of that is lost for a blind or low-vision viewer if audio description is missing.

Audio description (SC 1.2.3 and SC 1.2.5) is an additional audio track that narrates visually significant elements during natural pauses in the dialogue. Think of it as a narrator telling you what is happening on screen while the action unfolds.

Is it mandatory? For Level AA, yes: SC 1.2.5 requires audio description for pre-recorded video. For Level A, you can provide a full text alternative instead (SC 1.2.3). But let us be honest: audio description delivers an incomparably better user experience.

Practical Tips for Creating Audio Description

  • Plan audio description from pre-production: leave natural pauses in the script for descriptions.
  • Describe only what matters: do not narrate every detail, focus on information essential to understanding the content.
  • Keep a neutral, objective tone: audio description informs, it does not interpret.
  • Hire professionals or train your team: audio description is a specialist skill that requires practice.


Technical Implementation: The <track> Element in HTML5

Adding captions to your website is easier than you might think. The <track> element inside <video> is your best ally.

Within your <video> tag, you add one or more <track> elements with these attributes: src (path to the .vtt file), kind (captions for subtitles, descriptions for audio description), srclang (language code), and label (the name the user sees in the player menu). The "default" attribute indicates which track activates automatically.

Key points you cannot afford to ignore: make sure the WebVTT file is properly encoded in UTF-8, that synchronization timing is accurate (± 0.5 seconds maximum), and that you identify speakers when more than one person is talking.


Did you know that captions must also meet colour contrast requirements? SC 1.4.3 (Level AA) demands a minimum contrast ratio of 4.5:1 for normal text, while SC 1.4.6 (Level AAA, enhanced contrast) raises the bar to 7:1.

For captions overlaid on video, this means: white text on a semi-transparent dark background (or the reverse). Avoid captions with no background over light imagery — they become unreadable. Platforms like YouTube and Netflix already apply dark backgrounds by default; you should do the same in your custom player.


Frequently Asked Questions

Everything you need to know.

Yes, if those videos contain audio with meaningful information. SC 1.2.2 (Level A) requires captions for every pre-recorded video with an audio track. The only exception is when the video is clearly labeled as a media alternative to text. If you publish it, caption it.
Not in their raw form. YouTube's auto-generated captions reach 85-95% accuracy, which falls short. WCAG demands that captions be "equivalent" to the audio, implying accuracy near 99%. Use auto-captions as a starting draft, but always review and correct them manually before publishing.
Captions are synchronized with the video and appear in real time on screen. A transcript is a standalone text document offered alongside the media. For SC 1.2.2, you need synchronized captions. For SC 1.2.1 (audio-only), a transcript is sufficient. Ideally, provide both.
You have two main options. First, create a secondary audio track that includes descriptions during natural pauses in the original dialogue and offer it through . Second, for Level AAA (SC 1.2.7), extended audio description allows the player to pause the video to insert longer descriptions, which requires a compatible player.
WebVTT, without question. It is the W3C standard, the only format natively supported by in HTML5, and it supports CSS styling, positioning, and semantic markup. SRT is excellent for external platforms, but for your own site, WebVTT is the right choice.
Yes. SC 1.2.4 (Level AA) requires captions for live content. This covers webinars, live broadcasts, and streaming events. Tools like StreamText, CART (Communication Access Realtime Translation), and the built-in live captioning in Zoom or Microsoft Teams can help, though a human stenographer always delivers the highest accuracy.
Significantly. Google cannot "see" or "hear" your video, but it can index caption text. According to a 3Play Media study, videos with captions receive 7.32% more views. In addition, WebVTT and SRT files uploaded to YouTube are indexed as textual content, boosting visibility for long-tail search queries.

Certifications and accreditations.

We have the certifications that endorse our experience in accessibility.

IAAP - International Association of Accessibility Professionals IAAP CERTIFIED
ISO 9001 - Sistema de Gestión de Calidad ISO 9001