Free Schema Markup Generator Video Schema Generator
Free SEO Tools · VideoObject, Movie & TVEpisode Schema Generator

Free Video Schema Generator - Instant VideoObject JSON-LD for Any Platform

A free schema markup generator and JSON-LD builder for VideoObject, Movie, TVEpisode and MusicVideoObject - with thumbnails, duration, publisher and engagement metrics.

Fill in your video's title, thumbnails, upload date and publisher - copy the generated JSON-LD and paste it into your page's <head>. Whether it's a hosted video, a YouTube embed, a film, or a TV episode, this video schema generator builds clean, standards-compliant markup on the exact schema.org/VideoObject spec, instantly, for free.

VideoObject, Movie, TVEpisode & More
Thumbnails, Duration & Publisher
Engagement Metrics & Transcript

Based on schema.org/VideoObject · Validated JSON-LD Output

100% Free, No Sign-Up
Valid Schema.org JSON-LD
Built for AI & Traditional Search
Live Preview As You Type
VideoObject
Schema Type
0
Thumbnails Added
No
Engagement Metrics
0 B
Schema Size

Fill Your Video Details

Schema @type
Use VideoObject for general videos, Movie for films, TVEpisode for episodes, MusicVideoObject for music videos.
Video Details
Video title is required
Description is required
Please enter a valid page URL
Direct link to the video file (mp4, webm, etc.).
Upload date is required
e.g. PT1H30M = 1 hr 30 min, PT45S = 45 sec.
Thumbnails *
Add 1-5 thumbnail images (1280×720px recommended). Use absolute URLs.
At least one valid thumbnail URL is required
Publisher / Channel
Publisher name is required
Square logo (min 112×112). Must be crawlable.
Engagement Metrics
Advanced Options
Comma-separated ISO 3166 country codes.
Date after which this video is no longer valid.
Video Schema, Explained

What Is Video Schema (schema.org/VideoObject)?

Video schema is JSON-LD structured data, based on the VideoObject type on schema.org/VideoObject, that describes a video: its title, description, thumbnail, duration, upload date, and publisher. It's added to a page's <head> as a <script type="application/ld+json"> block.

In short: a "video schema generator" is a tool that turns your video's details (title, thumbnails, duration, publisher, engagement metrics) into a ready-to-use JSON-LD block matching the schema.org VideoObject spec - the structured data behind video thumbnails, key moments, and video-rich results in Google Search. This page generates that code instantly, for free, in your browser.

Video schema helps Google's video rich results and AI-based answer engines such as AI Overviews understand what a video shows, how long it runs, and who published it - important for tutorial content, product demos, embedded YouTube videos, and any page where video is the main content.

VideoObject schema example

{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "name": "How to Set Up Video Schema Markup",
  "description": "A quick walkthrough of adding VideoObject JSON-LD.",
  "thumbnailUrl": ["https://example.com/thumbnail.jpg"],
  "uploadDate": "2026-09-01T09:00:00.000Z",
  "duration": "PT2M30S",
  "publisher": {
    "@type": "Organization",
    "name": "Your Brand",
    "logo": { "@type": "ImageObject", "url": "https://example.com/logo.png" }
  }
}
Choosing the Right Type

VideoObject, Movie, TVEpisode, MusicVideoObject - Which @type Should You Use?

All four share the same base properties. Pick the most specific one that matches your content.

TypeBest for
VideoObjectThe generic, catch-all type - tutorials, product demos, vlogs, webinars, embedded YouTube videos
MovieFeature films
TVEpisodeIndividual episodes of a TV series
MusicVideoObjectOfficial music videos
contentUrl, embedUrl & Page URL

contentUrl vs embedUrl - What's the Difference?

Page URL is the page the video lives on - this is the required url property. contentUrl is a direct link to the raw video file (an .mp4 or .webm), used when you self-host the video. embedUrl is the URL of an embeddable player, used for YouTube, Vimeo, or other third-party hosted videos.

You can include either or both, depending on how the video is delivered - self-hosted sites typically use contentUrl, while sites embedding YouTube or Vimeo players use embedUrl.

Self-hosted vs embedded example

{
  "url": "https://example.com/video-page",
  "contentUrl": "https://cdn.example.com/video.mp4",
  "embedUrl": "https://www.youtube.com/embed/VIDEO_ID"
}
Engagement Metrics & WatchAction

