Online RSS Reader
Lightweight online RSS reader: keep a subscription list in your browser, see unread counts, import or export OPML, and inspect any RSS or Atom feed as JSON.
To read an RSS feed online, enter the feed URL (for example https://example.com/feed) and click Load, or paste the XML of an RSS 2.0 or Atom feed into the left editor (or upload a .xml/.rss/.atom file). The right pane immediately lists the channel/feed title, description and link, and every item/entry with its title, article link, publication date and summary. Switch to JSON view to see the full parsed object, including @_-prefixed attributes and namespaced elements such as content:encoded or itunes:*. Pasted and uploaded XML never leaves your browser. A URL is requested directly by your browser first; only when the feed blocks cross-origin requests is it fetched through this site's server. For daily reading, add feeds to “My subscriptions” below the viewer: one click refreshes them all, new entries appear in a single timeline with unread counts, and the list stays in your browser with OPML import/export for moving between readers.
RSS Input
0
Feed Preview
List View / JSON View
My subscriptions
0 feeds · 0 unread
No subscriptions yet. Enter a feed URL above, or import the OPML file exported from another reader.
Your subscription list, read marks and cached entries are stored only in this browser on this device — no account, nothing uploaded. Refreshing reads each feed directly from the browser; feeds that block cross-origin requests are fetched through this site's server, which keeps no copy (the CDN may cache a public feed's response for up to about 10 minutes).
Limits on this device: 200 subscriptions, the newest 50 entries per feed and 1000 entries in total, summaries cut to 800 characters. Read marks are kept only for entries still in the cache.
You May Also Need
How to inspect an RSS feed online
- 1
Enter the feed URL or paste the XML
Type the feed address into the URL box (common paths are /feed, /rss.xml, /atom.xml) and click Load. You can also paste the XML into the editor, or load a downloaded file with Upload XML or by dragging it onto the editor.
- 2
Review the channel and item list
The tool detects RSS 2.0 (root element rss) or Atom (root element feed) and shows the channel title, description and site link, followed by each item's title, link, publication date and summary. HTML summaries are rendered with images hidden for easier scanning.
- 3
Switch to JSON view to check fields
Click the JSON view button to inspect the complete parsed object. Attributes appear with an @_ prefix (for example @_version, @_href) and namespaced elements such as content:encoded, dc:creator and itunes:* are kept as-is, which makes missing fields or mapping issues easy to spot.
- 4
Subscribe and read daily
In “My subscriptions”, enter a feed URL and click Subscribe (the feed title is filled in automatically), or import an OPML file from your old reader. Click “Refresh all” whenever you come back: feeds are fetched three at a time, failures show their reason without stopping the rest, and new entries are marked with a dot until you open them or use “Mark all as read”.
- 5
Troubleshoot or start over
If a URL fails to load, the message under the URL box explains why — for example the address returned a web page instead of a feed, took longer than 8 seconds, or is larger than 2 MB. "Invalid RSS/Atom feed format" usually means the root element is not rss/feed (RSS 1.0 rdf:RDF or JSON Feed); "Error parsing XML" points to truncated or malformed XML. Load the Sample to compare against a standard structure, or click Clear to start over.
References
- RSS 2.0 Specification (RSS Advisory Board)
The authoritative RSS 2.0 specification: required channel elements (title, link, description), item elements, and optional fields such as enclosure, guid and pubDate.
- RFC 4287 — The Atom Syndication Format
The IETF standard for Atom, requiring id, title and updated on every feed and entry and RFC 3339 dates.
- W3C Feed Validation Service
W3C's online validator that accepts a URL or pasted source and reports every RSS/Atom error and warning against the specification.
- MDN — DOMParser
Reference for the browser's built-in XML parsing API, useful when writing your own RSS parser that turns an XML string into a DOM.
- Wikipedia — RSS
Background on the history of RSS, its versions (0.9x, 1.0 RDF, 2.0) and its relationship to Atom.
Related Tools
OPML Viewer
Open OPML subscription lists exported from feed readers and see every feed URL they contain.
XML Viewer
View and format the raw feed XML as a tree to locate unclosed tags and other syntax problems.
XML to JSON
Convert feed XML into downloadable JSON for scripting and further processing.
HTML Viewer
Preview how the HTML inside an item's description or content:encoded actually renders.
Frequently Asked Questions
- What does an RSS feed look like, and which channel and item fields are required?
- An RSS 2.0 document has a single <rss version="2.0"> root containing one <channel>. The channel must include title, link and description, and may add language, pubDate, image and more. It can hold any number of <item> elements; each item needs at least a title or a description, and commonly carries link, guid, pubDate, author, category and enclosure (for podcast audio). Expand these nodes in the JSON view to check them one by one.
- What is the difference between RSS 2.0 and Atom, and how do I tell which one I have?
- Check the root element: <rss> means RSS 2.0, <feed xmlns="http://www.w3.org/2005/Atom"> means Atom. RSS 2.0 uses channel/item with RFC 822 dates (Mon, 01 Jan 2024 10:00:00 GMT); Atom is defined by RFC 4287, uses feed/entry, requires id, title and updated on every entry, uses RFC 3339 dates (2024-01-01T10:00:00Z), and puts links in the href attribute of <link>. This viewer parses both and shows them in the same layout.
- How do I validate an RSS or Atom feed? How is this different from the W3C Feed Validator?
- This tool performs a parse-level check: it verifies that the input parses as XML and that the root element is rss or feed, and shows an error otherwise. It does not check required fields, date formats or GUID uniqueness against the specification. For spec-level validation submit the URL or source to the W3C Feed Validation Service, which lists every error and warning; use the XML Viewer to pinpoint unclosed tags.
- Can I enter a feed URL and read it online?
- Yes. Type the feed address into the URL box above the editor and click Load. Your browser first requests the feed directly from its site. Many feeds block that with cross-origin (CORS) rules; in that case this site's server fetches the feed and passes it back to you. Only public http/https addresses on the standard ports are accepted, a request gives up after 8 seconds, and feeds larger than 2 MB are refused — download those and use Upload XML instead. Feeds that require a login or cookies cannot be loaded by URL.
- Can I use it as a daily RSS reader with several subscriptions?
- Yes, as a lightweight one. Add feeds under “My subscriptions”, give them your own names and optional groups, and press “Refresh all” to pull every feed (three at a time). Entries from all feeds are merged newest-first; each feed shows its unread count, and you can filter to unread entries, mark single entries read or unread, or mark everything read. Opening an entry takes you to the original article in a new tab. There is no background polling: feeds update when you refresh, or automatically on page load if you switch that option on. Each feed keeps its newest 50 entries.
- How do I move my subscriptions from another reader with OPML?
- Most feed readers can export their subscriptions as an OPML file. Choose “Import OPML” here and pick that file: every outline with an xmlUrl becomes a subscription, folders become groups, and feeds already in your list or repeated in the file are skipped, with a count of what was added. “Export OPML” saves your list as a standard OPML 2.0 file (type="rss" outlines with xmlUrl, htmlUrl and title), which you can import into another reader or back here on a different device.
- Why does my feed show an invalid format or parse error?
- Common causes: (1) the root element is not rss/feed — RSS 1.0 (rdf:RDF), JSON Feed, or an HTML page pasted by mistake; (2) truncated XML or unclosed tags; (3) unescaped & < > in descriptions — write & or wrap the text in <![CDATA[ ... ]]>; (4) the declared encoding does not match the actual bytes, producing garbled text; (5) prefixes such as content:, dc: or itunes: used without the matching xmlns declaration on the root. Fix the XML and paste it again.
- How would I write my own RSS parser?
- In the browser, use the built-in DOMParser: new DOMParser().parseFromString(xml, "application/xml"), then iterate querySelectorAll("item") or "entry" and read child nodes such as title, link and pubDate; use getElementsByTagNameNS for namespaced elements. In Node.js, fast-xml-parser (which this tool uses to turn XML into an object) or rss-parser are common choices. The key steps are detecting RSS vs Atom from the root element and normalizing both into one {title, link, date, summary} shape.
- Is my feed content or subscription list uploaded or stored?
- Pasted or uploaded XML is parsed by JavaScript running in your browser (fast-xml-parser). It exists only in the page's memory, is discarded on reload, and is never sent to any server; once the page has loaded this keeps working offline. When you load a feed by URL, your browser first fetches it directly from the feed's site. If that site blocks cross-origin requests, the URL is sent to this site's server, which downloads the feed and returns it to you without saving a copy; the CDN may keep the public feed response for up to about 10 minutes so repeat loads are faster. As on any website, the hosting platform's access logs record the requested URL and your IP address. The subscription list is different: feed addresses, read marks and up to 1,000 cached entries are saved in your browser's localStorage so they survive a reload. Nothing is tied to an account or synced, so clearing site data, using a private window or switching devices starts empty — export OPML to keep a copy, or use “Delete all local data” to remove it.
- Does it work with podcast feeds that use enclosure and itunes tags?
- Yes, they parse fine. The list view shows each episode's title, link, publication date and text summary. The audio file URL lives in the <enclosure url="..."> attribute, and extensions such as itunes:duration and itunes:image appear in the JSON view (attributes carry the @_ prefix, e.g. @_url, @_type, @_length under enclosure). The tool does not play audio or submit feeds to podcast directories.