Find every RSS and Atom feed on a page, verify the XML is valid, and count items. Critical for blogs, podcasts, newsletters, and AI-search syndication.
RSS gets dismissed as a 2005 technology, and that's wrong. The number of automated systems consuming RSS today is HIGHER than at any point in the feed-reader era — they're just invisible. Perplexity, ChatGPT browsing, Feedly's 14M users, every podcast app, half the AI news aggregators built since 2023, and most enterprise internal news portals all consume RSS. If your feed is broken or undiscoverable, you're cut off from those channels without anyone telling you.
## Why AI search makes RSS matter again
When ChatGPT or Perplexity needs current information about your site, they look for an RSS feed first because it's structured, semantically clean, and timestamped — far easier to ingest than scraping HTML. Sites with valid, fresh RSS feeds get pulled into AI search results more reliably than sites without. This is one of the cheapest AI-search optimisations available.
## Auto-discovery is the part most sites get wrong
RSS feeds are only useful if readers can find them. The standard mechanism is the `<link rel="alternate">` tag in your `<head>`:
```html <link rel="alternate" type="application/rss+xml" title="My Blog" href="/feed.xml"> ```
When this is present, browsers, feed readers, and AI ingest tools all auto-discover the feed. Without it, even existing readers can't add your site without you manually telling them the feed URL. We check for this auto-discovery tag and flag its absence even when the feed itself exists.
## Common feed validity issues
- **Unencoded ampersands** in `<title>` or `<description>` (must be `&` even inside `<![CDATA[]]>`) - **Malformed dates** — must be RFC-822 (`Wed, 15 May 2026 12:00:00 GMT`) for RSS, ISO-8601 for Atom - **Missing required fields** — `<channel>` needs `<title>`, `<link>`, `<description>`; items need `<title>` or `<description>` - **Wrong content-type** — should be `application/rss+xml` or `application/atom+xml`, not `text/xml`
## RSS vs Atom — which should I use?
Both work. Atom is technically better-specified (proper date handling, namespaced extensions, explicit content-type rules) but RSS 2.0 has wider tooling support. WordPress, Substack, Ghost, and most CMSes emit RSS 2.0 by default. If you're hand-rolling, use Atom. If you're using a CMS, use whatever it generates.
## What this tool DOESN'T check
We don't check feed content quality (item descriptions length, image inclusion, full-text vs excerpt). We don't check `lastBuildDate` freshness. We don't check podcast-specific tags. For deep validation use the W3C Feed Validator. This tool is for the common case: "does my feed exist, is it linked, and is it valid XML?"
RSS isn't dead — it's how Feedly, NewsBlur, Reeder, podcast platforms, AI search engines (Perplexity, ChatGPT browsing), and dozens of internal news systems still consume your content. A broken or undiscoverable feed cuts off a syndication channel you didn't know you had. Auto-discovery (via `<link rel="alternate">` in `<head>`) is what makes "subscribe in Reader" actually work.
We fetch your URL's HTML and extract all `<link rel="alternate">` tags with `type="application/rss+xml"` or `type="application/atom+xml"`. We resolve relative URLs against the base. Each discovered feed URL is HEAD-checked for reachability and content-type, then GET-fetched for XML validation. Validation: we parse the XML and verify it has either a root `<rss>` (RSS 2.0) or `<feed>` (Atom 1.0) element with at least the minimum required children. Item counts are extracted from `<item>` (RSS) or `<entry>` (Atom). We do NOT probe `/feed`, `/rss`, `/atom.xml` style discovery paths — only feeds explicitly declared via `<link>`. If you're missing auto-discovery, that's the first thing this tool will flag.
Almost always because you're missing the auto-discovery `<link>` tag in `<head>`. The feed itself is fine; nothing on your homepage tells crawlers it exists.
Yes — more than at any point in the last decade. AI search engines (Perplexity, ChatGPT browse) prefer RSS over HTML scraping. Podcast platforms need it. 14M Feedly users still use it.
Either works. Atom is better-specified; RSS has wider CMS support. Use whatever your platform generates.
At least 10. Most readers cache shorter feeds poorly and may miss new items between fetches.
Full text wins for AI ingestion. Excerpts force tools to scrape your HTML for the rest, which they often fail at. Substack/Ghost full-text feeds get pulled into AI search far more reliably than excerpt-only feeds.