Last updated October 31, 2026
This policy explains what the To-Do List app collects, why, and what control you have over it. It applies to the main task list and the shared Group workspace.
| Data | Where it comes from |
|---|---|
| Email address | When you sign in with Google or create an account with email and password |
| Display name and profile photo | From your Google account, or a name you set yourself for group display |
| Task content | Everything you type into a task: text, subtasks, deadlines, priority, difficulty, effort estimate, and the folder you file it in |
| Folders, roles, and access settings | The folder names and colors you create (kept in your own profile for your personal list, or in the group for a group's list). In a group: the roles (job titles) an owner or admin creates, which role each member has, and any extra access an owner or admin gives a specific member, such as the right to assign tasks or manage folders |
| Group data | Group names, invite codes, membership (including when you joined, used once for a "here's what you missed" summary, and whether you've dismissed it), task comments, task suggestions, task handoff requests (offering one of your own tasks to a specific teammate), task assignments (an owner, an admin, or a member they've given that right can put a task directly onto a teammate's list; a record is kept of who assigned it, who it went to, when, and who declined it and when), and the usual hours a group's owner sets for its Availability tab, if you use the Group workspace |
| Timezone and group availability | Your timezone (e.g. "America/Edmonton"), detected automatically from your browser and changeable by you, and the weekly free / busy / if-needed grid you paint in a group's Availability tab, if you use it. Painting availability is optional, a group works fine without it |
| Notifications | The items in your notification bell: when a teammate in a shared group assigns or suggests a task to you, declines one you assigned, or comments on your task, a short note (who it's from, a one-line title, the task text, the group name and the time) is saved in your own account, where only you can read it. Notes are removed automatically after 30 days, and you can mark them read. Reminders for tasks that are due soon are worked out on your device from your own tasks and are not stored. @mentions in a comment send the person you mention the same kind of note |
| Email notifications | Your email address (already above) is used to email you about notifications you haven't looked at after a few minutes: tasks assigned to you, reviews, @mentions, blocked tasks, and, for a group's owner or admins, the weekly report. It's one email per batch and never marketing. You can turn it off in Settings (the setting is saved in your profile). We only email addresses that have been verified (Google sign-in is verified automatically; for an email-and-password account, Firebase sends you a verification link). The emails are sent through Resend (an email delivery service) by a small server program of ours, which reads only the notifications and the email setting it needs to do that |
| Task status and reviews | In a group, a task you own can be marked In progress, Blocked (with a short reason you write), or In review. If the person who assigned it asked to approve it (an option when assigning), they can approve it or send it back with a short note, and it can't be marked done until they approve. This is saved on the task, so everyone in the group can see it, and the people who need to act on it get a notification. The weekly team report that a group's owner and admins see is worked out on their device from the group's tasks and completion history, and is not stored; a one-line note about it is saved in their own notifications |
| Brain Dump chat (Dusty) | What you type, and any image, PDF, or text file you attach, if you use the Brain Dump chat |
| Dusty's memory | Short facts Dusty saves about you during a chat (e.g. a preference, an interest, or a recurring pattern), automatically when he's confident it's useful - see AI features below for how you're shown and can undo each one |
| Completed-task history and streaks | A short record of each task (and each individual step of a task) you complete, its text and when, plus your current/longest streak, total completions, and earned achievement badges - kept in your account so they follow you across devices, not just the browser you completed them in |
| Local preferences | Stored only on your device: auto-sort setting, popup alert setting (desktop alerts are on by default and only appear once you allow them in your browser; you can turn them off any time), which declined-task notices you've dismissed, which "What's new" update you last saw, activity history for the streak chart, onboarding progress, and your recent Brain Dump chat text (see AI features below) |
| Feedback you send us | The category and message you submit from Settings → Feedback, along with your email address and browser/device info, so we can read and follow up on it |
Your account and task data are stored in Firebase Authentication and Cloud Firestore, both Google Cloud services. We don't run our own separate servers or databases outside of Firebase. Some preferences (like whether auto-sort is on) live only in your browser's local storage and never leave your device.
Some fonts, icons, and code libraries are loaded from public content delivery networks (Google Fonts, cdnjs, and jsDelivr). Like any website you load a file from, they receive your IP address and basic browser info when your browser requests those files. None of your account or task data is ever sent to them.
We don't set or use any cookies of our own. Staying signed in works through your browser's local storage and IndexedDB instead (the same on-device storage already mentioned above), not a cookie. The only place a cookie could be involved at all is if you sign in with Google: that sign-in popup runs on Google's own domain, and anything it sets there is Google's cookie, under Google's own privacy policy, not something this app reads, sets, or controls. We also don't use any tracking or advertising cookies, ours or anyone else's.
The Brain Dump chat (Dusty, the assistant you can open from the app) sends what you type, plus any image, PDF, or text file you attach, to Google's Gemini API to turn it into proposed tasks. This goes through a small server (a Cloudflare Worker) that we run ourselves, which checks that you're a real signed-in user of this app before forwarding anything, and does not store your message or attachment anywhere - it's passed through to Gemini and back, and forgotten. Chat history stays on your own device only, in your browser's local storage, so it survives a reload or switching between the main app and Group instead of disappearing - never sent anywhere except back to us as part of your very next message, the same as everything else on this page. It clears automatically after a few days of not chatting, or any time from your browser's own site settings.
Each time you chat with Dusty, he's also given a read-only snapshot of your current task list, both your personal list and every group you're in, so he can give relevant help and avoid suggesting things you're already tracking. It also includes the names of your folders (your own, or the open group's), so he can suggest which one a new task belongs in. He only proposes a folder; it's shown on the task's review card and applied only if you confirm it. Nothing about this snapshot is stored anywhere beyond that one request.
Dusty can also propose a change to a task you already have, for example updating its priority, difficulty, deadline, schedule, its own text, its steps, or marking it done, if you ask him to. Like everything else he drafts, a proposed edit is only ever applied once you review and confirm it - he never changes a task on his own.
Dusty can also propose actions beyond tasks: creating folders and filing your tasks in them, assigning a new task to a teammate or to everyone in a group, and (for a group's owner or admins only) creating roles or changing a member's role or access. He can also mark one of your own tasks In progress or Blocked (with a reason you give), send it for review when the person who assigned it asked to approve it, and approve or send back a task that is waiting for your review, and he can ask that a task you assign needs your approval. A comment he drafts can @mention a teammate, who is then notified. Each one is shown on a review card first and only happens if you confirm it. Dusty is only told what you are allowed to do and can only offer that, and the app checks your permissions again, and our database rules enforce them a third time, when you confirm. Changes to roles or access start unticked so you must choose them on purpose.
If you ask Dusty to suggest a task to a teammate or post a comment on one of their tasks, and you confirm it, it's posted under your own account exactly as if you'd typed it yourself - see "Who else sees it" below.
Dusty may also remember a short fact about you between chats (a preference, a constraint, something that keeps coming up). He saves one automatically only when it comes from something you said yourself in the chat, and shows you each one right there as it's saved, with an immediate one-tap way to remove it. If he picks up something you didn't say (for example from the other text he can see, like a teammate's task), he asks you first with a "Remember this?" prompt and saves nothing unless you tap Save. Either way, it's never shown to anyone but you, is stored in your own account data in Cloud Firestore, and you can view and delete anything he's remembered at any time from Settings - included if you export or delete your account.
Settings also lets you paste a longer piece of text or upload a file specifically to have Dusty pull out multiple facts at once, instead of one at a time - it goes through the exact same Gemini pipeline described above, and you review and pick which of the results to actually save before anything is written.
Google Cloud (Firebase) as our hosting and database provider, Google's Gemini API for the Brain Dump chat described above, and, if email notifications are switched on for the app, Resend, an email delivery service, which receives your email address, name and the text of the notifications we email you so it can deliver them. We do not sell your data, and we do not currently run any analytics or ad tracking. If that changes, this page will be updated first.
If you join a Group, the tasks, comments, and suggestions you post there, including anything you ask Dusty to send or post on your behalf and then confirm, are visible to the other members of that specific group, that's the point of a shared workspace, but never to anyone outside it. This includes a task you suggest to one specific teammate: it's visible to everyone else in the group too, the same as everything else posted there, not private between just the two of you. The same is true if you hand off one of your own tasks to a specific teammate: the request, and who it's offered to, are visible to the whole group the same way the task itself already is. Your join date, and whether you've dismissed the one-time "here's what you missed" card shown to new members, are part of the same group membership data every member can already see, like the roster itself. Your current streak and earned achievement badges (not your task history, email, or name) are also kept in a small separate record built specifically to be readable this way, so a group's roster can show them next to your name - the app only ever displays this inside a group you share, though technically it's not restricted to only people you're grouped with the way the rest of your account data is.
In a group, folders, roles, and each member's role are visible to every member, as is any extra access an owner or admin has given a specific member. If an owner, an admin, or a member they've given that right assigns you a task, it appears on your list straight away and shows who assigned it. For a short time after (currently 15 minutes) you can decline it; declining it, or deleting it later, tells the person who assigned it, and that is recorded in the group's assignment record, which every member of the group can see. A task given to several people appears once to the group, as a single card showing who has finished it. If you leave a group you're removed from its roster; any role or access setting for you is no longer shown, and is cleaned up the next time an owner or admin saves roles.
In a group, a task's status (In progress, Blocked with its reason, In review, Approved), whether the person who assigned it asked to approve it, and a reviewer's short note when they send a task back, are saved on the task and visible to every member of that group, like the rest of the task. When you @mention someone in a comment, the comment is visible to the group as usual and the person you mention gets a notification. If you make one of your tasks wait for other tasks in the group, the list of tasks it waits for is saved on the task and visible to the group, and the owner of a task you finish may be notified that it's now free to start. A group's owner and admins see a weekly report built from the group's tasks and completion history: how many tasks each member finished, and how many are open, overdue or blocked.
If you paint your availability in a group, that grid and the timezone it was painted in are visible to the other members of that specific group, so the app can line up everyone's free time and suggest meeting times. It's never shown outside that group, and each group you're in has its own separate grid. The grid only records free, busy, or if-needed for each time slot, never a reason or what you're doing instead. That covers both your usual weekly pattern and any one-off changes you make for specific upcoming dates. The timezone saved on your own profile stays private to you. Teammates only see the copy attached to a grid you've actually painted. If you leave a group, your grid is deleted. If you're removed by the owner or an admin, it stays in that group's data but is no longer shown to anyone, and it's deleted along with the rest of the group if the group is deleted. Because you're no longer a member at that point, deleting your own account later doesn't reach that one grid; email us (below) if you'd like it removed sooner.
Feedback you submit from Settings → Feedback is only ever visible to you and to us (the developer), never to other users, and is used solely to read, triage, and follow up on what you sent.
Your data is kept for as long as your account exists. Deleting your account removes it right away, we don't keep backups beyond what's needed for a short operational window.
This app is not directed at children under 13, and we don't knowingly collect data from anyone in that age group.
If this policy changes in a way that matters, we'll update the date at the top of this page. Continued use of the app after a change means you accept the update.
Questions about your data or a deletion request that didn't go through cleanly: abirraiyan1234@gmail.com.
This is a plain-language policy for a small independent app, not a substitute for legal advice. See also the Terms of Service.