Product demos, how-to videos and podcasts often explain things better than any page. But an AI agent answering a shopper's question reads your page, not your video. This guide covers how to give agents the words behind your media: transcripts and captions in HTML, VideoObject structured data, and key facts that don't depend on pressing play.
What an agent gets from a video
Picture a product page for the Northwind Aero kettle with a two-minute video. In it, a presenter fills the kettle, shows the 1.7-liter line, sets it to 80°C for green tea and points out that the base works with either hand. A shopper watching learns all of that.
An AI agent fetching the same page for someone usually reads the page's HTML. The video appears as a player, often inside an embedded frame from a video host, with a title and a thumbnail. Unless the words are on the page too, the agent learns that there is a video, and not much else. Even an agent that can process media has to fetch and work through the whole recording to find one fact that a competitor's page states in a line.
Video only
- A player and a thumbnail
- Title: "Meet the Aero"
- Capacity and temperatures said aloud
Video with words
- The same player
- A summary of what the video shows
- A transcript below it, in HTML
Put key facts on the page, not only in the video
The quickest fix doesn't involve the video at all. Anything the video says that a shopper might ask about should also be written on the page:
- Specs and measurements shown or said in the video: "Capacity: 1.7 liters. Temperature settings: 70, 80, 90 and 100°C."
- How it works, in a short list of steps, for how-to and setup videos.
- What's in the box when the video is an unboxing.
- Answers to the questions the video handles, such as whether the filter is removable or the base is cordless.
Write these the same way as the rest of your product facts: labeled, with units. See product descriptions AI agents can compare. A short "In this video" summary under the player works well: three to five lines that say what a viewer learns.
Transcripts in HTML
A transcript is the text version of what's said in a video or audio recording. The W3C's guidance on transcripts describes two kinds. A basic transcript covers speech and important sounds. A descriptive transcript also describes what's shown, which is what makes a product video's meaning come through in text: "She presses the 80° button; the light turns green."
The same guidance gives practical advice that suits agents as well as people:
- Use HTML. W3C notes that most transcripts on the web are provided in HTML. A downloadable text or PDF file is one more step to find and open. See PDFs and documents AI agents can read.
- Put it on the same page. For media on your own site, W3C says it's usually best to include the transcript on the page with the video, or a link right under it.
- Make it readable. Group caption lines into paragraphs, add headings and links where they help, identify speakers, and include timestamps only when they're useful.
- Add what's only on screen. Captions often miss text shown in the video, such as a product name or a setting. Add it to the transcript.
If the transcript is long, a collapsed section is fine as long as the text is in the HTML when the page loads, not fetched by a script when someone opens it. See tabs, accordions and "read more".
<section aria-labelledby="aero-video">
<h2 id="aero-video">Video: setting the Aero for green tea</h2>
<!-- video player here -->
<h3>In this video</h3>
<ul>
<li>Fill to the 1.7-liter line</li>
<li>Press 80° for green tea; the light turns green when ready</li>
</ul>
<details>
<summary>Read the transcript</summary>
<p>Hi, I'm Dana from Northwind. Today we're making green tea...</p>
</details>
</section>
- Captions file Timed text from your editor or host
- Correct it Fix the words the software got wrong
- Add the visuals On-screen text and actions
- Publish as HTML Under the video, on the same page
Captions and transcripts are different jobs
Captions and transcripts carry the same words, but they work differently:
| Captions | Transcript | |
|---|---|---|
| Where it appears | Inside the player, in time with the audio | On the page, as text |
| File | A timed text file, most often WebVTT | HTML |
| Includes visuals | Usually not | A descriptive transcript does |
| Readable by agents that read the page | Not as page text | Yes |
You want both: captions for people watching with the sound off or who can't hear, and a transcript for people and agents who read. The usual route is to create accurate captions first and turn them into a transcript; most caption tools can export plain text. Be careful with automatic captions. W3C's captions guidance warns that they can be wrong in ways that change the meaning, and gives the example of "You should not preheat the oven" coming out as "You should know to preheat the oven". Use them as a draft and correct them.
Accessibility and agents want the same thing. W3C's guidance puts captions for prerecorded video at WCAG Level A, and transcripts for audio-only content such as podcasts at Level A too. Work you do for accessibility here pays off for AI agents. See accessibility work is agent readiness work.
Describe videos with VideoObject structured data
Schema.org's VideoObject type describes a video in a form any machine can read. Google's video structured data documentation requires name, thumbnailUrl and uploadDate, and recommends others such as description, duration, contentUrl and embedUrl. Schema.org also has a transcript property for video and audio objects.
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "Setting the Northwind Aero kettle for green tea",
"description": "How to fill the Aero to 1.7 liters and use the 80°C setting.",
"thumbnailUrl": "https://northwind.example/media/aero-tea.jpg",
"uploadDate": "2026-09-14T09:00:00-05:00",
"duration": "PT2M05S",
"embedUrl": "https://northwind.example/embed/aero-tea",
"transcript": "Hi, I'm Dana from Northwind. Today we're making green tea..."
}
Keep it honest and specific: a name and description that say what the video shows, unique for each video. Google's video guidance treats a product page with a video as a page where the video complements the rest of the content, and some video features in Search need a dedicated watch page whose main purpose is that one video. Many stores do both: the video on the product page, and a watch page in a video library. For the rest of your structured data, see product data that AI shopping agents can read.
VideoObject at a glance
- name Required by Google; unique per video
- thumbnailUrl Required by Google
- uploadDate Required by Google; add the time zone
- description, duration Recommended
- transcript A schema.org property for the spoken text
Podcasts, webinars and other audio
Audio has no picture to fall back on, so a transcript carries everything. Give each episode its own page with a summary, the guests' names, the main points as a list, and the full transcript in HTML, with speakers identified. If you link to products or guides in the episode, link them on the page too. Webinars that explain your product or pricing deserve the same treatment, plus a short written summary of any answers that change what a buyer would do.
AgentScore doesn't test video or audio. Its Readability checks look at text, structured data and prices in your page HTML, so putting your media's facts into the page is the part that shows up there.
Where to start
Your first three videos:
- List the videos on your top product pages and your most-watched how-to videos.
- For each, write down the facts a shopper would ask about that are only in the video. Add them to the page as text.
- Export the captions from your video host or editor, correct them, and add the visuals.
- Publish the transcript under the video, in the HTML, with a short "In this video" summary above it.
- Add VideoObject structured data with name, thumbnail, upload date, description and duration.