Video Sitemap

What a video sitemap is and when you need one — the required and optional video:video tags, the limits, accepted media and thumbnail file types, multiple videos per page, and the mRSS alternative.

First published: Jun 22, 2026 · Last updated: Jul 18, 2026 · Advanced
demand #8 in Discovery#41 in How Search Works#193 in Technical SEO#267 on the site
1 evidence signal on this page

A video sitemap is an XML sitemap that uses Google's video:video extension to tell Google about videos on your pages, especially newly added or otherwise hard-to-discover ones. Each video needs four required pieces of metadata — a thumbnail (video:thumbnail_loc), a title (video:title), a description (video:description), and at least one of video:content_loc (the media file) or video:player_loc (the player) — and neither content_loc nor player_loc can be the same URL as the page's own loc. The namespace is http://www.google.com/schemas/sitemap-video/1.1, the repeated video:tag element caps at 32 per video (that's not a limit on total metadata fields), duration runs 1–28,800 seconds, and the description caps at 2,048 characters. Every referenced URL — page, thumbnail, media file — must be crawlable: no robots.txt block, no login wall, and content_loc can't be a streaming-only protocol. Use the current Google file-type list (the old .flv/.ra enumeration is stale), and don't panic over the tags Google deprecated in 2022 — they're safe to leave. mRSS is an accepted alternative. Bing does not document video-sitemap support.

