Video SEO

No Comments
Video seo

What Video SEO is

Video SEO is the work of getting your videos found, indexed, and shown as rich results in Google, video carousels, and on-page search. It runs on VideoObject structured data, a good thumbnail, an accurate transcript, and smart choices about where the video is hosted. Get it right and a single video can earn a thumbnail in search that pulls clicks a plain blue link never would.

The VideoObject markup that makes a video eligible

Google can't watch your video, so you describe it. VideoObject tells Google the title, description, thumbnail, upload date, duration, and where the file lives. Without it, your video may never surface as a rich result even if the page ranks.

<script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "VideoObject",
  "name": "How to Re-Pot a Snake Plant",
  "description": "A 4-minute walkthrough of re-potting a root-bound snake plant.",
  "thumbnailUrl": ["https://example.com/thumbs/snake-plant.jpg"],
  "uploadDate": "2026-02-14T08:00:00+00:00",
  "duration": "PT4M12S",
  "contentUrl": "https://example.com/video/snake-plant.mp4",
  "embedUrl": "https://example.com/embed/snake-plant",
  "hasPart": [{
    "@type": "Clip",
    "name": "Removing the root ball",
    "startOffset": 45,
    "url": "https://example.com/video/snake-plant.mp4?t=45"
  }]
}
</script>

The hasPart block with Clip objects is what powers Key Moments, the timestamped chapters Google shows under a video result. duration uses ISO 8601 (PT4M12S means 4 minutes 12 seconds), and uploadDate should reflect when the video actually went live.

Hosting choices and what each one costs you

Where you put the video shapes what SEO you can do with it. There's no single right answer, only trade-offs.

Hosting optionControl over schemaDiscovery upsideBest when
Self-hosted (your server / CDN)Full – you own the markupAll SEO credit flows to your pageYou want the video result to point at your site
YouTube embed on your pagePartial – add VideoObject yourselfYouTube's own reach plus your page'sYou want YouTube discovery and site embedding both
YouTube only (no site embed)None on your domainStrong on YouTube; nothing for your siteYouTube is the destination and your site isn't the goal
Vimeo / third-party playerPartial – depends on playerCleaner embeds, less native search reachPresentation and ad-free playback matter most

How to check it on your own site

  1. View source on a page with a video and search for "@type": "VideoObject". No markup means no video rich result, full stop.
  2. Confirm the thumbnailUrl resolves to a real, high-quality image. Google needs a crawlable thumbnail to show the result.
  3. Check that uploadDate and duration are present and correctly formatted. Bad ISO formatting silently invalidates the block.
  4. Run the page through the Rich Results Test and confirm it reports a valid Video result with no errors.
  5. If you want Key Moments, verify the hasPart / Clip timestamps line up with the actual video.
  6. Make sure the video is in a video sitemap or your main sitemap so Google can discover it reliably.
  7. Add captions or a transcript on the page. It aids accessibility and gives Google text to understand the content.

Common mistakes and how to fix them

  • Embedding a video with zero structured data. The page might rank, but the video won't get a thumbnail result. Add VideoObject to every page with a meaningful video.
  • Missing or tiny thumbnails. No crawlable, high-res thumbnailUrl means no video rich result. Supply a real image at a proper size.
  • Broken ISO 8601 duration. Writing duration: "4:12" instead of PT4M12S invalidates the markup. Use the correct format.
  • Key Moments timestamps that don't match the video. Misaligned Clip offsets confuse users and can get the feature dropped. Verify each start time.
  • Assuming a YouTube-only video helps your website. If it's not embedded on your page with your own schema, the SEO value stays on YouTube, not your domain.

FAQ

Do I need VideoObject schema if my video is on YouTube?

Only if you also embed it on your own page and want the rich result to point at your site. For YouTube-only videos, YouTube handles discovery and your domain gets nothing. Embed plus your own VideoObject gets you both.

What are Key Moments and how do I get them?

They're the timestamped chapters Google shows under a video result. You enable them with hasPart and Clip objects in your VideoObject, each with a startOffset that matches the video.

Why isn't my video showing a thumbnail in search?

Most often a missing or non-crawlable thumbnailUrl, no VideoObject markup, or a schema error. Run the Rich Results Test and fix what it flags, then check discovery via a video sitemap.

Do transcripts and captions help video SEO?

Yes. They make the video accessible and give Google text to understand what it contains, which supports both ranking and matching to queries. See why videos need captions.

Self-host or use YouTube?

Self-host when you want the search result and its authority to point at your own site. Use YouTube when its native reach is the goal. Many sites do both: host on YouTube for reach, embed with VideoObject for site-level rich results. For the full markup walkthrough, see the VideoObject schema guide and the video carousel and rich results guide.

Claude Vincent is a technical SEO consultant focused on crawlability, rendering, and AI-search visibility. He writes the field guides and case studies at SEO ProCheck, with a bias toward the durable, unglamorous work that decides whether search engines and AI answer engines can actually read and cite a site.

About SEO ProCheck

Technical SEO consulting and GEO strategy with 20 years of enterprise experience. Case studies, resources, and tools for search and AI visibility.

Work With Me

Technical SEO audits, GEO strategy, site migrations, and international SEO. Hourly consulting for teams who need hands-on support, not just reports.

Subscribe to our newsletter!

More from our blog