Frequently asked questions
Vítejte v sekci FeedFlow’s FAQ. Zde najdete odpovědi na nejčastější otázky týkající se použití FeedFlow.
Which platforms is FeedFlow available on?
- Android: Google Play and F-Droid
- iPhone and iPad: App Store, iOS and iPadOS 17 or later
- macOS: App Store, Macs with Apple silicon
- Windows: Microsoft Store or the installer from GitHub releases
- Linux: Flathub, plus
.deb,.rpmand AppImage packages from GitHub releases
A few things aren’t available:
- Web version: browsers can’t download most feeds directly, and FeedFlow has no server to do it for them.
- Intel Macs: the frameworks FeedFlow is built with are dropping support for Intel Macs, so only Apple silicon is supported.
- Android APK on GitHub: install from Google Play or F-Droid. Obtainium can track the F-Droid release.
The .deb package targets Debian 13 and distributions based on it. On older distributions, use the Flatpak or the AppImage.
Version numbers can differ between platforms: each platform gets its fixes as soon as they’re ready, without waiting for the others.
How do I sync FeedFlow between my devices?
Go to Settings → Feeds & accounts → Accounts and connect the same account on every device. FeedFlow supports two kinds of accounts:
- Backup services: iCloud, Dropbox and Google Drive. Your subscriptions, categories, read articles and bookmarks are saved to a file in your own storage and picked up by your other devices.
- Reader services: FreshRSS, Miniflux, BazQux and Feedbin. Your subscriptions and read status live on the server, and FeedFlow syncs with it.
You can connect one account at a time. Sync runs when feeds are refreshed and when you close the app; on iPhone and iPad, changes are also uploaded every couple of minutes while FeedFlow is open. Upload changes sends your latest changes right away. Your other devices pick up the changes the next time they refresh, so on iPhone and iPad, where background refresh is up to iOS, open the app to see them.
Not every account is available in every version:
| Version | iCloud | Dropbox | Google Drive | Reader services |
|---|---|---|---|---|
| iPhone, iPad, Mac (App Store) | ✓ | ✓ | ✓ | ✓ |
| Android (Google Play) | ✓ | ✓ | ✓ | |
| Android (F-Droid) | ✓ | |||
Windows, Linux .deb, .rpm, AppImage | ✓ | ✓ | ✓ | |
| Linux (Flathub) | ✓ |
F-Droid doesn’t allow the non-free Dropbox and Google libraries, and Flathub builds the app from public sources, so the private keys these services require can’t be included. To sync these versions with your other devices, use a reader service, or install the Google Play version on Android or the .deb, .rpm or AppImage package on Linux.
How do I add a feed?
Tap Add feed and paste one of these:
- the feed address (for example
https://example.com/feed) - the website address: FeedFlow finds the feed when the site advertises one
- a YouTube channel link: FeedFlow converts it to the channel’s feed, and Hide Shorts leaves out Shorts and live streams
You can also browse Feed Suggestions for ready-made feeds, or import your subscriptions from another reader with an OPML file.
Some content needs a workaround:
- Newsletters: many providers, such as Substack and Buttondown, publish a feed for every newsletter. For the others, a service like Kill the Newsletter turns emails into a feed.
- Websites without a feed: tools like RSS-Bridge, RSSHub or rss.app can generate one.
Why does FeedFlow say “The link you provided is not a valid RSS feed”?
FeedFlow downloads the link and checks that it’s a feed. The check can fail even when the feed opens in your browser or works in another reader:
- The site blocks automated readers. Some sites show a security check (for example Cloudflare) before sharing their content. When this happens, FeedFlow offers Verify website: complete the check once and FeedFlow continues on its own.
- The site has a certificate problem. A misconfigured or self-signed certificate makes the connection fail, even if a browser works around it. Only the site owner can fix this.
- The link isn’t a feed. It may be a normal web page whose site doesn’t advertise a feed, or a JSON Feed, which FeedFlow doesn’t support yet.
- The site limits requests or blocks your region. Reddit, for example, limits how often its feeds can be downloaded.
- The connection failed. Try again in a moment.
If you’re sure the feed is fine, Add anyway adds it without the check, and you can remove it later if it never updates.
Online services like Feedly and Inoreader download feeds on their own servers, which is why some feeds work there. FeedFlow downloads everything directly from your device.
Feeds that require a username, password or cookies aren’t supported yet.
If a feed should work and doesn’t, open an issue with its link.
How do I import or export my feeds and articles?
Open Import and export (Settings → Feeds & accounts, or File → Import and export on desktop).
- Subscriptions (OPML): import the OPML file exported by another reader, or export your feeds to move them elsewhere. Every feed in the file is added, even if it can’t be reached at the moment. Feeds that fail to update are marked with a warning icon, and you can fix or delete them in Settings → Feeds & accounts → Feeds.
- Articles (CSV): export all, read, unread or bookmarked articles, and import them on another device. Import your feeds first: articles can only be imported for feeds that already exist.
If FeedFlow says it can’t import this file, the file isn’t valid OPML. A common cause is an XML comment containing --, which is not allowed in XML.
Why are articles marked as read when I scroll?
Mark as read when scrolling is on by default: an article counts as read once it has completely scrolled out of the list. By default, read articles don’t appear in the Timeline, so they’re gone the next time the list reloads.
To change this, go to Settings → Reading behavior:
- Turn off Mark as read when scrolling to mark articles as read only when you open them.
- Turn on Show read articles in lists to keep read articles in the list.
- Auto-hide articles when marked as read removes articles as soon as they’re read. It only works when mark as read when scrolling is off.
To keep one feed unread while you scroll, open its settings and turn on Keep unread when scrolling.
The last few articles can’t scroll out of the list, so use Mark all as read at the end of the list or in the menu.
Where are my read articles? Can I undo “Mark all as read”?
Read articles are in Read, in the Library section of the sidebar. Use the search with the Read filter to find a specific one.
Long press an article (right click on desktop) to:
- mark it as read or unread
- mark all articles above or below it as read
There’s no bulk “mark as unread”, so if you marked too much as read, open Read and mark the articles you still want to read as unread one by one.
Articles removed by Auto-delete old articles or Delete week-old articles can’t be recovered.
Why does a feed show only a few articles? Where are the older ones?
FeedFlow shows exactly what the feed contains, and many websites only include their latest 5 to 20 articles. Older articles are no longer in the feed, so no reader can download them.
Other readers sometimes show more because their servers have been collecting the feed for years. FeedFlow starts collecting when you subscribe: from then on, articles stay in the app even after they drop out of the feed, until you delete them or Auto-delete old articles removes them.
Dates and times come from the feed too. If an article has no date or the wrong one, the feed published it that way. Articles without a date appear at the bottom of the list.
How do I delete old articles?
- Auto-delete old articles (Settings → Sync & storage) removes articles older than one day, one week, two weeks or one month.
- Delete week-old articles, in the menu, removes articles older than a week from the list you’re viewing: the Timeline, a category or a single feed.
Bookmarked articles are never deleted. Deleted articles don’t come back on the next refresh, even if the website still lists them in its feed.
How often does FeedFlow check for new articles?
FeedFlow has no server: every check for new articles runs on your device. It checks:
- When you refresh: pull down the list or use Refresh feeds. Only the feeds in the current view are checked, so refreshing a category or a single feed is faster.
- When the app starts, if Refresh feeds on app start is on (Settings → Sync & storage). This only happens when the app is launched from scratch, not when you switch back to it while it’s still running.
- In the background, depending on the platform (see below).
Automatic checks skip a feed that was checked recently, to avoid flooding websites with requests. The wait is at least an hour, and it can grow up to a day for feeds that rarely change. A manual refresh always checks again. If one feed fails, the others are still updated.
Android: choose how often in Background sync (Settings → Sync & storage), from every 15 minutes to once a day, and optionally only on Wi-Fi or only while charging. Android can still delay the check when the battery is low or battery optimisation is on for FeedFlow.
iPhone and iPad: iOS doesn’t let apps run on a schedule, so there is no Background sync setting. When you leave FeedFlow, it asks iOS to wake it up again in about two hours. iOS decides if and when that happens: usually while the device is charging and connected to Wi-Fi, and more often for apps you open regularly. It can take many hours, or not happen at all if you haven’t opened FeedFlow for a while, if Low Power Mode is on, or if Background App Refresh is turned off for FeedFlow in the iOS Settings. Open FeedFlow to get the latest articles immediately.
Desktop: turn on Refresh while open to check for new articles while FeedFlow is running.
Why am I not getting notifications or background updates?
FeedFlow has no server: new articles are checked on your device, in the background. Your phone’s system decides when background work can run, and FeedFlow can’t override it.
To get notifications:
- On Android, set Background sync to a frequency other than Never (Settings → Sync & storage).
- Turn on notifications in Settings → Feeds & accounts → Notifications, for all feeds or for the feeds you choose, and allow FeedFlow to send notifications.
- Pick a Notification grouping: per article (with titles and images), by feed, by category, or all combined.
Android: make sure battery optimisation is off for FeedFlow. Some phones, such as Huawei, Honor, Xiaomi and Samsung, also need FeedFlow to be allowed to run in the background or to auto-start.
iPhone and iPad: notifications can only be sent when iOS lets FeedFlow check for new articles in the background, which happens at most every couple of hours and only when iOS decides it’s a good moment (see “How often does FeedFlow check for new articles?”). Keep Background App Refresh on for FeedFlow in the iOS Settings. Delays of hours are normal and outside FeedFlow’s control.
Desktop: system notifications aren’t available yet.
Why doesn't my widget update?
The widget shows what FeedFlow has already downloaded, so it updates when the app refreshes feeds.
Android: the widget follows Background sync (Settings → Sync & storage). If it’s set to Never, the widget only changes when you open the app. In Settings → Widget Configuration you can choose what each widget shows (Timeline, Bookmarks, a category or a single feed) and change its background colour, opacity, text colour, font size, header and refresh button.
iPhone and iPad: the widget updates when FeedFlow refreshes: while you use the app, when you leave it, and when iOS lets it run in the background, which can take hours. Widgets can’t download feeds on their own, so opening FeedFlow is the reliable way to bring the widget up to date.
An article looks broken or incomplete in reader mode. What can I do?
Reader mode downloads the web page and removes everything but the article. Some pages can’t be cleaned up: they need JavaScript, hide content behind a paywall or a cookie banner, or block automated tools.
What you can do:
- Report it: in the reader, open the menu and choose Report broken article. FeedFlow sends only the article link, the app version and the system version, which helps improve the reader.
- Use the feed’s own content: some feeds, such as comics, Mastodon or Telegram channels, already include the whole post. Open the feed’s settings and set Open articles in to Reader (feed).
- Open it in the browser for that feed: set Open articles in to a browser in the feed’s settings. Every article from that feed then skips reader mode.
When the reader can’t extract an article, FeedFlow opens it in your browser instead. Files like PDFs, and YouTube and Telegram links, always open outside the reader.
The reader also has a button to open the page through archive.is.
What's the difference between reader mode and the browser options?
Open articles in decides what happens when you tap an article. Set it for every feed in Settings → Reading behavior, or for a single feed in its settings.
- Reader (website): downloads the original page and shows a clean, readable version inside FeedFlow.
- Reader (feed): shows the content included in the feed, without downloading the page. Best for feeds that contain the full text.
- In-app browser: opens the page without leaving FeedFlow. On Android it’s provided by your default browser (Chrome, Firefox and so on), so it uses that browser’s settings, cookies and VPN rules. On iPhone and iPad it’s Safari.
- Favourite browser: opens the page in a browser you pick.
- Default browser: opens the page in the system’s default browser.
The Linux app has no in-app browser: you can choose reader mode or a browser.
Can I read articles offline?
Yes, in Settings → Reading behavior:
- Prefetch article content for offline reading downloads the full articles while feeds refresh. Refreshing takes longer and uses more data.
- Save article content on open for offline reading keeps every article you open.
Images are cached while you browse. You can clear downloaded articles and cached images in Settings → Sync & storage.
How do I change the theme, text size or layout?
Settings → Appearance: theme (System, Light, Dark or Black), hiding unread counts, and reducing motion and animations (useful on e-ink screens).
Settings → Feed list:
- layout: List, Card or Big image card, and a grid on wide screens
- text scale
- sorting: newest or oldest first
- hiding the description, image, date, unread indicator, feed name or a title repeated in the description
- description length: 3 lines, 5 lines or no limit
- date and time format
In the reader, the text settings button lets you change the font, font size, title size and line height.
To jump back to the top of a long list, use the scroll-to-top button or double-tap the top bar.
Can I swipe to mark articles as read or move between articles?
Yes. In Settings → Feed list, choose a Left swipe and Right swipe action: toggle read, toggle bookmark, or open in your preferred browser.
On mobile, swiping right from the edge opens the sidebar, unless you’ve set a swipe action for that direction.
In the reader, use the previous and next buttons (or swipe) to move between articles without going back to the list.
How do bookmarks work? Is there a read-later list?
Bookmarks are the read-later list: add an article from its menu, with a swipe action, or from the reader. You’ll find them in Bookmarks, in the Library section of the sidebar. Bookmarked articles are never removed by automatic deletion.
To move bookmarks to another device, export them from Import and export → Articles (CSV) and import the file there, after adding the same feeds.
FeedFlow only saves articles from your feeds. To save any link from the web and read it later, even offline, try ReaderFlow, FeedFlow’s companion read-it-later app for Android, iPhone, iPad and Mac.
Does FeedFlow support podcasts, YouTube and reading articles aloud?
- YouTube: paste a channel link to subscribe, and turn on Hide Shorts to skip Shorts and live streams.
- Podcasts: episodes with audio show an audio badge. On Android, iPhone and iPad they play in FeedFlow, with playback speed and a Now playing bar; elsewhere, Open audio opens them in another app.
- Listen to article: on Android, iPhone and iPad, the reader can read the article aloud.
Can I hide articles about topics I'm not interested in?
Yes. Add words to Settings → Feeds & accounts → Blocked words: articles with any of these words in the title or description are hidden.
You can also hide a whole feed from the Timeline (in its settings, Hide this feed’s articles from the timeline), and hide YouTube Shorts per channel.
Blocked words are stored on the device and aren’t synced with your other devices.
How do I organise my feeds?
- Categories: pick a category when you add a feed, or change it later in the feed’s settings. Long press a category in the sidebar to rename or delete it. Deleting a category moves its feeds to Uncategorized; Delete all feeds removes the feeds too.
- Edit a feed: long press it in the sidebar (right click on desktop) to rename it, change its category, URL, link opening, notifications and more.
- Pin the feeds you read most to keep them at the top of the sidebar.
- Reorder categories with the Reorder button in the sidebar.
- On desktop, select several feeds to move or delete them together, or drag a feed onto a category.
A feed can belong to one category at a time.
What does sync save? Are my settings synced?
With iCloud, Dropbox or Google Drive, FeedFlow saves a file in an app-specific folder of your storage (it can’t see your other files) containing your subscriptions, categories, and read and bookmarked articles. Article content isn’t included.
Settings, blocked words and widget configuration stay on each device and aren’t synced. The sync file isn’t encrypted by FeedFlow, so it’s protected by your storage account.
With a reader service (FreshRSS, Miniflux, BazQux, Feedbin), what’s synced is decided by the service.
Why did connecting FreshRSS or Miniflux replace my feeds?
Reader services (FreshRSS, Miniflux, BazQux and Feedbin) keep your subscriptions on their server, and FeedFlow uses that list. When you connect one, the feeds stored on your device are replaced with the server’s, and disconnecting doesn’t bring them back.
Before connecting, export your feeds from Import and export → Subscriptions (OPML), then import the file into the service if you want to keep them.
Backup services (iCloud, Dropbox, Google Drive) work differently: they keep your current feeds and save them to your storage.
Which password do I use for FreshRSS or Miniflux?
FeedFlow connects through the Google Reader API, which uses its own password:
- FreshRSS: set an API password in FreshRSS under Settings → Profile, and use your instance’s API address as the server URL.
- Miniflux: enable the Google Reader API under Settings → Integrations → Google Reader and use the username and password set there. API tokens aren’t used.
If login succeeds but sync fails with “the server rejected the sync token”, your server is probably behind a reverse proxy that doesn’t forward the Authorization header. Configure the proxy to pass it through.
Servers with a self-signed certificate aren’t supported.
What do the error codes mean?
Error messages end with a code that tells where the problem happened. Include it if you report the issue.
| Code | What failed |
|---|---|
| DB1–DB3 | Reading or saving data on your device |
| SU1–SU5 | Uploading your data to the sync account (SU2–SU4 Dropbox, SU5 Google Drive) |
| SD1–SD4 | Downloading your data (SD1 Dropbox, SD2 iCloud, SD3 Google Drive; SD4 means Google Drive needs you to sign in again) |
| SF1–SF2 | Syncing feeds or articles with the sync account |
| SI1–SI7 | iCloud: check that you’re signed in, iCloud Drive is on and you have space available |
| FS1–FS10 | A request to your reader service (FreshRSS, Miniflux, BazQux, Feedbin) failed |
| FS11 | The reader service rejected the sync token: check that your proxy forwards the Authorization header |
Many of these are temporary network problems and disappear on the next sync. If the same code keeps coming back, open an issue or write from Settings → About & support → Report issue.
Older versions showed FF1 when a feed couldn’t be downloaded. Current versions show a warning icon on the feed instead.
Will FeedFlow support Feedly, Inoreader, Nextcloud News or other services?
Supported today: iCloud, Dropbox, Google Drive, FreshRSS, Miniflux, BazQux and Feedbin. Many self-hosted readers that offer the Google Reader API can be used through the FreshRSS or Miniflux option.
- Feedly isn’t planned: it doesn’t offer API access to independent developers.
- Nextcloud News, OneDrive, WebDAV and others: requested, not planned yet. Add your vote to the open requests on GitHub.
To move from another service now, export an OPML file there and import it into FeedFlow.
Does FeedFlow collect data about me?
FeedFlow has no account, no ads and no server: your feeds and articles stay on your device and on the sync account you choose.
To fix bugs faster, the app sends anonymous crash reports (through Firebase Crashlytics on Android and iOS, and Sentry on desktop). You can turn them off in Settings → About & support → Send anonymous crash reports.
The F-Droid version contains no crash reporting. If an app scanner reports trackers in your “F-Droid” FeedFlow, it was probably updated by Google Play: both versions use the same package name.
Why can't I switch between the Google Play and F-Droid versions?
The two versions are signed with different keys (F-Droid builds and signs the app itself), so Android won’t install one over the other. To switch:
- Export your feeds (Import and export → Subscriptions (OPML)) and, if you want, your articles (Articles (CSV)).
- Uninstall FeedFlow and install the other version.
- Import the files.
The versions are released at the same time, but Google Play rolls updates out gradually and F-Droid builds on its own schedule, so one can be a few days ahead. The F-Droid version doesn’t include Dropbox, Google Drive or crash reporting.
How can I change the app language or help translate it?
FeedFlow follows your device language. To use English instead, turn on Settings → Appearance → Force English.
Translations are made by volunteers on Weblate. If your language is missing or incomplete, you can help there.
How do I report a bug or ask for a feature?
- In the app: Settings → About & support → Report issue opens an email with your platform, app version and sync account already filled in. Describe the problem and include the link of the feed involved.
- By email: use Send an email at the bottom of the FAQ page, and mention your platform and app version.
- On GitHub: open an issue to report a bug or request a feature, and add a 👍 to existing requests you care about.
- Broken articles: in the reader, use Report broken article.
Screenshots and the OPML file of the feeds involved make problems much faster to fix.
Send an email describing the problem, or open an issue on GitHub.