Decafly
Decafly / Your space, respected

Privacy Policy

Last updated: 2026-10-07

Decafly for Android does two things. It blocks apps you choose, showing a block screen in front of them until you decide to open one on purpose. And it turns off short-video screens — such as YouTube Shorts, Instagram Reels and Instagram Explore — inside the real apps, and YouTube Shorts, Instagram Reels and Facebook Reels opened in a web browser whose address bar shows the page's full address. This policy explains what the app can see, what it keeps, and what ever leaves your device.

Decafly is not affiliated with, endorsed by, or sponsored by any company whose app or browser is named in this policy.

1. Why Decafly needs the Accessibility permission

Decafly uses Android's Accessibility Service for exactly four purposes:

There is no other way for an app to do any of these on Android without asking for more of your data or modifying those apps, which Decafly does not do. Android's own usage statistics report how long you spend in every app on your phone, not only the apps you chose, they arrive after the fact, and they cannot tell a Shorts player apart from a long video.

The app asks for this permission on a screen of its own, before anything is turned on, and it explains all of the above on that screen before you agree. You can take your consent back at any time from Settings, "Withdraw consent".

2. Which apps Decafly watches

The service is limited, at run time, to a list of package names. That list is exactly:

The screens of Facebook, TikTok, Snapchat, X, LinkedIn and Reddit, and the browsers, are part of Decafly Pro (section 6). Without an active Pro subscription they count as Off, whatever they were set to, so those apps and browsers are not on the list.

Nothing else. If you have blocked no apps and set every screen to Off, the list is set to a package name that does not exist, so the service receives no events at all. The list is rewritten every time you change your settings.

To show you the picker, Decafly asks Android which apps on your phone have an icon in your launcher. It does this only while the picker is open, and only to draw the list. That list is never written to storage and never leaves your phone; the only thing Decafly stores is the packages you ticked.

3. What the service reads, and does not read

For the block screen, Decafly reads the package name of the window that came to the front, and the class name Android gives that window, which it uses only to let through Facebook's sign-in window when another app asks you to log in with Facebook. It does not look inside those apps at all — it does not walk their contents and it reads no text in them.

For the short-video screens inside the apps named in section 1, Decafly reads:

In the browsers named in section 1, Decafly reads the address shown in the address bar and nothing else on the page. It checks whether the address is a YouTube Short, an Instagram Reel or a Facebook Reel and then drops it. It skips the bar while you are typing in it. The address is never written to storage, logged or sent anywhere, and it is never part of a layout report. When a browser hides its address bar, or shows only the site's name there, there is no address to check, so that page is not closed, and Decafly does not look at the page instead. Samsung Internet, a link that another app opens in its own browser tab (a Custom Tab), and DuckDuckGo until you turn on its full site address all show only the site's name.

Decafly never reads:

4. What is stored on your device

Everything below is stored on your phone, in the app's own private storage:

All of it is deleted when you uninstall the app, except one item: if you bought or tried Pro, Android keeps a copy of RevenueCat's random install ID (section 5). You can also clear your consent record at any time from Settings, "Withdraw consent", which opens Android's Accessibility page so you can turn the service off. Decafly does not flip that switch for you.

5. What ever leaves your device

Three kinds of automatic network request; the third happens only outside the European Economic Area, the United Kingdom and Switzerland.

