Developer

RSS Atom Generator

Generate RSS 2.0 and Atom XML feeds from metadata and entry rows.

Loading interactive tool…

Embed this tool on your site

About this tool

RSS & Atom Feed Generator on UtilityKit builds RSS 2.0 or Atom XML from feed details and a list of entries. Fill in the feed title, link and description (all required), plus optional language, author, feed ID and an Updated date in ISO 8601 — left blank, it uses the current time. Add entries one per line in the form title | link | summary | date | author | id; the first three are required. Click Generate XML and the tool escapes &, <, >, quotes and apostrophes, writes RFC 822 dates for RSS (pubDate, lastBuildDate) and ISO 8601 dates for Atom, and fills in a default guid or id when you leave it out. The output is plain, unindented XML with a Copy button. It does not add an atom:link self reference, CDATA content or enclosures, so run the result through the W3C Feed Validator and add those by hand if you need them. Everything runs in your browser.

Why use it

  • RSS 2.0 or Atom From One Form: Switch the Format dropdown and click Generate XML again to get the same feed in the other format.

  • Correct Date Formats: Dates you type in ISO 8601 are converted to RFC 822 for RSS and kept in ISO 8601 for Atom.

  • Entity Encoding Handled: Ampersands, angle brackets and quotes in titles and summaries are escaped, preventing feed-breaking XML errors.

  • Fast Entry: One line per item with | separators is quicker than filling a form per article.

  • No Backend Needed: The feed is built in your browser from the text you type; nothing is uploaded.

  • Prototype and Test Feeds: Generate sample feeds for RSS reader integrations or automation workflows before your real site produces one.

How to use

  1. Choose the Format: RSS 2.0 or Atom.
  2. Fill in Feed Title, Feed Link and Description / Subtitle (required), plus Language, Author, Feed ID and Updated if you want them.
  3. Type entries one per line as title | link | summary | date | author | id. Title, link and summary are required; a missing or unreadable date falls back to the Updated date.
  4. Click Generate XML. If a line is missing a required field, an error names that line.
  5. Click Copy, save the XML as feed.xml on your site and check it with the W3C Feed Validator.

When it helps

  • When building a static blog or documentation site that does not have a CMS-generated feed and you need a hand-crafted RSS or Atom XML file.
  • When testing an RSS reader integration, feed aggregator API, or automation (IFTTT, Zapier, n8n) and need a valid sample feed with realistic data.
  • When learning the structural difference between RSS 2.0 and Atom by generating both from the same entries.
  • When quickly validating that your backend's feed output structure matches what aggregators like Feedly or NewsBlur expect.
  • When prototyping a new content channel (newsletter archive, changelog, job board) and want a working feed XML to share with early subscribers before building the full CMS.

Examples

RSS 2.0 feed with one entry

Input
Format: RSS 2.0; Title: My Dev Blog; Link: https://mydevblog.com; Description: Dev articles and tutorials; Updated: 2026-05-07T10:00:00Z; Entry: Getting Started with Docker | https://mydevblog.com/docker-intro | A first container in ten minutes | 2026-05-07T10:00:00Z
Expected result · Scroll for more
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>My Dev Blog</title>
<link>https://mydevblog.com</link>
<description>Dev articles and tutorials</description>
<language>en-us</language>
<lastBuildDate>Thu, 07 May 2026 10:00:00 GMT</lastBuildDate>
<item>
<title>Getting Started with Docker</title>
<link>https://mydevblog.com/docker-intro</link>
<description>A first container in ten minutes</description>
<pubDate>Thu, 07 May 2026 10:00:00 GMT</pubDate>
<guid>https://mydevblog.com#1</guid>
</item>
</channel>
</rss>

Same entry as Atom with a feed author

Input
Format: Atom; same fields plus Author: Jane Dev
Expected result · Scroll for more
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
<title>My Dev Blog</title>
<link href="https://mydevblog.com"/>
<id>https://mydevblog.com</id>
<updated>2026-05-07T10:00:00.000Z</updated>
<subtitle>Dev articles and tutorials</subtitle>
<author><name>Jane Dev</name></author>
<entry>
<title>Getting Started with Docker</title>
<link href="https://mydevblog.com/docker-intro"/>
<id>https://mydevblog.com/docker-intro</id>
<updated>2026-05-07T10:00:00.000Z</updated>
<summary>A first container in ten minutes</summary>
</entry>
</feed>

