Skip to main content

RSS / Atom Feed Generator

Generate a valid RSS 2.0 or Atom 1.0 feed from feed metadata and a simple key:value item list. Handles XML escaping, RFC 822 / RFC 3339 dates, categories, GUIDs and CDATA content — ready to serve or paste into a feed reader. Runs entirely in your browser.

Input

Feed Metadata

Optional canonical URL of the feed itself (atom:link rel=self).

ISO language code (e.g. en, en-us, fr).

When on, stamps the feed's build/updated element with the current time. Leave off (and give items explicit dates) for reproducible output.

Items

One item per block. Use "key: value" lines and separate items with a line containing only "---". Recognized keys: title, link, description, content, summary, pubDate, updated, published, guid, id, author, category.

Output

Generated Feed XML
 
Was this helpful?

Guides

Turn a list of posts into a valid RSS 2.0 or Atom 1.0 feed without touching XML by hand. Fill in your feed's metadata, describe each item with a few key: value lines, and copy or download the finished feed document — ready to serve at a URL or paste into a feed reader for testing.

Everything runs in your browser. Nothing you type is uploaded, which makes this safe for draft content, private site URLs, or feeds you are still shaping.

How to use it

  1. Pick a Feed Type — RSS 2.0 or Atom 1.0. The metadata fields adjust to match: RSS shows Language and Copyright; Atom shows Feed ID, Author Name, and Author Email.
  2. Fill in the feed metadata: Title, Site URL, and Description at minimum. Add a Self URL if you know the address the feed will live at (it becomes atom:link rel="self").
  3. Describe your posts in the Items box. Each item is a block of key: value lines. Separate items with a line containing only ---.
  4. Copy the generated XML, or download it as feed.xml.

The item mini-format

One item per block. Recognized keys are:

  • title — the item headline
  • link — canonical URL of the item
  • description — a plain-text or HTML summary
  • content — full HTML body (wrapped in CDATA as content:encoded for RSS, content for Atom)
  • summary — Atom summary (falls back to description)
  • pubDate / date / published / updated — the item's timestamp
  • guid / id — a stable unique identifier
  • author — author name or email
  • category — one or more categories, comma-separated

Only title: style lines that start with a recognized key begin a new field; any following indented or wrapped lines are appended to the current field, so multi-line descriptions work naturally.

Dates and correctness

Dates are converted to the format each standard requires: RFC 822 (Wed, 15 Jan 2025 10:30:00 +0000) for RSS pubDate, and RFC 3339 (2025-01-15T10:30:00Z) for Atom updated and published. A timestamp written without a timezone (for example 2025-01-15 10:30:00) is read as UTC, so the output is the same on every machine. Timestamps that already carry an offset or a Z are respected as written.

All text is XML-entity escaped — &, <, >, ", and ' are encoded — so titles like Tips & Tricks or Using <script> tags can't break the document. Full HTML bodies passed via content are wrapped in CDATA with the ]]> sequence safely split.

Should I leave "use current time" on?

That checkbox stamps the feed's build/updated element with the moment you generate it. It is handy for a one-off publish, but it makes the output change every second. If you want reproducible output — for a diff, a commit, or a test — leave it off and give each item an explicit date instead. For Atom, the feed's required <updated> element is then derived from your newest item automatically.

RSS or Atom?

Both are widely supported by feed readers. RSS 2.0 is the most common and the simplest. Atom 1.0 is stricter and a little more modern — it requires a stable feed id and an updated timestamp, and models authors and links more explicitly. If you're unsure, RSS 2.0 is a safe default.

rssatomfeedxmlsyndicationpodcast

Love the tools? Lose the ads.

One payment clears every ad from your account, for good. No subscription, no tracking.