Issue #180 · important
Issue 180
What is this issue?
This issue checks whether a website has a dedicated video sitemap that helps search engines discover and index video content, enabling video rich results in Google Search.
A passing implementation means:
- A video sitemap exists at a standard location (e.g.,
/video-sitemap.xmlor/sitemap-video.xml) - The sitemap is properly formatted with
<video:video>entries following the Video Sitemap schema - Videos are listed with required metadata (URL, thumbnail, title, description)
- The video sitemap is referenced in the main sitemap or robots.txt
Example:
<?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://example.com/videos/tutorial</loc>
<video:video>
<video:thumbnail_loc>https://example.com/thumbs/tutorial.jpg</video:thumbnail_loc>
<video:title>SEO Tutorial for Beginners</video:title>
<video:description>Learn SEO basics in this comprehensive guide</video:description>
<video:content_loc>https://example.com/videos/tutorial.mp4</video:content_loc>
<video:duration>600</video:duration>
</video:video>
</url>
</urlset>
Why does it matter?
Video Discovery: Search engines may not discover videos that are loaded via JavaScript, embedded from third-party platforms, or located deep in the site structure. A video sitemap ensures all videos are found.
Video Rich Results: Properly indexed videos can appear in Google Video search and may be eligible for video rich results in regular search results with video thumbnails and duration.
SEO Traffic: Videos can drive significant traffic through Google Video search and enhance regular search results with visual appeal.
Metadata Context: The video sitemap provides important metadata (duration, thumbnail, title, description) that helps search engines understand and rank video content.
SEO Health Score: Having a video sitemap improves the technical SEO score by demonstrating comprehensive video content optimization.
How to fix it
-
Create a video sitemap - Generate an XML sitemap specifically for videos following the Video Sitemap schema.
-
Include required metadata - For each video, include:
<video:content_loc>or<video:player_loc>(required)<video:thumbnail_loc>(required)<video:title>(required)<video:description>(required)<video:duration>(recommended, in seconds)
-
Add optional metadata - Consider including:
<video:publication_date><video:tag><video:category><video:family_friendly>
-
Submit the sitemap - Add the video sitemap URL to:
- Google Search Console
- Your main sitemap index file (if using one)
- The
Sitemap:directive in robots.txt
-
Keep it updated - Ensure the sitemap is regenerated when new videos are added or old ones removed.
-
Validate the format - Use Google Search Console's sitemap testing tool to verify the sitemap is properly formatted.
Examples
Example 1: Basic Video Sitemap
Problematic State (Fails): No video sitemap exists. Videos are only discoverable through crawling HTML pages.
Corrected State (Passes):
Create a video sitemap at /video-sitemap.xml:
<?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://example.com/videos/tutorial</loc>
<video:video>
<video:thumbnail_loc>https://example.com/thumbs/tutorial.jpg</video:thumbnail_loc>
<video:title>SEO Tutorial for Beginners</video:title>
<video:description>Learn SEO basics</video:description>
<video:content_loc>https://example.com/videos/tutorial.mp4</video:content_loc>
<video:duration>600</video:duration>
</video:video>
</url>
</urlset>
Example 2: Missing Sitemap Declaration
Problematic State (Fails):
A video sitemap exists at /video-sitemap.xml but is not declared in robots.txt.
Corrected State (Passes): Add the sitemap to robots.txt:
User-agent: *
Disallow: /admin/
Sitemap: https://example.com/sitemap.xml
Sitemap: https://example.com/video-sitemap.xml
Example 3: Videos Not Discoverable via HTML
Problematic State (Fails): Videos are loaded via JavaScript and not present in the initial HTML:
<div id="video-player"></div>
<script>
// Video loaded dynamically via JavaScript
</script>
Corrected State (Passes): Create a video sitemap to ensure these videos are discovered:
<url>
<loc>https://example.com/videos/tutorial</loc>
<video:video>
<video:content_loc>https://example.com/videos/tutorial.mp4</video:content_loc>
<video:thumbnail_loc>https://example.com/thumbs/tutorial.jpg</video:thumbnail_loc>
</video:video>
</url>
How PixyScan detects this
PixyScan performs the following checks:
-
Looks for video sitemap files - The crawler searches for common video sitemap filenames (e.g.,
video-sitemap.xml,sitemap-video.xml,videos-sitemap.xml). -
Checks sitemap index references - PixyScan examines the main sitemap index file to see if it references a video sitemap.
-
Validates robots.txt - The system checks if the
Sitemap:directive in robots.txt includes a video sitemap URL. -
Parses sitemap content - If a video sitemap is found, PixyScan validates that it:
- Is properly formatted XML
- Contains valid
<video:video>entries - Has required metadata fields
- References accessible video files
-
Issue Identification: PixyScan raises issues when:
- No video sitemap is discovered (SUGGESTION)
- The video sitemap is not declared in robots.txt (SUGGESTION)
- Video URLs in the sitemap return errors (WARNING)
- The sitemap format is invalid (CRITICAL)