Skip to content
StoreA11y

WooCommerce · 1.2.2 Captions (Prerecorded) (Level A)

Video has no captions on WooCommerce

Some videos have no caption track. Deaf and hard-of-hearing shoppers get no access to anything spoken in a product demonstration or brand film. Missing captions are a recurring allegation in filed complaints, and autoplaying background video with speech is a common cause.

Frequently litigated

Missing captions are the standard allegation brought by deaf and hard-of-hearing plaintiffs.

Which WCAG criterion this fails

  • Does not meet 1.2.2 Captions (Prerecorded) (Level A)

How to fix it on WooCommerce

Everything below is done from Appearance > Theme File Editor, or your child theme over SFTP. Take a copy of the theme before editing.

  1. Add a <track kind="captions"> to each self-hosted <video>, pointing at a .vtt file, with srclang and a label.
  2. For Shopify-hosted video, upload the caption file in Content > Files and reference its URL in the section.
  3. For YouTube/Vimeo embeds, upload captions in that platform — auto-generated captions are a starting point but must be corrected, since product and brand names are usually transcribed wrongly.
  4. Silent decorative background video needs no captions, but it must not autoplay with sound and needs a pause control (see WCAG 2.2.2).
  5. Add a transcript below the video as well; it helps SEO and serves shoppers who cannot use video at all.

Where this usually lives

Video blocks in the block editor and any custom <video> markup in the child theme

Paths given for Storefront, Astra, Flatsome and other WooCommerce themes. A heavily customised theme may differ; the CSS selector in your scan report points at the exact element.

Code

<video controls preload="metadata" poster="{{ 'poster.jpg' | asset_url }}">
  <source src="{{ video_url }}" type="video/mp4">
  <track kind="captions" src="{{ 'demo-en.vtt' | asset_url }}" srclang="en" label="English" default>
</video>

How to confirm it is fixed

Re-run the scan. This rule should drop out of the findings entirely. If the instance count falls but does not reach zero, the same defect exists in another template — product cards and quick-view modals are the usual second home for it.

Effort: high. Rule id: video-caption (axe-core).