xmlns:video · 1.1free · no sign-up

Video sitemap generator

Paste rows from a spreadsheet. Missing required fields are flagged by row before any XML is produced, so you never submit entries Google will drop.

1

Videos

Header row required. Required columns: page_url, thumbnail_loc, title, description, and content_loc or player_loc. Optional: duration, publication_date, expiration_date, rating, view_count, family_friendly, requires_subscription, live, tags, uploader. Duration accepts seconds, mm:ss, hh:mm:ss or ISO 8601 (PT10M). Separate tags with |.

Or upload a CSV
2

Your sitemap

2 URLs
  • 2entries
  • 1file
  • 1.6 KBuncompressed
  • Validprotocol check
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1">
  <url>
    <loc>https://www.example.com/videos/grill-steak</loc>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/123.jpg</video:thumbnail_loc>
      <video:title>Grilling steaks for summer</video:title>
      <video:description>Alkis shows you how to get perfectly done steaks every time.</video:description>
      <video:content_loc>https://streamserver.example.com/video123.mp4</video:content_loc>
      <video:duration>600</video:duration>
      <video:publication_date>2026-09-12T00:00:00+00:00</video:publication_date>
      <video:family_friendly>yes</video:family_friendly>
      <video:tag>grilling</video:tag>
      <video:tag>summer</video:tag>
      <video:tag>steak</video:tag>
    </video:video>
  </url>
  <url>
    <loc>https://www.example.com/videos/knife-skills</loc>
    <video:video>
      <video:thumbnail_loc>https://www.example.com/thumbs/124.jpg</video:thumbnail_loc>
      <video:title>Knife skills in five minutes</video:title>
      <video:description>Three cuts every home cook should know.</video:description>
      <video:player_loc>https://www.example.com/player?video=124</video:player_loc>
      <video:duration>312</video:duration>
      <video:publication_date>2026-10-02T00:00:00+00:00</video:publication_date>
      <video:family_friendly>yes</video:family_friendly>
      <video:tag>knives</video:tag>
      <video:tag>basics</video:tag>
    </video:video>
  </url>
</urlset>

Next: upload video-sitemap.xml to your site root so it is reachable at https://www.example.com/video-sitemap.xml, add this line to robots.txt, then submit video-sitemap.xml in Google Search Console (Indexing → Sitemaps) and Bing Webmaster Tools.

Sitemap: https://www.example.com/video-sitemap.xml

Required and optional fields

Every <video:video> needs a thumbnail_loc, title, description (up to 2,048 characters) and either content_loc (the media file) or player_loc (an embeddable player). Optional fields include duration in seconds (1–28,800), publication and expiration dates, rating, view count, family-friendly, subscription and live flags, up to 32 tags, and uploader.

The page URL should be the page where the video is the main content. Do not point content_loc at the HTML page itself — it must be the video file.

Questions

What duration format can I use?

Seconds (600), mm:ss (10:00), hh:mm:ss (1:02:03) or ISO 8601 (PT10M). It is written as whole seconds.

Do I need both content_loc and player_loc?

One is enough. Provide content_loc when Google can fetch the file directly, player_loc for an embedded player such as YouTube or Vimeo.

Can one page have several videos?

Yes. Rows with the same page_url become multiple video entries on one URL.

Is video structured data an alternative?

Yes — VideoObject markup on the page works too. Many sites use both; the sitemap helps Google discover videos faster.