Tips

  • Always include a `<lastBuildDate>` (RSS) or `<updated>` (Atom) element at the channel level. Aggregators use this to decide whether to re-fetch the feed, and omitting it forces a full re-parse on every poll.
  • Use permanent, canonical article URLs in your `<link>` elements — not `/latest-post` but `/blog/2026/05/my-post`. Aggregators deduplicate entries by URL, so changing a URL creates a duplicate in readers.
  • Keep `<description>` entries to plain text or simple HTML. Complex CSS, JavaScript, or inline scripts in feed descriptions break most reader clients and are stripped by aggregators.
  • Submit your feed URL to Google's Feedburner successor alternatives (like FeedHQ or inoreader) and to your Google Search Console sitemap to help crawlers discover new articles faster.
  • Set a `<ttl>` (time to live, in minutes) element in RSS 2.0 feeds to tell well-behaved aggregators how often to poll. A value of `60` (one hour) is standard for daily-updated blogs; use `1440` (24 hours) for slower-moving content.

Frequently Asked Questions

What is the difference between RSS 2.0 and Atom 1.0?
RSS 2.0 is older, simpler, and has broader compatibility with legacy aggregators and podcast apps. Atom 1.0 is a stricter W3C standard with a cleaner XML namespace, better support for full HTML content via `<content type="html">`, and unambiguous date formatting (RFC-3339). For most blogs, either works; for podcasts, RSS 2.0 is the industry standard.
What date format should I use for RSS vs Atom?
RSS 2.0 uses RFC 822 dates such as Thu, 07 May 2026 10:00:00 GMT. Atom uses RFC 3339 / ISO 8601 such as 2026-05-07T10:00:00.000Z. Type dates in ISO 8601 and the generator converts them for the format you choose; an unreadable entry date falls back to the Updated date.
How do I host my feed so subscribers can follow it?
Upload the generated `.xml` file to any web server or static hosting service (GitHub Pages, Netlify, Cloudflare Pages) and serve it at a stable URL like `https://yourdomain.com/feed.xml`. Ensure the server returns `Content-Type: application/rss+xml` or `application/atom+xml`.
Can I include full article HTML in the feed?
Not as markup. Summaries are XML-escaped, so HTML tags arrive as escaped text: many readers render escaped HTML in an RSS description, but an Atom summary is treated as plain text. The tool has no content:encoded or <content type="html"> field, so add those by hand for full articles.
Does the RSS output include an atom:link rel="self" element?
No. The W3C Feed Validator recommends it, so add xmlns:atom="http://www.w3.org/2005/Atom" to the rss element and an <atom:link href="your feed URL" rel="self" type="application/rss+xml"/> line inside channel.
Can I use this to generate a podcast feed?
The core RSS 2.0 feed structure is correct for podcasts, but a full Apple Podcasts / Spotify-compatible feed also needs iTunes namespace elements (`<itunes:author>`, `<itunes:category>`, `<itunes:image>`, etc.) and `<enclosure>` tags with audio file URLs and sizes. The generator outputs the base RSS structure; add iTunes namespace extensions manually for full podcast compatibility.
How many items can a feed contain?
There is no hard limit in the RSS or Atom specs. Most aggregators fetch the full feed on each poll, so large feeds cost bandwidth; 10 to 25 recent items is common practice. The generator itself has no item limit.
Will the generated feed pass the W3C Feed Validator?
Often with warnings. RSS output lacks the recommended atom:link self element, and an RSS <author> containing only a name is flagged because the spec expects an email address. Atom feeds need an author on the feed or on every entry. Fix those points and simple feeds validate.

Explore the category

Glossary

RSS (Really Simple Syndication)
An XML-based web feed format (version 2.0 is current) for publishing frequently updated content like blog posts and podcasts so subscribers can follow without visiting the site.
Atom 1.0
An IETF-standardised XML feed format (RFC 4287) designed as a cleaner alternative to RSS. Uses RFC-3339 dates, explicit content type attributes, and strict namespace declarations.
Feed aggregator
A client application (e.g. Feedly, NetNewsWire, Reeder) that polls RSS/Atom feed URLs on a schedule and presents new entries in a unified reading interface.
CDATA section
An XML construct (`<![CDATA[ ... ]]>`) that wraps raw content (including HTML markup) so it is treated as character data rather than XML markup, preventing parse errors in feed elements.
Enclosure
An RSS 2.0 element (`<enclosure url="..." length="..." type="audio/mpeg">`) that attaches a media file (audio, video, image) to a feed item — the foundation of podcast syndication.
TTL (Time to Live)
An optional RSS 2.0 channel element specifying the number of minutes a feed can be cached before being re-fetched. Helps reduce unnecessary server load from over-eager aggregator polling.
A LITTLE HELP. A LOT DONE.
Good tools.
Great flow.

Your shortcut to the everyday. Create, convert, calculate,
and get back to what you love.

✓ Free to use✓ No sign-up✓ 500+ possibilities