Last updated
RSS Feed Validator Examples
The RSS Feed Validator checks RSS and Atom feeds for specification compliance and common errors. Below are examples of valid feeds, common errors, and podcast-specific validation.
Valid RSS 2.0 Feed Structure
A minimal valid RSS 2.0 feed:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>My Blog</title>
<link>https://example.com</link>
<description>Latest posts from My Blog</description>
<language>en-us</language>
<lastBuildDate>Tue, 17 Mar 2026 14:30:00 +0000</lastBuildDate>
<item>
<title>My First Post</title>
<link>https://example.com/posts/first</link>
<description>This is the post summary.</description>
<pubDate>Tue, 17 Mar 2026 10:00:00 +0000</pubDate>
<guid>https://example.com/posts/first</guid>
</item>
</channel>
</rss>
Validation result: ✓ Valid RSS 2.0
Common Error — Missing Required Elements
A feed missing the required description element:
<channel>
<title>My Blog</title>
<link>https://example.com</link>
<!-- Missing: <description> -->
</channel>
Validation error:
ERROR (line 3): Missing required element <description>
The <channel> element must contain <title>, <link>, and <description>.
Common Error — Invalid Date Format
Incorrect date format in pubDate:
<pubDate>2026-03-17</pubDate>
Validation error:
ERROR (line 12): Invalid date format in <pubDate>
Expected RFC 2822 format: "Tue, 17 Mar 2026 10:00:00 +0000"
Found: "2026-03-17" (ISO 8601 format is not valid here)
Corrected:
<pubDate>Tue, 17 Mar 2026 10:00:00 +0000</pubDate>
Common Error — Duplicate GUIDs
Validation warning:
WARNING: Duplicate GUID found: "https://example.com/posts/first"
GUIDs must be unique across all items in the feed.
Feed readers use GUIDs to track which items have been read.
Duplicate GUIDs may cause items to be skipped or marked as read incorrectly.
Common Error — Malformed XML
<title>Post with & ampersand</title>
Validation error:
ERROR (line 8): Malformed XML — unescaped ampersand
Special characters must be escaped in XML:
& → &
< → <
> → >
" → "
Corrected:
<title>Post with & ampersand</title>
Valid Podcast RSS Feed
A podcast feed with required iTunes namespace elements:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
<title>My Tech Podcast</title>
<link>https://example.com/podcast</link>
<description>Weekly tech discussions</description>
<language>en-us</language>
<itunes:author>Jane Smith</itunes:author>
<itunes:category text="Technology"/>
<itunes:explicit>false</itunes:explicit>
<itunes:image href="https://example.com/podcast-cover.jpg"/>
<itunes:summary>Weekly discussions about software development</itunes:summary>
<item>
<title>Episode 42: Building APIs</title>
<description>We discuss REST API design best practices.</description>
<pubDate>Tue, 17 Mar 2026 08:00:00 +0000</pubDate>
<guid>https://example.com/podcast/ep42</guid>
<enclosure url="https://example.com/audio/ep42.mp3"
length="45678901"
type="audio/mpeg"/>
<itunes:duration>45:32</itunes:duration>
<itunes:explicit>false</itunes:explicit>
</item>
</channel>
</rss>
Validation result: ✓ Valid RSS 2.0 podcast feed
Apple Podcasts: ✓ All required elements present
Podcast Error — Missing Enclosure
Validation error:
ERROR: Episode "Episode 42: Building APIs" is missing <enclosure>
Podcast episodes must include an <enclosure> element with:
url: The audio/video file URL
length: File size in bytes
type: MIME type (audio/mpeg, audio/mp4, video/mp4, etc.)
Required format:
<enclosure url="https://example.com/audio/ep42.mp3"
length="45678901"
type="audio/mpeg"/>
Apple Podcasts Compliance Check
Apple Podcasts validation results:
✓ itunes:author present
✓ itunes:category uses valid taxonomy value "Technology"
✓ itunes:explicit present (false)
✓ itunes:image present and accessible (1400×1400 px recommended)
✓ itunes:summary present
⚠ WARNING: itunes:image is 500×500 px
Apple Podcasts recommends 1400×1400 to 3000×3000 px
✓ All episode enclosures have valid MIME types
✓ No duplicate GUIDs found
✓ All episode pubDates are in RFC 2822 format
Feed Size Warning
Validation warning:
WARNING: Feed contains 847 items (total size: 2.4 MB)
Large feeds cause slow loading and timeouts in some feed readers.
Recommendation: Limit feed to the most recent 50-100 items.
Use pagination (rel="next") for archives.
Character Encoding Check
Validation error:
ERROR: Character encoding mismatch
XML declaration: <?xml version="1.0" encoding="UTF-8"?>
Actual encoding: ISO-8859-1 (detected from byte order mark)
Non-ASCII characters in the feed are not valid UTF-8.
Fix: Save the file as UTF-8 or update the encoding declaration.
Valid Atom 1.0 Feed
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>My Blog</title>
<link href="https://example.com"/>
<updated>2026-03-17T14:30:00Z</updated>
<id>https://example.com/feed</id>
<author><name>Jane Smith</name></author>
<entry>
<title>My First Post</title>
<link href="https://example.com/posts/first"/>
<id>https://example.com/posts/first</id>
<updated>2026-03-17T10:00:00Z</updated>
<summary>Post summary here.</summary>
</entry>
</feed>
Validation result: ✓ Valid Atom 1.0
Note: Atom uses ISO 8601 dates (unlike RSS which uses RFC 2822)
- Validate RSS 2.0 and Atom 1.0 feeds against their specifications
- Check for missing required elements with specific error messages
- Validate RFC 2822 date format in pubDate and lastBuildDate
- Detect duplicate GUIDs that break feed reader tracking
- Catch malformed XML including unescaped special characters
- Podcast validation: enclosure, iTunes namespace, Apple Podcasts compliance
- Feed size warnings for feeds with too many items
- Character encoding validation and mismatch detection