The blocking rules. Decafly periodically downloads its own blocking-rules file over HTTPS (https://decafly.com/rules/s3/rules.json). The file holds only the rules for recognising short-video screens; it is signed and encrypted so the app can check that it came from Decafly, and its signature travels inside it, so there is still one request per check. This request carries no account ID, device ID, advertising ID, or usage information — only a standard HTTP ETag so the server can reply "not modified" if the rules have not changed. No cookies are set or sent. This happens roughly once a day, plus when you tap "Check now" in Settings. The block screen half sends nothing at all.

Decafly Pro. To know whether you have Pro, Decafly uses Google Play Billing and RevenueCat, a subscription service that keeps the record of your purchase. When the app opens, and when you buy or restore Pro, the RevenueCat library in the app talks to RevenueCat's servers over HTTPS. It sends a random ID it creates for this install (not linked to your name, email or Google account), your Google Play purchase records for Decafly (what you bought, when, and whether it renews), and technical details such as the app version, the Android version and your store country. It sends nothing from your screen, no list of your apps, no settings and no activity rows. Outside the EEA, the UK and Switzerland it also receives your phone's advertising ID and the Tenjin install ID described below, so that it can report purchases to Tenjin. Once you have bought or tried Pro, the library also stores that same random ID in Android's Block Store, which Google backs up with your phone's backup and only Decafly can read, so Pro comes back after a reinstall or on a new phone without an account. RevenueCat processes this only to provide the subscription to Decafly; see RevenueCat's own privacy policy at https://www.revenuecat.com/privacy. Payment itself is handled by Google Play; Decafly never sees your card or your Google account.

If you start a free trial and ask for a reminder, the reminder is a notification scheduled on your phone. Just before showing it, the app checks with RevenueCat, as above, that the trial is still set to renew; nothing else is sent.

Install attribution, outside the EEA, the UK and Switzerland. Decafly advertises on TikTok and measures which ads lead to installs with Tenjin, an attribution service. When your SIM card and your mobile network are both outside the European Economic Area, the United Kingdom and Switzerland (or, on a phone with neither, when your phone's language region is), each time you open Decafly the Tenjin library in the app sends Tenjin, over HTTPS: your phone's advertising ID and whether ad personalisation is limited, a random install ID Tenjin creates, the Google Play install referrer (which ad or link led to the install), and technical details such as the phone model and maker, the Android version, the screen size, the language and region setting, the time zone, the mobile carrier, the connection type, the app version and how many times and how long the app has been opened. Once per install it also sends two events: "setup complete", when you have finished setup with the Accessibility permission on, and "paywall shown", the first time the Decafly Pro screen appears; neither event carries anything else. RevenueCat reports Pro purchases to Tenjin from its own servers, linked by the same IDs. Tenjin can pass these install and purchase events to the ad network that showed the ad (TikTok), so it knows which of its ads worked. Nothing from your screen, no list of your apps, no settings, no activity rows and nothing the Accessibility Service sees is ever part of this. Inside the EEA, the UK and Switzerland, or when the app cannot tell where the phone is, the Tenjin library is never started. You can reset or delete your advertising ID in your phone's Google settings, which cuts the link to anything already sent. See Tenjin's privacy policy at https://tenjin.com/privacy/.

Everything else leaves your device only when you choose to send it.

Feedback you send from the app. Decafly offers a short feedback form in three places: right after you turn blocking off in the app, once as a card on Today that you can dismiss, a day or more after you install it, and in Settings, "Send feedback". Nothing is sent unless you tap Send. When you do, the app sends over HTTPS to Decafly's own server (https://decafly.com/api/feedback, run on Cloudflare): where the form was opened, the reasons you tapped, the text you wrote, if any (up to 1,000 characters), the app version, that the phone runs Android and which Android version, the phone's maker and model, the app's language, and whether you use Decafly free, on a trial, with Pro or with Lifetime. It sends no account, no install ID, no advertising ID, no event log, no list of your apps and nothing from your screen. The server stores those fields in a database and posts each message, through a Telegram bot, to a private Telegram group that only the developer reads. Cloudflare sees your IP address, as it does for any website, and uses it only to limit how often one address can send; it is not stored. Cloudflare (which runs the server and the database) and Telegram (which delivers the message to the developer) handle it on Decafly's behalf; no one else receives it. See https://www.cloudflare.com/privacypolicy/ and https://telegram.org/privacy. Write only what you are happy for the developer to read. The database deletes each message automatically 12 months after it arrives; the copy in the developer's Telegram group stays until the developer deletes it, and is deleted on request (section 9). If the form cannot reach the server, the app opens your mail app instead.

Three more things can be sent only by you, and in each case you see the content first and pick where it goes:

Decafly does not send any of these three by itself. It hands them to Android's share sheet or to your mail app, and stops.

6. What Decafly does not do

Decafly has no user accounts, no advertising in the app and no crash-reporting SDK. Two third-party libraries send anything: RevenueCat, for the purchase records in section 5, and Tenjin, for install attribution outside the EEA, the UK and Switzerland, also in section 5. Decafly does not sell your data. The install, setup, paywall and purchase events Tenjin receives can be shared with the ad network that showed the ad, as section 5 says. Feedback you send reaches only the developer, through Cloudflare and Telegram (section 5); nothing else is shared. If Decafly asks you for a rating, the window is Google Play's own in-app review: your stars and review go to Google Play under Google's terms, and the app neither sees them nor sends anything through it.

It also does not ask for permissions it does not need. The only permission added for Pro is Google Play's billing permission; the only ones added for install attribution are the advertising ID permission and the Play install referrer permission. It does not ask to read your phone's usage statistics, it does not ask to draw over other apps, it is not a device administrator, it runs no foreground service, and it does not ask for exact alarms. The block screen is drawn through the Accessibility Service itself, which is why it can only appear over the apps in the list in section 2.

Core blocking is free. Decafly Pro is an optional subscription, sold through Google Play, for extra features: more schedules, limits for one app, strict mode, more apps and browsers, reels per visit, schedules for each screen, and insights. When Pro ends, those features stop but your settings for them are kept on your phone. Pro on Android does not unlock anything on iPhone, because there is no account to connect the two.

7. Backups

If you have Android's backup feature turned on, your settings and your activity rows (never screen content, never app names) may be included in your phone's backup, the same way as for any other app. You control this in your phone's own Settings, System, Backup.

These are deliberately left out of that backup: Decafly's cached rules file, the file holding your PIN and recovery code, the file holding your "Why I block" line, which stays on this phone only, and the install attribution files, so a restored phone counts as a new install. That means a PIN does not follow you to a new phone, and it is one reason the app tells you plainly, while you are setting it up, that the lock is friction rather than a lock nobody can remove. Android gives no app a way to prevent its own removal, and Decafly does not try.

8. Children

Decafly is not directed at children under 13 (or the applicable minimum age in your country). It does not knowingly collect data from children, and it does not have any age-gated features or data.

9. Changes to this policy, and contact

If this policy changes, the "Last updated" date at the top will change, and any change that adds a new kind of data collection will be reflected here before it ships. Questions or requests, including asking for your purchase record at RevenueCat or your install attribution data at Tenjin to be deleted: feedback@decafly.com. Feedback sent from the app carries nothing that identifies you, so to have it deleted, tell us roughly when you sent it and what it said.