Back to Blog
GoScript Journal

Video Structured Data Basics for Google Search

·7 min read·GoScript Team /Research

The short answer

Structured data is machine readable text that tells Google what a video is, when it was published, how long it runs, and what the thumbnail shows. The main type for video is VideoObject, written in JSON-LD and placed on the same page as the player.

It does not replace good content. It removes guesswork so Google can place your clip in the right surface without inferring everything from scratch.

The fields that carry weight

You do not need every possible property, but a handful do the heavy lifting. Start with these and expand only when a field adds real information.

  • name: the title of the video as you want it understood.
  • description: a short summary that matches what viewers see.
  • thumbnailUrl: the poster image, ideally one that is not a generic frame.
  • uploadDate: the ISO date the video first went live.
  • duration: the runtime in ISO 8601 form, such as PT4M13S.
  • contentUrl or embedUrl: the file location or the embed target.

Common ways people break it

Most failures are small and avoidable. A mismatched thumbnail, a missing upload date, or markup that points at a video the page does not actually show will quietly disqualify the result.

Another frequent problem is duplicating the markup across every page that embeds the same clip. Google wants a canonical page. Pick the one that owns the video and mark it up there.

Never mark up a video that is not playable on the page. If the player is gated behind a form or a login, the structured data claims something the user cannot confirm.

Structured data is a claim. Google checks that claim against what a real visitor would experience.

Testing before you ship

Validate the markup with Google's rich results test and the schema validator before you publish. Then check the video indexing report in Search Console, which separates detected videos from indexed ones and explains the gaps.

Treat the report as a checklist, not a scolding. Each warning points at a field or a page that needs a fix, and clearing them one by one is how a clip moves from detected to eligible.

Key takeaways

  • VideoObject in JSON-LD tells Google what your video is and where it lives.
  • Name, description, thumbnailUrl, uploadDate, duration, and contentUrl matter most.
  • Mark up only the canonical page and only a video that is genuinely playable there.
  • Validate with the rich results test and the schema validator before publishing.
  • Search Console's video indexing report shows detected versus indexed videos.

Turn this into your next script.

Analyze a channel, extract its structural DNA, and generate scripts engineered from patterns that actually work.

Analyze a Channel