WCAG 4.1.2 (A)

Iframes have no title attribute

What this failure is

An <iframe> embeds one web page inside another — a YouTube video, a Google Map, a Stripe payment form. Screen readers treat each iframe as a landmark on the page and announce it as the user tabs to it. If the iframe has a title attribute (title="YouTube video: how to tie a bowline"), the user hears a useful description. If the title is missing, they hear either "frame" or the src URL of the iframe, which for a modern embed is usually a long string of query parameters that reveals nothing about the content. The user then has to enter the frame and explore blindly to work out what is inside.

Reference: WCAG 4.1.2 (A) — the authoritative spec.

Who it affects

How to fix it

Concrete steps for the four platforms most small e-commerce sites run on. If you use a different stack, the underlying HTML change is the same.

Shopify

The usual sources are embedded YouTube videos in blog posts and product descriptions, and third-party review widgets. In the rich-text editor click the video, choose Insert Video, and paste the URL — Shopify wraps it in an iframe but does not add a title attribute, so switch to the source-code view (< > icon in the toolbar) and edit the iframe tag to add title="Product demo video". For app-injected iframes (Judge.me reviews, Klarna widgets, chat), the fix has to happen in the app; contact the developer and mention WCAG 4.1.2.

WooCommerce

YouTube and Vimeo embeds inserted via the block editor come out untitled. Click the embed block, switch to HTML view (three-dot menu > Edit as HTML), and add title="..." to the iframe tag. For sitewide embeds (a Google Map in the footer widget), edit the widget in Appearance > Widgets and add the title attribute to the pasted iframe code. Some SEO plugins auto-inject titles for oEmbed content — check Yoast or Rank Math for an accessibility option before writing patches.

Wix

Wix's Video and YouTube widgets label their iframes automatically. Untitled iframes almost always come from the Embed HTML element (Add > Embed > Embed HTML) where a user has pasted raw iframe code. Edit the embed and add title="..." inside the iframe opening tag, then click Update. For Wix's Google Maps element, click the map, open Settings, and add an accessible name in the ARIA label field.

Squarespace

Squarespace's Video block titles its iframes with the video's own title so they usually pass. Problems appear when a user pastes raw embed code into a Code block or via Code Injection. Edit the Code block and add title="..." to each iframe tag. Squarespace does not add titles to third-party embeds you paste as raw HTML — you must add them yourself.

Notes

The title attribute on an iframe is different from the <title> tag inside the iframe's own document. The scanner checks the outer attribute because that is what screen readers announce when the user tabs to the frame. Iframes that are truly decorative and never receive focus can use aria-hidden="true" instead, which suppresses the whole element from assistive tech.

Check your own site

Our accessibility statement scan is free and reports findings only — we do not certify sites.

Scan a URL