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.
Based on schema.org/VideoObject · Validated JSON-LD Output
Fill Your Video Details
⚠️ Please fix the following errors:
PT1H30M = 1 hr 30 min, PT45S = 45 sec.Engagement Metrics
Advanced Options
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" }
}
}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.
| Type | Best for |
|---|---|
VideoObject | The generic, catch-all type - tutorials, product demos, vlogs, webinars, embedded YouTube videos |
Movie | Feature films |
TVEpisode | Individual episodes of a TV series |
MusicVideoObject | Official music videos |
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"
}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.
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.
Pick the most specific video type
Choose VideoObject, Movie, TVEpisode, or MusicVideoObject depending on the content.
Add title, description & thumbnails
Fill in the required fields above: title, description, page URL, upload date, and at least one thumbnail.
Add publisher, duration & metrics
Credit who published it, how long it runs, and optionally view/like counts if displayed on the page.
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.
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.
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.
Explore More Free Schema & SEO Tools
Schema Markup Generator Hub
16 JSON-LD generators in one place - Organization, Article, Product, Review, Event, and more.
Article Schema Generator
Headline, author, publisher & speakable markup for Article, BlogPosting & NewsArticle.
Course Schema Generator
Provider, instructor, modules & pricing markup for Course & CourseInstance.
Product Schema Generator
Offer, rating & review markup for e-commerce Product pages.
Event Schema Generator
Venue, organizer, performer & ticket markup for concerts, webinars & more.
FAQ Schema Generator
Turn your Q&A content into valid FAQPage JSON-LD in seconds.