Audio description on streaming services
A guide for blind and low-vision users — which streamers actually have audio description (AD) tracks, how to turn them on, and which have the most coverage.
What is audio description?
Audio description (AD) is a separate audio track that narrates what's happening on screen — costumes, expressions, settings, action — between the dialogue. Makes visual media accessible to blind and low-vision viewers.
Which services have audio description?
| Service | AD on originals | AD on licensed content | How to enable |
|---|---|---|---|
| Netflix | Yes — comprehensive | Yes — most major titles | Audio menu → "English (Audio Description)" |
| Apple TV+ | Yes — every original | Yes — most | Audio menu → "English Audio Description" |
| Disney+ | Yes — originals + most catalog | Strong coverage | Audio menu → "English Audio Description" |
| Max | Yes — originals + HBO catalog | Mixed — older content varies | Audio menu, sometimes labeled "EN-AD" |
| Prime Video | Yes — most originals | Mixed | Audio menu → "English [Audio Description]" |
| Paramount+ | Yes — recent originals | Limited on older content | Audio menu |
| Peacock | Limited | Limited | Audio menu where available |
| Hulu (on-demand) | Strong | Strong on newer content | Audio menu |
| YouTube TV / live TV | Network-dependent | — | Most major networks now broadcast AD on a secondary audio track |
Best services for AD coverage
- Netflix — broadest AD library across originals and licensed catalog
- Apple TV+ — every original has AD; AD quality is professionally produced
- Disney+ — every Marvel, Star Wars, Pixar, and Disney film has AD
- Max — every HBO original has AD; older WB catalog mixed
How to find shows with audio description
- Netflix: Browse the "Audio Description" category in the menu — lists every AD title
- Disney+: Look for the "AD" badge on title cards
- Apple TV+: All originals have AD by policy — no special filter needed
- Max: No dedicated category yet; search for "audio description" returns AD titles
Audio description on live TV
Major broadcast networks (CBS, NBC, ABC, FOX) and cable channels (USA, FX, etc.) broadcast AD on a secondary audio program (SAP). YouTube TV, Hulu+Live, and other live TV streamers preserve this — go to audio settings during playback and select the SAP/AD track when available. Coverage is strongest on primetime shows; live sports rarely have AD.
Can I customize closed-caption font size, color, and background?
Yes — every major US streamer supports caption styling in 2026, but the controls live in different places. Here's the cheat sheet:
- Apple TV / iPhone / iPad: Settings → Accessibility → Subtitles & Captioning → Style. Adjusts font, size, edge style, opacity, and color across every app on the device. The same setting carries over to Apple TV box. Best-in-class — one toggle, applies everywhere.
- Roku: Settings → Accessibility → Captions. Size, color, opacity, and edge style. Applies to every streaming app on the box.
- Fire TV: Settings → Accessibility → Closed Captions. Font, size, color, background — same scope as Roku.
- Google TV / Chromecast: Settings → Accessibility → Captions. Same toolset.
- Per-app overrides: Netflix and Disney+ also have their own in-app caption styling that overrides the device default. Useful when you want bigger captions on Netflix but smaller ones on Disney+.
Common adjustments families ask for: 22-26 pt font size (vs the 16-18 default) for hard-of-hearing viewers, opaque black background instead of translucent so captions are readable against bright scenes, and yellow text for additional contrast. Set it once at the device level and every app respects it.
What about open captions and described captions?
Closed captions are universal across all major streamers in 2026. Described captions (captions that include visual cues like "[door slams]") are increasingly common but not yet universal. Apple TV+ and Disney+ have the most consistent described captions.
Can I navigate Untangled Streaming with only a keyboard?
Yes. Every interactive element on this site — the quiz tiles, the persona cards, the back-bar, the deals bar, the device chips, the FAQ accordion — is reachable via the Tab key and activatable with Enter or Space. We use native <button> and <a> elements (not <div onclick>), set visible :focus-visible outlines (3px electric-blue ring with 2-3px offset), and never hide the focus state. Use Tab to move forward, Shift+Tab to move back, Esc to close any modal/drawer. The deals-bar dismiss × is in the tab order so you can close it without a mouse. If you find a control that doesn't take keyboard focus, that's a bug — please email Rick at [email protected] and we'll fix it.
Are the recommendation results screen-reader friendly?
Yes — the persona-results pages (/recommendations/{persona}-{zip}/) are built with semantic HTML and ARIA roles so VoiceOver, NVDA, JAWS, and Orca can read them naturally:
- Headings follow a strict H1 → H2 → H3 hierarchy so screen readers can skim section-by-section
- "Rick's Pick" hero is wrapped in
<section aria-labelledby>with its h2 as the label, so SR users hear "Rick's Pick, region" when they land on it - Tier-card "Device" rows use real
<span>labels next to values (not inline-only styling) so the screen reader announces "Device: Apple TV 4K" not just "Apple TV 4K" - Newsletter form has explicit
<label aria-label="Email address">on the email input so it announces correctly - Back-bar + breadcrumb use
<nav role="navigation" aria-label="Breadcrumb">so users can skip past it with the screen-reader landmark menu - Decorative icons are marked
aria-hidden="true"so they don't add audible noise - Status updates like the newsletter success/error blocks are announced via
aria-liveregions, so users hear "Subscribed" without having to refresh
The same standards apply to the Sports Quiz, the homepage quiz, and every device review page. If a screen reader user encounters something unintelligible — a button that announces as just "button" with no label, an icon read as "image" with no description, a heading order that skips levels — let us know via the bottom feedback link and we'll fix it in the next deploy.