FormatterHQ

RSS to JSON Converter

Turn an RSS or Atom feed into JSON with a consistent shape: feed details at the top and an items array you can loop over in any language.

Input XML
Output JSON
Ready.

How to use the RSS to JSON Converter

  1. Click Load URL and enter the feed address, paste the feed XML, upload a saved feed file, or click Sample.
  2. Choose the JSON Indent and whether to Sort keys.
  3. Click Convert to JSON; errors such as a non-feed document are shown in the status bar.
  4. Copy the JSON or Download it.

Convert RSS to JSON with a predictable structure

Feeds are still one of the simplest ways to syndicate blog posts, release notes, podcasts and news, but working with them in code means dealing with XML and with several feed dialects. This RSS to JSON converter reads RSS 2.0, Atom and RSS 1.0 (RDF) feeds and returns JSON in one consistent layout: a few fields describing the feed and an items array, always an array even when the feed has a single entry.

Example: RSS 2.0

<rss version="2.0">
  <channel>
    <title>Northwind Engineering Blog</title>
    <link>https://blog.example.com</link>
    <item>
      <title>Validating XML at the edge</title>
      <link>https://blog.example.com/xml-validation</link>
      <pubDate>Thu, 02 May 2024 15:30:00 GMT</pubDate>
      <category>XML</category>
    </item>
  </channel>
</rss>
{
  "type": "rss",
  "version": "2.0",
  "title": "Northwind Engineering Blog",
  "link": "https://blog.example.com",
  "items": [
    {
      "title": "Validating XML at the edge",
      "link": "https://blog.example.com/xml-validation",
      "pubDate": "Thu, 02 May 2024 15:30:00 GMT",
      "category": "XML"
    }
  ]
}

How each feed format is normalized

  • RSS 2.0 – channel elements (title, link, description, language and so on) become top-level fields next to type: "rss" and the version attribute; each <item> becomes an element of items.
  • Atom – type is "atom". The feed title, link and updated are pulled out as plain values. Atom links are elements with an href attribute, so the converter picks the alternate link (or the first one) and gives you the URL string. Entries become items with title, link, summary and content as plain text.
  • RSS 1.0 / RDF – type is "rss1", with channel fields and the item elements as items.

Attributes and extensions

Elements that carry attributes keep them with an @ prefix. A podcast enclosure, for example, becomes:

"enclosure": {
  "@url": "https://ex.com/a.mp3",
  "@length": "123",
  "@type": "audio/mpeg"
}

and <guid isPermaLink="false">abc</guid> becomes an object with "@isPermaLink" and "#text". Namespaced extensions such as dc:creator, content:encoded or iTunes tags keep their prefixed names as keys. All values are kept as strings, which avoids surprises with IDs and dates; convert dates in your own code.

Loading a live feed

Load URL fetches the feed through our server, which avoids the cross-origin restrictions browsers apply to most feed URLs. The downloaded XML is then placed in the editor and converted in your browser. If a site blocks automated requests or requires a login, save the feed from your browser and upload the file instead.

Common errors

  • This XML is not an RSS or Atom feed – the document root is not <rss>, <feed> or <rdf:RDF>, for example because the URL returned an HTML page.
  • Invalid RSS: … with a line number – the feed is not well-formed XML, often because of an unescaped & in a title.

Related tools

To read a feed as a formatted list of articles rather than data, use the RSS feed viewer. For subscription lists exported from feed readers, try OPML to JSON, and for general XML documents, XML to JSON.

Privacy

Conversion runs in your browser. Load URL sends the feed address to our server so it can fetch the feed, and Save & Share stores the content if you create a link.

Frequently asked questions

Does the converter support Atom feeds?
Yes. RSS 2.0, Atom and RSS 1.0 (RDF) are detected automatically, and each produces the same basic shape with a type field and an items array.
Why is items an array even with one entry?
The converter always wraps entries in an array so your code can loop over items without checking whether a single object was returned.
Are dates converted to ISO format?
No. Dates are kept exactly as they appear in the feed, for example RFC 822 dates in RSS and ISO 8601 in Atom. Parse them in your application.
Why does Load URL fail for some feeds?
Some servers block automated requests, require authentication or return an HTML page instead of the feed. Download the feed in your browser and upload the file instead.
Are HTML tags in descriptions removed?
No. The description or content is returned as the text found in the feed, including any HTML markup, so you can render or sanitize it yourself.

Last updated October 3, 2026

Related tools