What Are the Basic Steps to Generate and Subscribe to an RSSHub Feed?
Updated
RSSHub turns websites and services that don't offer their own feeds into subscribable RSS URLs. The basic workflow is: find the route for your target site in the docs, build the feed URL from a running RSSHub instance plus that route and any required parameters, then paste the URL into your RSS reader. This works for any site that already has a documented route; sites without one need a new route to be written first.
Step 1: Find the route for your target site
Routes are the core of RSSHub — each one describes how to extract content from a specific website or service and is documented on docs.rsshub.app.
- Open the docs and browse or search for the site or service you want (for example, a news site, a social platform, or a video channel).
- Each route page shows the route path (the part that comes after the instance domain) and any parameters it accepts.
- Routes are organized by category, so searching by the site name or the platform type is usually the fastest way to locate one.
If no route exists for your target, RSSHub can't generate a feed for it out of the box — you'd need to write a custom route.
Step 2: Build the feed URL
A feed URL has two parts: the RSSHub instance address and the route path (with parameters filled in).
https://<your-rsshub-instance>/<route-path>?<parameters>
- Instance address: the domain of a running RSSHub deployment. The public demo instance is commonly used for testing, but for regular or heavy use you should run your own instance so you're not dependent on someone else's uptime and rate limits.
- Route path: copied from the docs, e.g.
/github/issue/...style paths depending on the route. - Parameters: some routes require them (a user ID, a channel name, a category). The docs page for each route lists which parameters are required and which are optional, along with their format.
Fill in the parameters exactly as the docs specify, then combine everything into one URL.
Step 3: Verify the feed works
Before subscribing, open the constructed URL in a browser.
- Expected result: you see XML/RSS content (a feed document), not an error page.
- If you get an error, the usual causes are: a missing or malformed required parameter, a typo in the route path, or the instance being down.
- Check the docs page again for the exact parameter names and order — small differences matter.
Step 4: Add the feed to your RSS reader
Once the URL returns valid feed content:
- Copy the full feed URL.
- In your RSS reader, choose "Add feed" / "Add subscription" and paste the URL.
- The reader fetches the feed and displays the items. New items appear as the source site updates.
Most readers accept a pasted URL directly; some also let you search by keyword, but pasting the exact URL is the reliable method.
Common sticking points
| Problem | Likely cause | What to check |
|---|---|---|
| Feed URL returns an error | Missing/invalid parameter | Re-read the route's parameter list in the docs |
| Feed loads but is empty | Route works but source has no matching content, or parameters filter everything out | Confirm the parameter values match real content on the source |
| Feed stops updating | Instance down or rate-limited | Switch to your own instance |
| No route found | Site isn't supported yet | A route must be written; check if one is in progress |
Choosing an instance
The docs describe routes, not a guaranteed hosting service. For anything beyond occasional testing, self-hosting an RSSHub instance gives you control over availability and avoids overloading shared public instances. The route paths and parameters are the same regardless of which instance you point them at — only the domain in front changes.