Legal
Privacy policy
The short version: TaskFlow has no account system, no server and no network access. Your tasks stay on your device, and we could not read them if we wanted to.
Summary. The TaskFlow Android app stores your tasks in a local database on your device. It does not create an account, does not request the Android internet permission, contains no analytics or advertising software, and transmits nothing to us or to anyone else. Because we never receive your data, we hold no personal information about you to share, sell, lose or delete. This website is static, sets no cookies and uses no trackers.
1. Who this policy is for
This policy covers two things:
- The TaskFlow application for Android (package com.taskflow, version 1.0.0), including everything it stores and every permission it requests.
- This website, which describes the application and hosts its installer.
"We", "us" and "the TaskFlow project" refer to the developers of TaskFlow. "You" refers to the person using the app or reading this site.
If you are looking for the practical mechanics — how to export, import or erase your data — jump to your data rights.
2. Information we collect
We collect no personal data from the Android app. Specifically, the app does not collect, transmit or give us access to:
- your name, email address, phone number or any account identifier — there is no sign-up and no login;
- your tasks, notes, comments, labels, projects or attachments;
- your location, contacts, calendar, photos, camera or microphone;
- your device identifiers, advertising ID, IMEI or MAC address;
- usage analytics, feature-interaction events, session recordings or heatmaps;
- crash reports or diagnostic logs — no crash-reporting library is included;
- your IP address — the app makes no network requests at all.
The app requests the following Android permissions and no others: POST_NOTIFICATIONS, SCHEDULE_EXACT_ALARM, RECEIVE_BOOT_COMPLETED, VIBRATE, FOREGROUND_SERVICE and FOREGROUND_SERVICE_SPECIAL_USE. None of these grants access to your personal information. Notably, the app does not request the INTERNET permission.
3. What the app stores on your device
Everything the app knows is written to storage that belongs to the app and is protected by the Android application sandbox. Other apps cannot read it. This includes:
| Stored on your device | Purpose |
|---|---|
| Tasks — titles, descriptions, due dates, priorities, completion state, estimates, repeats | The core function of the app |
| Projects, folders, sections and labels | Organising your tasks |
| Subtasks, dependencies, comments | Breaking work down and recording context |
| Reminders and scheduled alarms | Delivering notifications at the times you set |
| Attachments you add (up to five per task, 5 MB each) | Copied into app-private storage so the app does not need lasting access to your files |
| Saved filters | Reusing a set of search rules |
| Activity history (the last 30 changes per task) | Showing what changed and when |
| Pomodoro sessions | Calculating your focus-time statistics |
| Preferences — theme, accent colour, font scale, date and time format, week start, quiet hours, timer lengths | Remembering how you like the app |
Statistics shown on the Analytics screen — completion counts, completion rate, streaks, focus minutes, project distribution — are computed on your device from your own history at the moment you open the screen. They are not uploaded, aggregated or compared with anyone else.
4. Permissions, and why each one exists
Android permissions can look alarming on an install screen. Here is the honest purpose of every one the app declares, and what happens if you decline.
| Permission | Why | If declined |
|---|---|---|
| Notifications POST_NOTIFICATIONS |
To show task reminders, the 08:00 daily summary, the Sunday weekly review and the Pomodoro controls. | The app is fully functional; you simply receive no notifications. |
| Exact alarms SCHEDULE_EXACT_ALARM |
So a reminder fires at the minute you chose rather than inside a loose system window. | The app falls back to inexact alarms, which may be delayed by a few minutes. |
| Receive boot completed RECEIVE_BOOT_COMPLETED |
To re-arm your pending reminders after the phone restarts. It only receives the system's restart broadcast. | Reminders would be lost across a restart. The permission cannot read your data. |
| Vibrate VIBRATE |
To vibrate with a notification when your phone is set to silent. | Notifications arrive silently. |
| Foreground service FOREGROUND_SERVICE_SPECIAL_USE |
To keep the Pomodoro countdown accurate while you work in another app, shown as an ongoing notification with pause, resume and stop controls. | None — it only runs while a timer session is active and stops when you stop it. |
| Internet INTERNET |
Not requested. The app has no networking code, no HTTP client and no server endpoint. | Not applicable. Without this permission Android prevents the app from opening any network connection. |
Attachments and data exports use Android's system file picker (the Storage Access Framework). You choose the file and the destination; the app receives access only to that specific selection and does not obtain broad storage access.
5. This website
This site is a set of static pages. It contains:
- no cookies — the site sets none;
- no analytics or tracking scripts — no Google Analytics, no pixels, no session recording;
- no third-party embeds — no embedded videos, maps, fonts, comment systems or social widgets;
- no advertising of any kind.
The only thing the site stores in your browser is your own display preference — the light/dark theme and accent colour you pick — kept in your browser's local storage. It never leaves your browser and you can clear it at any time by clearing site data.
Hosting logs. Like virtually every website, the server that delivers these pages may automatically record standard technical information such as your IP address, browser user-agent, the page requested and the time of the request. This is generated by the hosting infrastructure, is used only to serve the site and keep it available and secure, and is not used to build a profile of you or combined with any other information. Where a hosting provider processes these logs, it does so as an independent service provider subject to its own privacy terms.
Downloading the app. Requesting the installer file is an ordinary web request; nothing about your device is recorded by the app itself, because the app has not run yet. The installer contains no hidden downloader, no bundled third-party app and no advertising component.
Contacting us. If you email us, we will receive your email address and whatever you write. That is the only personal data we ever hold, and only because you chose to send it. We use it solely to answer you, and delete it once the conversation is over and no follow-up is pending.
6. Sharing and selling
We do not sell, rent, trade or share personal data, because we do not receive any. There are no advertising partners, no data brokers, no analytics providers and no third parties with any technical means of accessing your task data.
7. Retention and deletion
- Deleted tasks move to Trash and are kept for 30 days, so you can undo a mistake. A daily cleanup removes anything that has expired, and you can empty Trash yourself at any time.
- "Delete all data" in Settings erases the entire database immediately, after an explicit confirmation, and starts you with a fresh Inbox.
- Uninstalling the app removes its private storage, including the database, attachments and preferences.
- Export files you create are saved wherever you told Android to save them and are then entirely under your control — we have no copy.
Because we never receive your data, there is no server-side retention period to describe. There is no backup of your tasks held by us, which also means we cannot recover them for you if a device is lost — please export regularly if the data matters to you.
8. Security
Your data is protected by the Android application sandbox, which prevents other apps from reading TaskFlow's private storage, and by your device's own storage encryption and screen lock. Attachments are copied into that same private storage rather than being referenced from a shared location.
There is an honest trade-off here: because nothing is uploaded, there is no account for an attacker to compromise and no server for us to lose — but there is also no cloud backup, so the security of your task list depends on the security of your device. Use a screen lock and take exports before changing phones.
9. Children's privacy
TaskFlow is not directed at children under 13, and it collects no personal information from anyone regardless of age. Because there is no account and no data transmission, there is nothing for a parent to request the deletion of. If you believe a child has sent us personal information by email, contact us and we will delete that message.
10. Your data rights
Privacy laws such as the GDPR, the UK GDPR and the CCPA/CPRA give you rights over personal data held about you: to access it, to receive a portable copy, to correct it, to have it erased, and to object to certain processing. TaskFlow is designed so that you can exercise every one of these directly, without asking us and without waiting:
| Right | How you exercise it |
|---|---|
| Access | Every task, note, label and setting is visible in the app, and fully listed in a JSON export. |
| Portability | Settings → Data → Export JSON gives you a complete, structured, machine-readable copy. CSV export is available for spreadsheets. |
| Rectification | Edit anything in place — title, notes, dates, priorities, labels, projects. |
| Erasure | Settings → Data → Delete all data, or empty Trash, or uninstall the app. All three are immediate and irreversible by us. |
| Objection / restriction | We carry out no processing to object to. You can also disable notifications entirely and use the app offline forever. |
| Non-discrimination | Exercising any of these has no effect whatsoever on the app, because there is no service to withdraw. |
If you nevertheless want to make a formal request, email hello@taskflow.app. We will respond within 30 days. In practice the only personal data we could hold is an email you sent us, and we will delete it on request. You also have the right to complain to your local data protection authority.
11. International transfers
There are none. The app does not transfer data anywhere, so no cross-border transfer of your task data occurs. Email correspondence is handled by whatever email providers you and we use.
12. Third-party components
TaskFlow is built with open-source Android and Kotlin libraries (AndroidX, Jetpack Compose, Material 3, Hilt, Room, WorkManager, DataStore, Coil, kotlinx-serialization and an RFC 5545 recurrence library). These are code libraries compiled into the app; they are not services, they run on your device, and none of them receives your data. The app contains no advertising or analytics SDK of any kind.
13. Changes to this policy
If the app's behaviour ever changes in a way that affects privacy — for example if a future version added an optional sync service — this policy would be updated before that version shipped, the "last updated" date above would change, and the change would be described plainly here rather than buried. We will not quietly start collecting data that this policy says we do not collect. Continuing to use a version of the app after a policy update means you accept the updated policy.
14. Contact
Questions about this policy, or about privacy in TaskFlow generally:
- Email: hello@taskflow.app
- Practical answers: Privacy FAQ
- Permission detail: permissions table
This policy describes the behaviour of TaskFlow 1.0.0 as shipped. It is written to be read, not to be survived.