Video Tutorial & Streaming Media Schema Markup (JSON-LD)
Rich VideoObject structured data for streaming educational tutorials, webinar recordings, and YouTube embeds featuring key moments (SeekToAction), upload dates, and high-res thumbnails.
Displayed below main page header or above the tool container. • Zero CLS Container
Production JSON-LD Code Block
Embed this structured data block directly into your HTML <head> or framework layout template.
{
"@context": "https://schema.org",
"@type": "VideoObject",
"name": "Advanced Next.js 15 Server Actions & Optimistic UI Patterns",
"description": "Learn how to build zero-latency database mutations using React 19 useOptimistic hooks and Next.js 15 server action pipelines.",
"thumbnailUrl": [
"https://omniseotools.com/thumbnails/nextjs-15-actions-16x9.jpg",
"https://omniseotools.com/thumbnails/nextjs-15-actions-4x3.jpg"
],
"uploadDate": "2026-09-30T16:00:00+00:00",
"duration": "PT18M42S",
"contentUrl": "https://cdn.omniseotools.com/videos/nextjs-server-actions.mp4",
"embedUrl": "https://www.youtube-nocookie.com/embed/dQw4w9WgXcQ",
"hasPart": [
{
"@type": "Clip",
"name": "Introduction & Architecture Overview",
"startOffset": 0,
"endOffset": 180,
"url": "https://omniseotools.com/videos/nextjs-actions#t=0"
},
{
"@type": "Clip",
"name": "Implementing useOptimistic Hook",
"startOffset": 181,
"endOffset": 620,
"url": "https://omniseotools.com/videos/nextjs-actions#t=181"
},
{
"@type": "Clip",
"name": "Error Rollbacks and Revalidation",
"startOffset": 621,
"endOffset": 1122,
"url": "https://omniseotools.com/videos/nextjs-actions#t=621"
}
]
}Typed Properties Specification (8 Fields)
Key Schema.org properties and sub-objects required to qualify for rich snippet treatment in Google Search.
| Property | Expected Type | Status | Description & Example |
|---|---|---|---|
| name | string | Required | Descriptive video title optimized for video search carousel CTR. e.g. Advanced Next.js 15 Server Actions & Optimistic UI Patterns |
| uploadDate | string (ISO 8601) | Required | Datetime when the video was initially published or uploaded. e.g. 2026-09-30T16:00:00+00:00 |
| duration | string (ISO 8601 Duration) | Required | Exact length of the video stream in ISO 8601 duration format (e.g. PT18M42S). e.g. PT18M42S |
| thumbnailUrl | string[] | Required | High-resolution thumbnail URLs in 16:9, 4:3, and 1:1 aspect ratios. e.g. [ 'https://omniseotools.com/thumbnails/video-16x9.jpg' ] |
| contentUrl | string (URL) | Recommended | Direct URL to the downloadable MP4/WebM video stream file. e.g. https://cdn.omniseotools.com/videos/nextjs-server-actions.mp4 |
| embedUrl | string (URL) | Required | Iframe embed URL for player playback directly in web browsers. e.g. https://www.youtube-nocookie.com/embed/dQw4w9WgXcQ |
| hasPart | Clip[] | Recommended | Array of Clip segments defining Key Moments and timeline chapters for Google SERP display. e.g. [ { '@type': 'Clip', 'name': 'Intro', 'startOffset': 0, 'endOffset': 180 } ] |
| description | string | Required | Comprehensive synopsis of the topics covered in the video. e.g. Learn how to build zero-latency database mutations using React 19. |
Google Search Console Pitfalls & Critical Warnings
Avoid these 3 common validation traps, parser errors, and algorithmic policy penalties when deploying VideoObject schema.
Blocked Video Thumbnail in robots.txt
Restricting Googlebot-Image from crawling the thumbnailUrl image asset via robots.txt rules.
Ensure thumbnail URLs return HTTP 200 and are not blocked by robots.txt or hotlink protections.
Missing SeekToAction Deep Linking Parameters
Failing to define Clip objects or SeekToAction timestamps for long tutorials.
Provide hasPart with Clip startOffset/endOffset integers or SeekToAction url templates.
Discrepancy Between Video Duration and ISO 8601 String
Declaring a duration that deviates significantly from the actual video media length.
Derive the duration ISO string directly from video file metadata headers.
Recommended Implementation Scenarios
Related Schema Blueprints
Explore complementary structured data blueprints across the Media & Entertainment cluster.
Video Clip & Key Moment Segment Schema Markup (JSON-LD)
Live Stream & Broadcast Event Schema Markup (JSON-LD Blueprint)
Podcast Episode & Audio Enclosure Schema Markup (JSON-LD)
How-To Step-by-Step Instruction Guide Schema (JSON-LD)
Displayed below main page header or above the tool container. • Zero CLS Container