Tool
What the Video Schema Generator does
Video Schema Generator: generates JSON-LD only from Video title, Description and Thumbnail URL. Example: video title How to change a bicycle tyre, thumbnail URL https://example.com/thumb.jpg and upload date (YYYY-MM-DD) 2026-08-01 gives JSON-LD only { "@context": "https://schema.org", "@type": "VideoObject", "name": "How to change a bicycle tyre"….
Feed it Video title, Description, Thumbnail URL and Upload date (YYYY-MM-DD); it hands back JSON-LD only. Values update as you type, so comparing options is a matter of editing one field.
Typical users are anyone tuning a snippet. What Google displays is rarely exactly what you wrote, and the difference costs clicks.
Your data stays on your machine. Once the page has loaded you could disconnect entirely and it would still work.
Below the tool you will find the field reference, the method, and an example computed from the values it opens with.
What do the Video Schema Generator fields mean?
The Video Schema Generator uses 6 inputs. Sensible defaults are loaded up front, which means you can change one number at a time instead of filling the whole form first.
| Field | What to enter | Default |
|---|---|---|
| Video title | required | How to change a bicycle tyre |
| Description | paste or type any amount of text | A four-minute walkthrough covering tools, removal and refitting. |
| Thumbnail URL | required | https://example.com/thumb.jpg |
| Upload date (YYYY-MM-DD) | required | 2026-08-01 |
| Duration (ISO 8601, e.g. PT4M30S) | optional | PT4M30S |
| Video file URL | optional | none |
How does the Video Schema Generator work?
Each output is derived from the inputs above in a single pass; there is no hidden state carried between runs, so the same inputs always give the same generated output.
An empty or malformed field stops the calculation rather than being treated as zero.
Worked example
These are the values the Video Schema Generator loads by default, and the result it produces from them. These are the exact values loaded when the page opens, and the answer they produce.
| Video title | How to change a bicycle tyre |
|---|---|
| Description | A four-minute walkthrough covering tools, removal and ref… |
| Thumbnail URL | https://example.com/thumb.jpg |
| Upload date (YYYY-MM-DD) | 2026-08-01 |
| Duration (ISO 8601, e.g. PT4M30S) | PT4M30S |
| Video file URL | (empty) |
| JSON-LD only | { "@context": "https://schema.org", "@type": "VideoObject", "name": "How to change a bicycle tyre"… |
|---|
Thumbnail resolution and hosting access both gate eligibility
name, description, thumbnailUrl and uploadDate are all required for VideoObject rich results, and two practical details beyond the schema fields themselves determine whether Google can actually use them.
Worth knowing
- Google recommends a thumbnail at least 1280px wide for the larger visual treatments. A low-resolution thumbnail can pass basic validation while being excluded from the more prominent display formats.
- A video hosted behind a login wall or paywall, or blocked from Googlebot, cannot be crawled and verified no matter how complete the surrounding schema is. The markup describes a video Google also needs independent access to.
- duration (ISO 8601 format, e.g. PT4M30S) is not required but enables key-moments and seek-to-timestamp features in the video result, worth adding whenever the actual runtime is known.
- contentUrl (a direct link to the video file) or embedUrl should be provided when available. Without either, Google relies entirely on the surrounding page context to confirm the video actually exists where the markup says it does.
How to use it
- Type Video title.
- Paste your content into Description.
- Set Thumbnail URL.
- Put Upload date (YYYY-MM-DD).
- Key in Duration (ISO 8601, e.g. PT4M30S).
- Fill in Video file URL.
- No submit step is needed; the output updates while you edit.
- Look at JSON-LD only in the output panel.
- Print gives a tidy version without the navigation, which is handy for attaching to a file.
What this tool does not do
- This inspects the markup you supply; it cannot see server headers or your live rankings.
- Search engines weigh hundreds of signals. No single on-page check predicts position.
- Precision beyond what the inputs justify is not meaningful, however many digits appear.
Frequently asked questions
Just Video title, Description, Thumbnail URL, Upload date (YYYY-MM-DD), Duration (ISO 8601, e.g. PT4M30S) and Video file URL. Nothing starts empty, so the quickest approach is to replace the one number you actually care about.
With the values loaded when the page opens, JSON-LD only comes out as { "@context": "https://schema.org", "@type": "VideoObject", "name": "How to change a bicycle tyre"…. Overwrite any of the starting values and the result follows.
No. Disconnect from the internet and it still works; that is the simplest proof there is no server call.
No payment and no login. Advertising covers the running costs.
There is no estimation step. The result is computed, not inferred.