VideoObject Schema Markup
VideoObject schema helps videos appear in Google Search results, Video search, and Google Discover with thumbnails, duration, and upload info. Critical for video content creators.
What is VideoObject schema markup?
VideoObject schema markup is structured data in JSON-LD format that helps search engines understand your page content. It requires properties like name, description, thumbnailUrl and enables rich results in Google Search. VideoObject schema helps videos appear in Google Search results, Video search, and Google Discover with thumbnails, duration, and upload info. Critical for video content creators.
Required Properties
| Property | Type | Description |
|---|---|---|
| name | Text | The title of the video. |
| description | Text | A description of the video. |
| thumbnailUrl | URL | A URL to the video thumbnail image. |
| uploadDate | DateTime | The date the video was uploaded in ISO 8601. |
Recommended Optional Properties
| Property | Type | Description |
|---|---|---|
| contentUrl | URL | The URL of the actual video file. |
| embedUrl | URL | The URL of the embeddable player. |
| duration | Duration | The duration of the video in ISO 8601. |
| interactionStatistic | InteractionCounter | View count or other engagement metrics. |
| expires | DateTime | When the video expires (if applicable). |
| hasPart | Clip[] | Key moments/clips within the video. |
Example JSON-LD Code
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "How to Set Up Schema Markup",
"description": "Step-by-step tutorial for adding JSON-LD schema to your website.",
"thumbnailUrl": "https://example.com/thumbnails/schema-tutorial.jpg",
"uploadDate": "2025-03-01T08:00:00+00:00",
"duration": "PT12M30S",
"contentUrl": "https://example.com/videos/schema-tutorial.mp4",
"embedUrl": "https://youtube.com/embed/abc123",
"interactionStatistic": {
"@type": "InteractionCounter",
"interactionType": "https://schema.org/WatchAction",
"userInteractionCount": 15420
}
}
Place this inside a <script type="application/ld+json"> tag in your page's <head>.
Common Mistakes to Avoid
- ✗ Missing thumbnailUrl — required for video rich results
- ✗ Not providing duration, which displays in search results
- ✗ Using uploadDate without proper ISO 8601 format
- ✗ Not including contentUrl or embedUrl — at least one is strongly recommended
- ✗ Marking up videos that are behind a paywall without proper access restrictions
Generate VideoObject Schema Markup
Use our free schema generator to create valid VideoObject JSON-LD code in seconds.
Open Schema Generator