Skip to main content
Perceivable WCAG 1.2.4

1.2.4 Captions (Live)

Captions must be provided for all live audio content in synchronized media, ensuring real-time access for deaf and hard-of-hearing users.

Level AA Critical WCAG 2.0 (new) WCAG 2.1 WCAG 2.2

What this rule means

WCAG 1.2.4 requires that live synchronized media — such as webinars, live streams, virtual meetings, and live news broadcasts — include real-time captions. Unlike prerecorded captions, live captions must be generated and displayed as the audio occurs, typically through CART (Communication Access Realtime Translation), live stenography, or real-time speech recognition with human correction.

This criterion specifically targets live events where the audio content is being produced in real time. Prerecorded captions are covered under 1.2.2.

Why it matters

Live events are time-sensitive by nature. If a deaf or hard-of-hearing user cannot access the audio content during a live event, they lose the opportunity to participate, ask questions, and engage with the content in real time. A post-event transcript does not provide the same experience as real-time access.

Live captions are essential for workplace inclusivity — remote meetings, company town halls, and training sessions all require real-time captions to include employees with hearing disabilities.

The value of live captions lies in their immediacy. A delayed transcript cannot replace the experience of participating in a live event in real time.

Related axe-core rules

There are no axe-core rules for live captioning. Automated tools cannot detect whether a live stream includes real-time captions. This criterion requires manual testing during actual live events.

How to test

  1. Attend or simulate a live event or stream on the platform.
  2. Enable live captions and observe whether text appears in real time as speakers talk.
  3. Evaluate caption latency — captions should appear within 3-5 seconds of the spoken word.
  4. Check caption accuracy — while some errors are expected in live captioning, the content must be substantially understandable.
  5. Verify that speaker identification is provided when multiple speakers are present.
  6. Confirm that the captioning solution handles technical terminology and proper nouns relevant to the content.

How to fix

Integrate a live captioning service into your streaming platform. Many platforms offer built-in live captioning or support third-party CART services:

<!-- Example: Embedding a live caption overlay -->
<div class="live-stream-container" role="region" aria-label="Live stream with captions">
  <video id="live-player" autoplay>
    <source src="stream-url" type="application/x-mpegURL" />
  </video>
  <div
    id="live-captions"
    role="log"
    aria-live="polite"
    aria-label="Live captions"
    class="caption-overlay"
  >
    <!-- Captions injected in real time -->
  </div>
</div>

For WebRTC-based applications, use the Web Speech API as a fallback with human correction:

const recognition = new webkitSpeechRecognition();
recognition.continuous = true;
recognition.interimResults = true;
recognition.lang = "en-US";

recognition.onresult = (event) => {
  const transcript = Array.from(event.results)
    .map(result => result[0].transcript)
    .join("");
  document.getElementById("live-captions").textContent = transcript;
};

recognition.start();

For production environments, consider professional CART services or AI-powered solutions with human-in-the-loop correction for higher accuracy.

Common mistakes

  • Relying solely on automated speech recognition without any human correction, resulting in unintelligible captions.
  • Not testing the captioning system before going live, leading to technical failures during the event.
  • Excessive caption latency (more than 5-6 seconds) that makes real-time interaction impossible.
  • Failing to brief the captioning service on technical vocabulary, proper nouns, and acronyms before the event.
  • Providing captions only in the recorded version but not during the live broadcast.

Resources