TL;DR — A video sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. is an XML sitemapAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. using the video:video extension (namespace http://www.google.com/schemas/sitemap-video/1.1), most useful for videos that are newly added or otherwise hard to discover. Required per video: <video:thumbnail_loc>, <video:title>, <video:description>, plus at least one of <video:content_loc> (the media file) or <video:player_loc> (the player) — neither can be the same URL as the page’s own <loc>. Optional tags refine it within limits — the repeated <video:tag> element caps at 32 per video (not a total-tag-count limit), duration 1–28,800 s, description ≤2,048 chars. You can nest multiple <video:video> blocks under one <loc> for a page with several videos. Every referenced URL must be crawlable (not robots-blocked, no login wall), and content_loc can’t be a streaming-only protocol. Use Google’s current content_loc and thumbnail file-type lists; the tags Google deprecated in 2022 are safe to leave in place. mRSS is an accepted alternative. Bing does not document video-sitemapA sitemap is a file that lists the pages, images, videos, and other files on your site so search engines can discover them. It helps discovery, but submitting a sitemap doesn't guarantee crawling or indexing. support.

Evidence for this claim A video sitemap supplies Google with video metadata, particularly for videos that are difficult to discover by normal crawling. Scope: Current Google video sitemap guidance. Confidence: high · Verified: Google Search Central: Video sitemaps Evidence for this claim Video sitemap entries require thumbnail URL, title, description, and either content URL or player URL; optional fields have documented constraints. Scope: Current Google video sitemap reference. Confidence: high · Verified: Google Search Central: Video sitemap reference

What a video sitemap actually is

A video sitemapA video sitemap is an XML sitemap (or mRSS feed) that uses the video:video extension to tell Google about videos hosted on your pages — the landing page, a thumbnail, a title, a description, and a link to the video file or player. It helps Google discover and surface video content, but it doesn't guarantee indexing. is a normal XML sitemapAn XML sitemap is a UTF-8 file listing the canonical URLs on your site (with optional lastmod) so search engines can discover and prioritize them. It's a discovery and diagnostic aid, not a guarantee of indexing — and Google ignores its priority and changefreq tags. with Google’s video extension switched on. You add the video namespace to your <urlset>http://www.google.com/schemas/sitemap-video/1.1 — and then, inside each <url> block, you describe the videos on that page with <video:video> tags. The <loc> points at the page the video sits on (its landing page or watch page), not at the video file; the file lives inside <video:content_loc>.

You don’t have to maintain a separate file. You can add video:video blocks to an existing XML sitemap right alongside (or in the same way as) your page URLs — the same way image tags get folded into a regular sitemap. And there’s a non-XML option: Google also accepts an mRSS (Media RSSAn RSS or Atom feed is an XML file listing a site's most recently published or updated URLs. Search engines accept it as a sitemap-style discovery signal for fresh content — not a replacement for a full XML sitemap.) feed as a way to provide the same video information.

When you need one

A video sitemap is the explicit way to tell Google what videos you have and how to present them. Google’s own framing is narrower than “use this for every video”: it calls out newly added videos and otherwise hard-to-discover content as where the extension earns its keep — for example, videos that are lazy-loaded, JavaScript-injected, or behind a custom player, or where you want full control over the title, description, and thumbnail Google associates with each video instead of letting it infer those. As with every sitemap, it’s a discovery aid — it helps Google find and understand your videos, but it never guarantees a video is indexedStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. or surfaced.

Required tags

Every video needs a parent <video:video> block and, inside it, four required pieces of metadata:

  • <video:video> — the parent element wrapping all the information about a single video.
  • <video:thumbnail_loc>“A URL pointing to the video thumbnail image file.”
  • <video:title>“The title of the video. All HTML entities must be escaped or wrapped in a CDATA block.”
  • <video:description> — the description of the video (≤2,048 characters).
  • At least one of:
    • <video:content_loc>“A URL pointing to the actual video media file.” This is the one Google recommends when you can supply it.
    • <video:player_loc> — a URL to a player that embeds/plays the video.

If you can give both content_loc and player_loc, do — but one is enough to be valid. One constraint applies to both: neither content_loc nor player_loc can be the same URL as the page’s own <loc>. Google documents this requirement separately for each tag — it’s not optional, and it trips up sitemaps that reuse the landing-page URL as a placeholder media/player link.

Beyond the required set, you can refine each video with optional tags: <video:duration>, <video:expiration_date>, <video:rating>, <video:view_count>, <video:publication_date>, <video:family_friendly>, <video:restriction>, <video:platform>, <video:requires_subscription>, <video:uploader>, <video:live>, and <video:tag>. They help Google understand freshness, eligibility, and context — for example, expiration_date tells Google when to stop showing a video, and live flags a live stream.

Three limits to respect:

  • <video:tag> caps at 32 per video. This is a limit on the repeated keyword-tag element specifically (create one <video:tag> per keyword, up to 32) — it is not a cap on the total number of metadata fields a <video:video> block can carry. A video with the four required tags plus several optional ones (duration, rating, publication date, and so on) is fine; only the count of <video:tag> elements is bounded at 32.
  • <video:duration> must be 1–28,800 seconds (that’s a hard ceiling of 8 hours).
  • <video:description> ≤2,048 characters.

Multiple videos on one page

If a single page hosts more than one video, you don’t create multiple <url> entries — you keep one <loc> for the page and nest multiple <video:video> blocks inside that same <url>. Each <video:video> describes one video, with its own thumbnail, title, description, and content/player link.

TIP Validate the sitemap envelope, then inspect the video extension separately

My Sitemap Validator checks the underlying XML, loc values, namespaces, limits, and lastmod format. It does not currently validate every required video:* field, so pair it with Google’s video-sitemap documentation and Search Console.

Use my Sitemap Validator to catch base-file failures before you troubleshoot the video metadata inside each URL entry. Sitemap Validator Free

  1. Validate the XML envelope and ordinary sitemap fields.
  2. Manually confirm each video block has the required thumbnail, title, description, and content or player location.
  3. Submit the file and use Search Console’s Video indexing report for Google’s outcome.

Accessibility: everything you reference must be crawlable

This is the rule that quietly breaks video sitemaps. Every URL you put in the file — the page in <loc>, the <video:thumbnail_loc>, and the <video:content_loc>/<video:player_loc> — has to be fetchable by Google:

  • Not blocked in robots.txt. If the thumbnail directory or the media file is disallowed, Google can’t use it.
  • Not behind a login wall or any access gate.
  • content_loc must be a directly fetchable filestreaming-only protocols are not supported. If your video is only available over a streaming protocol rather than as a file Google can download, point Google at the player with player_loc instead, or provide a fetchable media file for content_loc.

Accepted file types

Use Google’s current lists here — the older enumeration that included formats like .flv and .ra/.ram is stale, and a lot of third-party guides still quote it.

<video:content_loc> media files — Google’s supported video formats are: 3GP, 3G2, ASF, AVI, DivX, M2V, M3U, M3U8, M4V, MKV, MOV, MP4, MPEG, OGV, QVT, RAM, RM, VOB, WebM, WMV, XAP. The file at that URL should be one of these and directly fetchable.

<video:thumbnail_loc> thumbnails — supported image formatsThe file encoding used to store an image (JPEG, PNG, WebP, AVIF, SVG, GIF) — it drives file size and Core Web Vitals, but carries no direct ranking weight. are BMP, GIF, JPEG, PNG, WebP, SVG, and AVIF. The thumbnail must be at least 60×30 pixels (larger is preferred) and sit at a stable, crawlable URL — don’t point it at a URL that rotates or expires.

Deprecated tags (safe to leave)

Google announced this deprecation on May 6, 2022, effective August 6, 2022: <video:category>, the allow_embed and autoplay attributes on <video:player_loc>, <video:gallery_loc>, <video:price>, and <video:tvshow>. You don’t need to rush to strip these out. Per Google’s announcement, these tags “will have no effect on indexingStoring a crawled page in the search index so it can appear in results. Crawled is not the same as indexed — Google selects what to keep, and indexing isn't guaranteed. and search features” and there’s “no immediate action required” — you can leave them in place without drawbacks. Remove them on your own schedule, or not at all.

How this fits the rest of the sitemap family

A video sitemap is one extension among several. The XML sitemap is the base format; the image sitemapAn image sitemap is a sitemap (or an extension added to an existing sitemap) that lists the images on your pages using Google's image namespace, helping Google discover images it might otherwise miss. is the parallel for images; a sitemap indexA sitemap index is a sitemap of sitemaps — a single file that lists your other sitemap files instead of listing URLs directly. It's how large sites stay under the 50,000-URL / 50MB-per-sitemap limit while submitting just one file. ties multiple sitemap files together once you cross the 50,000-URL / 50MB-per-file limit; and the sitemaps overview covers when you need any of this at all and how to submit it. Video tags can live in their own file or be combined into a regular sitemap. For the bigger picture of how engines find your URLs in the first place, see discoveryURL discovery is how search engines find URLs to crawl — by pull (following links and reading sitemaps) and by push (you notify them via IndexNow, the Indexing API, or WebSub). It's the find step that comes before a page is ever fetched..

One scope note: this is Google’s extension. Bing does not document video-sitemap support — it defers to the base sitemaps.org protocol — so treat video:video as a Google feature and don’t expect Bing to act on it.

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.