RSS / Atom Feed Formats Reference

RSS 2.0 and Atom 1.0 required and optional elements with namespace context.

Searchable RSS 2.0 and Atom 1.0 element reference showing the required flag, channel/feed versus item/entry level, content model and date format for every common feed element. It runs free in your browser on Gera Tools, with nothing uploaded.

Last updated Source: Gera Tools

What is the difference between RSS 2.0 and Atom 1.0?

Both are XML syndication formats. RSS 2.0 is simpler and uses RFC 822 dates, but its spec leaves many things optional. Atom 1.0 is an IETF standard with stricter requirements: every entry needs an id, title and updated timestamp using RFC 3339 dates.

RSS 2.0 and Atom 1.0 at a glance

Web feeds let readers and aggregators subscribe to a site’s updates. Two formats dominate: RSS 2.0, the simpler and older syndication dialect, and Atom 1.0, the stricter IETF standard. This reference lists the common elements of both, flags which are required, and shows whether each lives at the feed level or the per-item level.

How it works

A feed is an XML document with a single feed-level container holding metadata plus a repeating per-item container:

<rss version="2.0">
  <channel>
    <title>Example</title>
    <link>https://example.com</link>
    <description>Latest posts</description>
    <item>
      <title>Post</title>
      <guid isPermaLink="false">tag:example.com,2026:1</guid>
      <pubDate>Wed, 02 Oct 2002 13:00:00 GMT</pubDate>
    </item>
  </channel>
</rss>

In Atom the container is feed with repeated entry elements, and the required fields are stricter: id, title and updated are mandatory on both the feed and every entry. Dates differ too — RSS uses RFC 822, Atom uses RFC 3339.

RSS 2.0 versus Atom 1.0 — key differences

ConcernRSS 2.0Atom 1.0
Standard bodyNot IETF; community specIETF RFC 4287
Date formatRFC 822 (Wed, 02 Oct 2002 13:00:00 GMT)RFC 3339 (2002-10-02T13:00:00Z)
Per-item IDguid (optional, but strongly recommended)id (required)
Contentdescription (no explicit type)content with explicit type attribute
Minimal channeltitle, link, descriptionid, title, updated, link rel=self
Self-linkVia atom:link namespace extensionNative link element

Choose RSS 2.0 when you need maximum reader compatibility and a simple podcast feed. Choose Atom 1.0 when you need a stricter, standards-compliant feed or when your publisher enforces IETF compliance.

Common mistakes to avoid

  • Mixing date formats — RFC 822 in an Atom feed, or RFC 3339 in RSS, causes validation errors and reader breakage.
  • Omitting guid in RSS — without a stable identifier, readers cannot de-duplicate entries when you correct a title or URL.
  • Not serving the right Content-Type — send application/rss+xml or application/atom+xml, not text/html, so clients auto-discover the feed.
  • Missing rel="self" — aggregators and the W3C feed validator look for this link to confirm the canonical feed URL.
  • Podcast enclosures missing length — the enclosure element requires url, type, and length (in bytes); omitting length breaks some podcast clients even though readers tolerate it.

Tips and notes

  • Always include a stable guid (RSS) or id (Atom) so readers de-duplicate entries.
  • Podcasts attach media with an RSS enclosure carrying url, length and type.
  • Add a rel="self" link so validators and aggregators find the canonical feed URL.
  • Set the correct content type: application/rss+xml or application/atom+xml.
  • Use the W3C Feed Validation Service to catch schema errors before publishing.