How View Counts & potentialAction Fit Inside Video Schema

Both are optional, and both can make your video more competitive in video-rich results.

interactionStatistic

Nested InteractionCounter objects for view and like counts, tied to a WatchAction or LikeAction. Only include numbers that are genuinely displayed on the page.

potentialAction (WatchAction)

Tells search engines where a user can actually watch the video - useful when the watchable URL differs from the page URL, such as an external player link.

Step by Step · Technical SEO

How to Build & Implement Video Schema Markup

This JSON-LD builder does the heavy lifting - here's the full technical SEO workflow, start to finish.

01

Pick the most specific video type

Choose VideoObject, Movie, TVEpisode, or MusicVideoObject depending on the content.

02

Add title, description & thumbnails

Fill in the required fields above: title, description, page URL, upload date, and at least one thumbnail.

03

Add publisher, duration & metrics

Credit who published it, how long it runs, and optionally view/like counts if displayed on the page.

04

Copy & paste into your <head>

Hit Copy (or Download), paste the script into your page's <head>, then validate with Google's Rich Results Test.

Implementation note: place one <script type="application/ld+json"> block per video page, inside <head> (or just before </body> if your CMS doesn't expose the head). If a page embeds multiple videos, add one VideoObject block per video.

Why Use This Tool

A Free, Instant Schema Generator Built for Real Video Pages

No sign-up, no watermark, no code editor required - just clean, valid Video JSON-LD you can trust.

100% Free, No Sign-Up

Generate unlimited video schema - no account, no email, no usage cap.

Instant Schema, Live Preview

Your JSON-LD updates as you type - no waiting, no separate "generate" step. A true instant schema and JSON-LD builder.

Clean, Valid JSON-LD

Output follows the schema.org VideoObject spec exactly, so it passes Google's Rich Results Test and the Schema Markup Validator.

4 Video Types in One Tool

VideoObject, Movie, TVEpisode & MusicVideoObject - switch instantly depending on your content.

Engagement Metrics & Transcript

View/like counts, a WatchAction target, and full transcript support for richer video understanding.

Nothing Leaves Your Browser

Everything runs client-side. Your video details are never uploaded or stored on a server.

FAQs

Frequently Asked Questions About Video Schema

What is Video schema (schema.org/VideoObject) used for?

Video schema tells search engines and AI systems a video's title, description, thumbnail, duration, upload date, and publisher - helping it qualify for video rich results in Google Search and be understood accurately by AI Overviews and other answer engines.

Which video type should I use - VideoObject, Movie, TVEpisode, or MusicVideoObject?

All four share the same core properties. Use VideoObject for most content - tutorials, demos, vlogs, embedded videos - and reserve Movie, TVEpisode, and MusicVideoObject for films, TV episodes, and official music videos specifically.

Is this video schema generator really free?

Yes. It's completely free to use, with no sign-up, no watermark, and no limit on how many video schemas you generate.

What fields are required for valid Video schema?

At minimum: a title, description, page URL, upload date, and at least one thumbnail image, plus a publisher name. This generator flags missing required fields before you copy or download.

What's the difference between contentUrl and embedUrl?

contentUrl is a direct link to the raw video file, used for self-hosted videos. embedUrl is the URL of an embeddable player, used for YouTube, Vimeo, or other third-party hosted videos. You can include either or both depending on how the video is delivered.

How does duration work in Video schema?

Duration uses ISO 8601 format - for example, PT1H30M means 1 hour 30 minutes, and PT45S means 45 seconds. This generator accepts the value directly in that format.

What are interactionStatistic and potentialAction for?

interactionStatistic reports view and like counts as nested InteractionCounter objects - only include numbers genuinely shown on the page. potentialAction with a WatchAction tells search engines where a user can actually watch the video, useful when that differs from the page URL.

How do I implement video schema markup technically?

Copy the generated code and paste it inside a single script tag of type application/ld+json in your video page's head. If a page embeds multiple videos, add one VideoObject block per video.

Does Google's AI Overview use Video schema?

AI Overviews and similar AI-based answer engines rely on the same crawlable, structured signals as traditional search, including clearly marked-up video titles, thumbnails, durations, and publishers. Valid Video schema makes those facts easier to extract accurately alongside clear on-page content, though it doesn't guarantee inclusion.

More Free Tools

Explore More Free Schema & SEO Tools