Skip to content
fhseohub a link building agency
  • Home
  • ServicesExpand
    • Listicle Brand Mentions
    • Guest Posting Service
    • Niche Edit Service
    • White Label Link Building Service
    • Press Release & Digital PR Services
  • Free SEO ToolsExpand
    • Word Counter
    • Keyword Density Checker
    • Text Style Generator: Free Online Tool
  • Blog
  • About
  • Contact
fhseohub a link building agency

Video Schema Generator

Validate with Google's Rich Results Test after publishing.

JSON-LD

FREE TOOL · NO SIGN-UP

A video schema generator builds VideoObject structured data in JSON-LD, the markup that tells Google a page contains a video and describes its title, thumbnail, upload date, duration and file or embed URL. Fill in the fields in the tool above and copy a ready-to-paste script block. It is built for site owners, bloggers and marketers who host or embed video and want it to be eligible for video features in Google Search. The result: valid VideoObject code in under a minute.

What the Video Schema Generator Builds for Your Page

The generator outputs one VideoObject block wrapped in a script tag with type application/ld+json. It includes the video’s name, description, thumbnail URL, upload date, duration, view count, content URL and embed URL, depending on what you fill in. Empty fields are left out, so the code stays clean.

Google can find videos on pages without markup, but structured data removes guesswork. It states exactly which video the page is about, which thumbnail to use and when the video was published. Google’s documentation says this information can help your video appear in video results, video mode and other places where videos are shown.

The tool covers the core properties most pages need. Advanced features such as Clip and SeekToAction for key moments, explained later, can be added to the output by hand.

How VideoObject markup works

VideoObject is a schema.org type for a video. Search engines read the JSON-LD block, match it with the video they detect on the page, and use the properties to understand and display it.

A minimal block names the video, points to a thumbnail and states when it was uploaded. Adding a description, duration and a URL to the video file or player makes the picture more complete. The duration you enter as mm:ss or hh:mm:ss is converted to the ISO 8601 format Google expects, for example 12:34 becomes PT12M34S.

The view count, if you add one, becomes an interactionStatistic with a WatchAction counter.

Required vs recommended properties

Google lists three required properties for video rich results: name, thumbnailUrl and uploadDate. The tool reminds you when any of them is missing.

Recommended properties include description, duration, contentUrl, embedUrl and interactionStatistic. The generator marks description as required in its form because a clear description helps both users and search engines, and Google recommends it.

Google also recommends providing either contentUrl or embedUrl, since that helps it fetch the video file and confirm details. Provide contentUrl if you can, because it points to the actual media file.

How to Generate Video Schema in Four Steps

The form follows the order Google cares about: identity first, timing second, location of the video third, and the code last. Each step below maps to a group of fields.

Step 1: Enter title, description and thumbnail

Use the same title visitors see on the page. Write a description of what the video covers in a sentence or two. Paste a full https URL to the thumbnail image. Google accepts common formats such as JPG, PNG and WebP and requires thumbnails to be at least 60 × 30 pixels, though larger images display better.

Step 2: Add upload date and ISO 8601 duration

Pick the upload date with the date picker; it is output as YYYY-MM-DD. Google recommends including a time zone, which you can add by hand, for example 2026-05-04T09:00:00+05:00. Enter duration as mm:ss or hh:mm:ss and the tool converts it to ISO 8601.

Step 3: Add contentUrl or embedUrl

contentUrl is the direct link to the video file, such as an MP4. embedUrl is the URL of the player, such as a YouTube embed URL. Add one or both.

Step 4: Copy the JSON-LD and paste it in the head

Click Copy, or Download to save video-schema.html. Paste the code in the page head or before the closing body tag, then test the URL in the Rich Results Test.

Getting Key Moments with Clip and SeekToAction

Key moments let viewers jump to specific sections of a video directly from search results. Google supports two ways to provide them for videos on your own pages. For YouTube videos, Google can use the chapters and timestamps set in the YouTube description instead.

Manual Clip timestamps

Clip markup lets you list the segments yourself. Inside the VideoObject, add a hasPart array of Clip objects, each with a name, startOffset and endOffset in seconds, and a url that opens the video at that point, such as https://example.com/video?t=120.

Use Clip when you want control over the exact labels and timings, for example in a tutorial with named steps. The labels should describe each segment clearly, such as “Installing the plugin” rather than “Part 2”.

This generator does not build Clip entries, so add them to the copied code by hand, then validate.

SeekToAction for automatic key moments

SeekToAction tells Google how your URL structure jumps to a timestamp, so Google can identify key moments automatically. Add a potentialAction to the VideoObject with type SeekToAction, a target URL pattern containing {seek_to_second_number}, and startOffset-input set to “required name=seek_to_second_number”.

