Video SEO: How to Get Your Videos to Appear on Google and YouTube
Table of contents
A video doesn't show up on Google because it's good; it shows up because Google can find, crawl and index it, which needs a watch page, an accessible thumbnail and a stable URL. This video SEO guide covers the real requirements.
How videos surface on Google (and why YouTube is a separate system)
Videos can appear on the main results page, in Video mode, in Google Images and in Discover. Four surfaces with one shared entry requirement: Google must be able to crawl and index the page the video lives on.
The most common mistake is treating Google and YouTube as one system. They are not. On Google, page indexation and metadata decide. In YouTube search, what matters is how well title, description and content match the query, plus the engagement that video earns: its results are not a list of the most-viewed videos.
The requirement almost nobody meets: the watch page
What a watch page is (and isn't)
Google calls a "watch page" any page whose main purpose is to show a single video: a video landing page, an episode page, a news video page or a sports clip page.
These are not: a blog post reviewing an embedded video, a product page with a 360 video, a category page listing several videos or a movie review with the trailer embedded. There the video is complementary. Also, Google indexes only one video per page.
Video indexing requirements, in order
- The watch page must be indexed and perform well in Search. Indexing the page does not guarantee indexing the video: without traffic and quality, the video can stay out.
- The video must be embedded on that page and not hidden behind other elements.
- With a paywall (login or subscription), add paywall structured data so Google can still index the video.
- The video needs a valid thumbnail at a stable URL.
How the video must be embedded in the HTML
Google finds videos referenced with <video>, <embed>, <iframe> or <object>. Four mistakes break detection: using fragment identifiers; injecting it only with JavaScript so it never appears in the rendered HTML; depending on a media API that can fail; and requiring a user action to load the player. That last one triggers the "Cannot determine video position and size" error: Google sees the player image, not the video. Check rendering with URL Inspection in Search Console (Video SEO best practices).
Thumbnail and file: the two details that break indexing
Thumbnail specifications are strict and widely ignored. Supported formats: BMP, GIF, JPEG, PNG, WebP, SVG and AVIF. Minimum 60x30 pixels. It must be reachable by Googlebot, not blocked in robots.txt or behind a login, and live at a stable URL. Then there is the detail that sinks modern designs: transparent thumbnails are not valid, because at least 80% of the pixels must have an alpha value above 250. You can declare it with the poster attribute, with video:thumbnail_loc in a sitemap, with thumbnailUrl in structured data or with og:video:image.
The file matters too. Google processes formats ranging from 3GP, AVI and MKV to MOV, MP4, WebM and WMV; data URLs are not supported. Both the video and the thumbnail must live at stable URLs, because CDNs that generate fast-expiring links break indexing. If exposing the file worries you, you can serve contentUrl only to clients verified as Googlebot.
These reasons show up in the video indexing report: "No thumbnail URL provided", "Unsupported thumbnail format", "Invalid thumbnail size" or "Thumbnail is transparent". When one appears, the problem is almost always the image. First review how to optimize your images for SEO.
Describing your video to Google: VideoObject, video sitemap or OGP
Google accepts three routes: structured data, video sitemaps and Open Graph Protocol. You can combine them, but with one strict rule: the same thumbnail, title and video URL across every source describing it on the same page. The general framework is in how to use structured data.
VideoObject: required and recommended
In VideoObject there are only three required properties: name (a unique title per video), thumbnailUrl (repeatable) and uploadDate in ISO 8601, ideally with a timezone. The recommended ones are contentUrl, the most effective route for Google to download the actual file; embedUrl as an alternative; description, unique and without HTML tags; duration in ISO 8601 (for example PT1M54S); and potentialAction with SeekToAction. If your markup falls outside the guidelines, the site can receive a manual action: see the VideoObject documentation and rich snippets.
Video sitemap: minimum tags
A video sitemap is an extension of a regular sitemap: the loc points to the watch page and, inside video:video, the required tags are video:thumbnail_loc, video:title and video:description. The most useful optional ones are video:player_loc, video:content_loc, video:restriction and video:expiration_date. It must be reachable over HTTP or FTP, because streaming protocols are not supported. You can add the tags to your existing sitemap, as explained in how to set up Google XML sitemaps, or build a separate one. Full format in the video sitemaps guide.
Extra features: previews, Key Moments and LIVE
Previews are picked by Google from a few seconds of the file, so it needs to be able to download the video; length is controlled with max-video-preview. Key Moments are detected automatically, but you can declare them with Clip (start, end and label) or with SeekToAction, where Google infers segments from the URL using the time parameter. In both cases the video must allow deep links to a point other than the start, the markup must sit on a page where the video can be watched, and total duration must be at least 30 seconds. On YouTube, chapters are declared in the description using the hour:minute:second format.
Two warnings: nosnippet removes Key Moments, including the automatic ones; and for live streams BroadcastEvent can trigger the LIVE badge. Google does not guarantee that a feature will be enabled just because you add markup.
YouTube ranks differently: what actually matters
Inside YouTube, ranking depends on how well title, description and content match the search, and on which videos earn the most engagement for that search. Changing the title or thumbnail can reorder a video, but the cause is the shift in viewer interaction. Best practices: compelling thumbnails and titles that stay faithful to the content, no all-caps and no sensationalism, in line with the February 2026 Discover core update. The explanation is in YouTube's Search and Discovery FAQ.
The 2026 novelty is that Search Console now lets you create platform properties for YouTube, Instagram, TikTok and X and see how that content performs on Google Search and Discover, with annotations to measure title changes, as announced on the Search Central blog.
Monitor and fix with Search Console
Four tools solve almost everything: the video indexing report (how many indexed pages contain an indexed video and why the rest were not indexed), the video rich results report (VideoObject problems), the performance report with the "Videos" search appearance, and URL inspection. The official reasons are listed in the video indexing report.
Read it with care: it only covers indexed pages and its totals are not unique videos, since a page can hold several videos or the same one twice. When you fix something, use the validate fix button and be patient, it can take about two weeks. To remove a video: a 404 or noindex on the page if the removal is permanent (see meta robots and noindex), or a removal request if it is urgent. If the video genuinely expires, declare the date with expires: with a past date it drops out of video results even though the page may still show as a text result. And mind the weight: a heavy video drags down the page, which also competes on Core Web Vitals and loading speed.
Video SEO checklist: from not showing to indexed
- Is it a real watch page or a blog post with an embedded video?
- Is the page indexed and performing in Search?
- Is the video visible in the rendered HTML without requiring clicks?
- Is there only one relevant video per page?
- Is the thumbnail in an allowed format, larger than 60x30 pixels, opaque and at a stable URL?
- Are
name,thumbnailUrlanduploadDatein the markup, without contradicting the sitemap or Open Graph? - Is the file in a supported format at a stable URL?
- Can Google download the video for previews and Key Moments?
The underlying idea runs through the whole official documentation: a video ranks when the page it lives on is a good page. The file is the ingredient, not the dish.