This works when your player supports a time parameter in the URL. It is less work than writing Clips, but you do not control which moments Google picks. Use one approach or the other per video.

Making Videos Eligible on a True Watch Page

Google shows video features mainly for pages where the video is the main content. A video tucked into a sidebar or used as a decorative element on a text article is less likely to get video features, even with perfect markup.

What Google counts as a watch page

A watch page is a page whose main purpose is to show one video. The video should be prominent, near the top of the page and visible without scrolling far. A dedicated page for each video, with the title, description and perhaps a transcript around it, fits this best.

If you embed a video inside a long blog post, the markup is still valid, but Google may treat the page as an article that contains a video rather than a video page.

Video indexing report errors

Search Console’s Video indexing report shows which pages with videos Google indexed and why others were not. Common reasons include “Video isn’t on a watch page”, “Video outside the viewport”, “Video too small” and “Cannot determine the video’s position and size”.

Fix issues by giving each video a dedicated page, placing the player near the top, making it a reasonable size, and making sure the player and thumbnail are not blocked by robots.txt or lazy loading scripts that hide them from Googlebot. After changes, request validation in the report.

Video Schema vs Video Sitemap: When to Use Each

Video structured data describes a video on the page it sits on. A video sitemap is a separate XML file that lists many video pages with their details, which helps Google discover videos across a site, especially new ones.

Using both together

The two work well together. Structured data gives detail and context on each page. A video sitemap helps Google find those pages quickly. Keep the information consistent between them, with the same titles, thumbnails and dates. Large video libraries benefit most from adding a sitemap. Build one with the Video Sitemap Generator.

YouTube embeds and third-party players

You can add VideoObject markup to a page that embeds a YouTube or Vimeo video. Use the embed URL as embedUrl and the video’s thumbnail URL. Google can often index embedded YouTube videos without markup, but adding it on your own page confirms the details. Create the embed itself with the YouTube Embed Code Generator.

Video Markup Mistakes That Block Rich Results

Most failures fall into three groups: images Google cannot fetch, values it cannot parse, and markup that does not match the page.

Thumbnail too small or blocked

Thumbnails below the minimum size, or blocked by robots.txt, cannot be used. Use a full https URL to a crawlable image.

Wrong duration format

“12 minutes” is not valid. Use ISO 8601, like PT12M. The generator converts mm:ss for you.

Markup that doesn’t match the visible video

If the markup describes a different video, or a video that is not on the page, Google will ignore it and may treat it as misleading structured data.

Validate, Publish and Monitor Your Video Markup

Test the code in Google’s Rich Results Test, publish, then watch the Video indexing report in Search Console. Pair the markup with a video sitemap, link viewers to exact moments with the YouTube Timestamp Link Generator, and find more structured data tools in the FHSEO Hub free SEO tools library.

Video Schema Generator FAQs

No. Video schema makes a page eligible for video features, but Google decides whether to show them based on page quality, whether the video is the main content, technical access to the video and thumbnail, and the search query. Valid markup on a clear watch page gives you the best chance.

Yes. You can add VideoObject markup to your own page that embeds a YouTube video, using the YouTube embed URL as embedUrl and the video’s thumbnail. Google often indexes embedded YouTube videos without markup, but structured data confirms the title, description, date and thumbnail on your page and can help it understand them.

Yes. A page can include several VideoObject blocks, one for each video. Make sure each block describes a video that is visible on the page. Google mostly shows video features for pages where one video is the main content, so pages with many equal videos may be less likely to get them.

Google requires name, thumbnailUrl and uploadDate for video rich results. It recommends description, duration, contentUrl, embedUrl and interactionStatistic, plus Clip or SeekToAction for key moments. Supplying contentUrl or embedUrl helps Google fetch the video. The generator above covers all required and most recommended properties for VideoObject.

Update it whenever the video changes, such as a new thumbnail, title, description or file URL. You do not need to update view counts constantly. Keep markup consistent with the page and your video sitemap, and check the Video indexing report in Search Console after any major site change.

Link Building Agency for High-Quality Backlinks & SEO Growth

Guides

  • Guest Posting
  • Link Insertions
  • Press Release
  • Web Designs

Resources

  • Free SEO Tools
  • Link Building Glossary
  • Blog
  • About us
  • Contact

Follow

Facebook Instagram Linkedin Twitter TikTok YouTube
Scroll to top
  • Home
  • Services
    • Listicle Brand Mentions
    • Guest Posting Service
    • Niche Edit Service
    • White Label Link Building Service
    • Press Release & Digital PR Services
  • Free SEO Tools
    • Word Counter
    • Keyword Density Checker
    • Text Style Generator: Free Online Tool
  • Blog
  • About
  • Contact
Search