Privacy Policy
The short version: your plan lives on your phone, chat goes to the AI to get a reply, and nobody is tracking you. If you ask another signed-in adult to watch a task, we send them a ping when you finish (or when a timed task ends unfinished), and you get a ping when they say yes. That is not a copy of your plan. If you are an adult and connect an AI assistant (Buddy is built to work with ChatGPT, Claude Code, Claude and Cursor), tasks you send from it wait on our server until your phone collects them, for 14 days at most. No assistant can ever see your plan.
1. What stays on your phone
Tasks, task notes, streaks, chat history, reminders, your optional profile picture, and most settings are stored only on your device using on-device storage. Your plan stays on this phone unless a signed-in adult turns on Back up on cloud in Account, under Data; it is off until you choose it. Back up on cloud encrypts your tasks, your notes and their folders, the Explore ideas you saved or hid and your settings on this phone, then keeps them on our servers, tied to your account, so a new phone can restore them after you sign in; we hold the keys for that restore. Chat photos, pictures in your notes and chat history are never in it, and turning it off deletes the backup, as Delete account deletes the backup and its keys. When you chat, this week's tasks ride along so the reply fits your day, and so does the day you open Talk on, if it falls outside the week; tap the lock on a task to keep it out.
If you (an adult, signed in) invite someone to watch a task, we store a short label, first names, who owns it, who is watching, and a timed task's end instant. Not the rest of your day. Finishing a task that does not repeat, or ending the watch in any way, deletes that row. See section 2b.
Most links you paste or share to Buddy are kept on this phone under Saved links: the address, the day you saved it, whatever the page told us about itself, and whatever you say about it. A picture you share is copied into the app and stays on this phone. Buddy is never given the list. See section 2d.
Ideas you save or hide on Explore are kept on this phone as a list of which ideas they are, whether you saved or hid each one, and when. If you (an adult, signed in) turn on Back up on cloud, that list goes into your encrypted backup with your plan, so a new phone can restore it. See section 2c.
Notes you write in Buddy are kept on this phone: the text and how it is formatted, checklists, the folders you file them in, whether you pinned each one or shared it in from another app, and when you wrote and last changed it. Text you share to Buddy from another app lands there too when it has no link in it, when its link is a map, or when it is more than a short title with a link. A picture you add to a note, from your photos, the camera or by pasting, is copied into the app and stays on this phone unless you share it yourself. Buddy never reads your notes: they are not part of what is sent when you chat or talk, and no AI assistant you connect can see them. Share sends a note's text, or one of its pictures, to the app you choose, and only when you tap it. Turning a note into a task copies its title and the start of its text into a new task, which starts locked; from then on it is a task like any other, and a task that is not locked rides along when you chat. A note you delete waits in Recently deleted for 30 days; after that it is removed, with its pictures, the next time you open Notes or Recently deleted.
If you (an adult, signed in) turn on Back up on cloud, your notes, including any in Recently deleted, and your folder names go into that encrypted backup with your plan, so a new phone can restore them. The pictures in your notes are never in it. If backup was already on before Notes came to Buddy, your notes join it at its next update, and you can turn it off in Account, under Data. A note you delete stays in the backup until the backup next updates. Restoring adds the backup's notes to the ones already on the phone and never deletes one. If your notes grow very large, the ones in Recently deleted and then the ones you changed longest ago may be left out of the backup; Buddy says how many under Data, and they stay on the phone. Start fresh deletes your notes, folders and their pictures from this phone but leaves the copy in the backup; turning backup off, or deleting your account, deletes that copy.
If you (an adult, signed in) connect an AI assistant, tasks you send from it wait on our server until this phone collects them. Once collected they are deleted from our server and live in Drafts on this phone, like any other draft, until you add or skip them. See section 2e.
If you delete the app, or use Start fresh in Account, that on-device data is removed from the device. When you pick or take a picture, your phone's photo picker can leave a temporary copy in the app's cache, which Start fresh does not clear; your phone removes it when it needs the space, and deleting the app removes it. Like everything else on your phone, what Buddy keeps there is part of your phone's own iCloud or computer backup if you use one; that backup is Apple's or Google's, not ours.
2. What leaves the device when you use Buddy
Typed chat is free for a small number of messages each day. A few short Talk sessions a day are also free; longer Talk, unlimited chat, and High Thinking after a few free tries are part of Buddy Pro. When you use chat or voice:
- The text you type or speak (after transcription), plus enough of your current task list for context, is sent to our server (Supabase Edge Functions) and then to OpenAI to produce a reply and optional task suggestions. Tasks you lock, or every task while Keep my plan private is on in Account → Tasks, are left out. Buddy can still suggest new tasks.
- The language the app is set to is sent with these requests, as a two-letter code, so Buddy answers in it and voice is understood in it. It is not stored and not logged.
- Photos you attach in chat are sent with that turn so Buddy can reply from what is in them. They are not kept as a lasting gallery on our servers.
- PDFs you attach in chat are sent with that turn so Buddy can read them (text extract and/or OpenAI PDF processing). They are not kept as a lasting document archive on our servers.
- Voice you record while holding the mic, dictating, or while Talk mode is listening is sent so Buddy can hear you, then not kept by Buddy as a lasting recording archive.
- Spoken replies (if you turn voice replies on) are generated as audio and played on your device.
We use this only to provide the feature you asked for. We do not sell it, do not use it for advertising, and do not build a marketing profile of you from it.
OpenAI processes that content under their terms as our processor for generating replies. See OpenAI’s policies for how they handle API data.
High Thinking is a longer planning turn that can ask a few skippable questions about your schedule (days a week, hours, an exam date). A few tries are free; more is part of Buddy Pro. Those turns still send your words to OpenAI the same way. Buddy does not ask for height, weight, or other body measurements.
When you allow location for weather, approximate coordinates (rounded for privacy) are sent to our server and Apple WeatherKit so we can show current conditions. Place names are resolved on your device when possible. Weather responses may be cached on the device for a short time so we do not call the API on every open.
2b. Watching a task
Watching is optional, adult-only, and both people must be signed in. Guests cannot watch or be watched. If age is missing, Buddy treats the person as a child and the server refuses the watch.
When you tap “Invite a watcher” on a task and they say yes, we store:
- Your account id and theirs
- A short label for the task (usually the title)
- An id that points at the task on your phone (not the full plan)
- First names, if you gave them, so the pings can say who finished and who said yes
- A timed task's end instant, so we can ping once if it is still open then
- A push token for each of you, so the pings can reach your phones
We do not upload notes or the rest of your day. A timed task's end instant is stored so the second ping can fire. The watcher never sees your list. They get “{name} finished {label}.” or “{name} hasn't finished {label} yet.” You get “{name} said yes and gets a ping when you finish {label}.”
You can remove a watcher from the task, cancel a link nobody has answered, or stop sharing the task. They can say no thanks to a link, or leave from Tasks I watch. Deleting or archiving the task ends the watch, and so does finishing a task that does not repeat. Start fresh ends every watch you set up or joined. Ending a watch in any of these ways deletes the row. Delete account wipes watches and push tokens for that account.
2c. Explore
Explore is a shelf of task and plan ideas that we write and publish. When you open it, your phone downloads that list from our website, the same address as this page. The request asks for a file and carries nothing else. It does not send your name, your age, your plan, or which ideas you have added, saved or hidden. Opening Explore uploads nothing.
Everybody is offered the same list. Everything else is decided on your phone. Your age range picks the ideas meant for you, the daily shuffle is worked out on the device from a number that never leaves it, and the interests you pick come first. For adults, the ideas you add, save and hide and the kinds of tasks on your plan also nudge the order; a task you lock, and every task while Keep my plan private is on, is left out of that. None of it is sent. The interests you pick stay on this phone and are not part of the cloud backup, and Restore default settings clears them. Adding an idea writes an ordinary task on this phone, and from then on it behaves like a task you typed yourself.
Saving and hiding ideas. Swipe an idea right to save it for later, or left to hide it; with a screen reader, Save and Hide are actions on the idea. Which ideas you saved or hid is kept on this phone, and Explore leaves them out after the list has downloaded, so the request still carries nothing about them. We never count them on our server, and neither Buddy's chat nor an AI assistant you connect is ever given them. If you (an adult, signed in) turn on Back up on cloud, the list goes into that encrypted backup with your plan, and restoring the backup on a phone replaces the ideas saved or hidden there. Start fresh deletes the list from this phone.
2d. Saved links, and the pictures you share
Nothing is fetched. Buddy never opens the page, the post or the video you saved. It does not download the picture on that page, and it does not ask any other service about it. That is why a saved link has no name until either your browser hands one over with the share or you write one yourself.
When you share a web page from a browser, the share itself carries what the page says about itself: its title, a short description, the site's name and the address of its preview image. Your browser reads those from a page you already had open and passes them along with the address. We keep them so the row has a name. The preview image is never downloaded or shown. Shares from most apps carry none of this, which is why those rows show only a domain.
Buddy is not shown your saved links. The list is not part of what is sent when you chat. Two things can leave the phone, and only because you ask for them. Tapping Talk it through starts a chat message containing your own sentence about the item, never the address, because Buddy cannot open one. If that item is a picture you saved, the picture is attached to that message so Buddy can read it, exactly as a photo you attach in chat is: it goes when you press send and not before. And if you turn a saved link into a task, the address is kept in that task's note, which travels with your tasks as described in section 2.
Removing a saved link deletes its picture from the phone with it, and Start fresh removes them all.
Not every share becomes a saved link. Text with no link, a map link, or a link that comes with more than a short title is kept as a note instead, with its text, including any web address in it, and the page's title when a browser shares a map. Notes are never shown to Buddy. See section 1.
2e. Tasks you send from an AI assistant
Buddy is built to work with ChatGPT, Claude Code, Claude and Cursor. If you are an adult and use one of them, you can connect it to Buddy so it can send tasks to your Buddy Drafts. Account → Tasks shows the ones you can connect today. This is optional and free, and it works one way. An assistant can send tasks in. It can never see your plan, your chats with Buddy, your saved links, or anything else you keep in the app.
To connect, Buddy shows you a code (Account → Tasks, then the assistant) and you type it on a page on this website. ChatGPT and Claude open that page for you. Claude Code and Cursor open it in the browser on your computer when they sign in. The code works once, for 10 minutes. That page asks for nothing else and sets no cookies. When ChatGPT opens it, it can also show a sign-in box that only OpenAI's reviewers use, with a test account of ours. Before anything can arrive, Buddy on your phone asks you to allow the connection.
In ChatGPT, before anything is sent, ChatGPT can show you the tasks as a card. On the card you can leave some out, and send them one at a time or all together. To change a task, ask ChatGPT in the chat and it makes a new card. To make each card, ChatGPT passes the tasks to our server to be checked. We do not store or log them. ChatGPT is told to send them only when you choose to, with Send on the card or by asking it in the chat; our server cannot tell which of the two you used. What you leave out stays in ChatGPT; we are not told. The other assistants have no card. We tell them to send only when you ask, but our server cannot check that you did; an assistant that asks you before it uses a tool is what stops a send you did not ask for. Whatever arrives waits in Drafts, and nothing goes on your plan until you add it.
When you send tasks, we store only the tasks themselves:
- Each task's title, and its note if it has one
- A day, a part of the day or a start time, and how long it should take, when the assistant gives them
- A reminder, and a repeat with the day it stops, when the assistant gives them. A repeat can stop at most 12 months ahead
- A task profile name, and whether the task is private or keeps a streak, when the assistant gives them. Only a task that repeats can keep a streak
- An emoji, if the assistant picks one
- A name for the plan, and a random reference that keeps one plan's tasks together in Drafts
Assistants are told to add a reminder, a repeat, a profile, private or a streak only when you ask for them. They are kept with your Buddy account id so they reach your phone and nobody else's, and with which assistant and which of your connections sent them, so Drafts can say where they came from and disconnecting one connection removes only what it sent. We do not receive your conversation with the assistant. An assistant may attach details of its own to each request; ChatGPT, for example, adds your language and an approximate location. We do not read, log or store them. In return, the assistant is told how many tasks arrived, which of them it had already sent over the same connection in the last 2 days, which ones Buddy could not take and why, and where to find them in Buddy. If Buddy cannot take a send at all, the assistant gets a short reason, for example that you still need to tap Allow on your phone, that too many tasks are already waiting, or that this account cannot receive tasks. It is never told anything from your plan or your Drafts, or what another assistant sent. A refusal because too many tasks are waiting, or too many were sent today, counts every assistant's sends together.
We use these tasks for one thing: getting them to your phone. They are not used for advertising, and they are not sold or shared. Waiting tasks are held by Supabase, which runs our server. Requests from the assistants and from the connect page pass through Netlify, which hosts this website and forwards them to that server. Both act for us as service providers. Once you add a task from Drafts, it is an ordinary task on your phone and is treated like any task you typed, as described in sections 1 and 2.
How the assistants differ.
- ChatGPT runs on OpenAI's servers and sends from there, and can show the card described above.
- Claude (claude.ai and the Claude apps) runs on Anthropic's servers and sends from there. The Claude apps on your phone and your computer share one connection. For ChatGPT and Claude, the connect page still opens in your own browser, so your internet address reaches Netlify and Supabase when you connect, as it would on any website.
- Claude Code runs on your own computer and sends from there, so your computer's internet address reaches Netlify and Supabase along with a key that is linked to your Buddy account. Each time you sign in, even again on the same computer, Claude Code makes a new connection. Each one is listed in Buddy with when it was last used.
- Cursor: Buddy's setup asks Cursor to sign in and send from your own computer. Each time Cursor signs in to Buddy is its own connection, so one computer can have more than one. Each one is listed in Buddy with when it was last used. Cursor can also work through its own servers, which we cannot see or prevent, so we cannot promise where Cursor sends from or where it keeps its key. Connecting from Cursor's cloud agents is not supported.
For Claude Code and for Cursor, Buddy keeps at most 10 working connections for each. When an 11th signs in, Buddy ends the one used longest ago; tasks it already sent keep waiting for your phone.
How long we keep them. Tasks are deleted from our server as soon as your phone collects them: when you open Buddy, or shortly after they arrive if Buddy is already open. Buddy checks for them about every 15 seconds while it is open, using only your sign-in; the check never sends your plan. Your phone collects only while Buddy is signed in to the same account and Drafts has room: it holds up to 120 tasks from assistants. Tasks your phone never collects are deleted after 14 days. We also keep a record of each connection, with when it was connected and last used, while it lasts and for 30 days after it ends. The keys an assistant uses to send are stored only in a scrambled form that cannot be turned back into the key, until they expire. To stop an accidental repeat from arriving twice, and to limit how many tasks can arrive in an hour or a day, we keep fingerprints of what you send, never its text, for up to about 2 days, and counts of recent sends, which are kept with your account id for up to about 2 days, even after you delete your account. Disconnecting, deleting your account and Start fresh delete those fingerprints straight away; if Start fresh cannot reach our server, Buddy tells you. Supabase, the service our server runs on, backs up its database once a day and keeps each backup for 7 days, so something deleted from our server can stay in a backup for up to 7 days before it is gone.
Your controls.
- Disconnect in Buddy (Account → Tasks, then the assistant) first moves waiting tasks into Drafts, as many as Drafts has room for, then stops that assistant sending and deletes anything from it still left on our server. Buddy tells you how many that is before you confirm. For Claude Code and Cursor you can disconnect one connection or all of them. Disconnecting one deletes only what it sent; disconnecting all of them also deletes tasks left waiting by a computer that signed itself out. Tasks already in Drafts stay on your phone until you add or skip them.
- Delete account ends every connection and deletes anything still waiting, without moving it into Drafts first.
- Removing Buddy Day Planner (listed as buddydayplanner) in ChatGPT's own settings also ends that ChatGPT connection and deletes the tasks it sent that are still waiting.
- Removing Buddy inside Claude Code or Cursor does not end the connection on our side, and removing or disconnecting it inside Claude may not either. To be sure, use Disconnect in Buddy. When you sign Buddy out in Claude Code, or Claude Code signs a computer out itself, that computer's connection ends, but tasks it already sent keep waiting for your phone until you collect them, disconnect, or they reach 14 days. A computer where Buddy was removed can stay listed for up to 60 days, and a Claude connection removed inside Claude stays listed until you use Disconnect in Buddy. Signing out of Buddy in Cursor does not end its connection either.
Adults only. Connecting is offered only to adults who are signed in. Our server checks the age range on your Buddy account when Buddy makes a code, when an assistant connects, and every time it sends. If you change your age range in Buddy, it reaches your account as soon as Buddy is signed in and online, and Buddy keeps trying until it does. If the new range is under 18, or you prefer not to say, Buddy then ends every connection too. If the account is not marked 18 or over, or has no age at all, the answer is no: an existing connection is ended and anything waiting is deleted.
The makers' role. ChatGPT is made by OpenAI, Claude and Claude Code by Anthropic, and Cursor by Anysphere. You use each one under its maker's own terms and privacy policy, and your conversation with it is covered by those, not by this policy. The tasks it sends to Buddy, and the tasks ChatGPT shows you on a card, reach our server, and this policy covers them as described above. For this feature none of them is acting for us, and none is our processor. That is different from Buddy's own chat, where OpenAI does work for us as described in section 2.
3. Optional sign-in
Signing in with Google, Apple or a phone number is optional. Phone sign-in is offered only to people who told us they are 13 or over. If you sign in, we store a small cloud profile so a new phone can feel familiar:
- The email address on your Google or Apple account, which is how we recognise your account. Apple may give us a private relay address instead of your real one
- If you sign in with Google, the name and the link to the profile picture on your Google account. Google sends them with every sign-in and our sign-in service keeps them, but Buddy does not use or show either one
- Your phone number, if you signed in with it, so you can sign in again
- Your first name (if you provided one)
- Your age range, if you chose one, so watching and connecting an AI assistant can stay adult-only
- A couple of display preferences (for example voice-reply and text-size settings)
- If you connect an AI assistant, a record of each connection (see section 2e)
When you sign in with a phone number, the number is sent to Twilio, a messaging service acting as our processor, only to send you the sign-in code. The code arrives by text. The number is not used for marketing and is never shared for any other purpose.
Your tasks, your notes and the Explore ideas you saved or hid still stay on this phone unless you turn on Back up on cloud, and your chats always do. Tasks you send from an AI assistant wait on our server only until this phone collects them. You can remove the cloud account anytime with Delete account in Account. That deletes the authentication account and the cloud profile, and every AI assistant connection with the tasks still waiting for it. On-device tasks and notes remain until you also use Start fresh or delete the app.
4. Permissions
- Microphone: while you hold the mic, dictate, or use Talk mode. A listening state is visible whenever the mic is on.
- Notifications: local reminders are still scheduled on your device. If you watch someone else’s task, we also send a remote ping when they finish (or when a timed task ends unfinished). If someone says yes to watching your task, you get a ping too. These remote notifications use a push token on our server, and Expo (650 Industries) and Apple's or Google's push service deliver them. There is no marketing push.
- Location (optional): only if you allow it, and only while the app is open, so Today can show local weather and a city name. Approximate coordinates are sent to our server and then to Apple WeatherKit. Buddy does not track you in the background, does not keep a location history, and works fully if you say no.
- Camera and photos (optional): only when you take or choose a picture. A profile picture, or a picture you add to a note, stays on this phone. A photo you attach in chat is sent with that message, as described in section 2.
5. Ads, analytics, and selling data
Buddy does not include ads. Buddy does not include analytics or tracking SDKs for advertising or behavioural tracking. We do not sell your personal information.
We may add crash-only reporting later (no advertising identifiers, no event tracking). If we do, this policy will be updated before that ships.
6. Children and mixed audience
Buddy is for all ages, including children under 13. It is not in Apple’s Kids Category because adults use it too.
If a child talks or types to Buddy, that message and any voice clip go to OpenAI so Buddy can reply, the same path as for an adult, described in section 2. If a child attaches a photo or a PDF in chat, or sends a picture they saved using Talk it through, that file goes to OpenAI for that turn the same way, so Buddy can reply from what is in it. It is not kept as a lasting gallery. Tasks, notes and chat history are still kept only on the phone, because Back up on cloud is offered only to signed-in adults. We do not use a child’s chat to advertise or to build a marketing profile.
We ask for an age range (or “prefer not to say”) so Buddy uses shorter, safer replies for children. That range is sent with the chat request only to pick those rules. Explore uses it on the phone, to leave out ideas that are not meant for children, and sends nothing to do it. Explore puts the interests someone picks first, and learns which kinds of ideas they like only once they are an adult. If age is missing, Buddy treats the person as a child.
Watching is not offered to children. The server checks that both accounts are marked 18 or over. A child’s tasks are not written to the watch table.
Connecting an AI assistant (ChatGPT, Claude Code, Claude or Cursor) is not offered to children, to teenagers, or to anyone who has not told us their age. The server checks that the account is marked 18 or over before it makes a code, when an assistant connects, and on every send, so tasks from assistants are only written to our server for an account marked 18 or over. If the age range is changed on a phone while signed out, our server learns it the next time that phone signs in, and every connection then ends.
Phone sign-in is not offered to children, or to anyone who has not told us their age, so we do not ask a child for a phone number.
Signing in is optional and not required to plan a day. The optional cloud profile is a first name, the age range if one was chosen, and a couple of display settings. Parents or guardians with questions can email us.
7. How to delete your data
- On this phone: Account → Data → Start fresh, or delete the app.
- Cloud account: Account → Delete account (removes the signed-in account and cloud profile).
- Cloud backup: Account → Data, then turn Back up on cloud off, which deletes the backup from our servers. Delete account deletes the backup and its keys too. Pausing updates keeps the copy that is there.
- Watches: remove the person on the task, leave from Tasks I watch, Start fresh, or Delete account (wipes watches and push tokens).
- AI assistants: Account → Tasks, then ChatGPT, Claude Code, Claude or Cursor, then Disconnect. Buddy first moves waiting tasks into Drafts, then ends the connection and deletes anything from it still on our server. For Claude Code and Cursor, disconnecting one connection deletes only what it sent, and disconnecting all of them also deletes tasks left by a computer that signed itself out. Delete account ends every connection and deletes anything still waiting, without moving it into Drafts. Start fresh does the same when you are signed in; if it cannot reach our server, Buddy tells you, and you can try again or carry on, which leaves the connections until you sign in and use Disconnect. If you signed out first, sign in and use Disconnect. For ChatGPT, removing Buddy Day Planner (listed as buddydayplanner) in ChatGPT's settings also works. Removing Buddy inside Claude, Claude Code or Cursor may not, so use Disconnect in Buddy.
- Subscription: managed in your Apple / Google account settings, not by deleting the Buddy account alone.
Our server's database is backed up once a day, and each backup is kept for 7 days. So anything deleted from our server, a deleted account included, can stay in a backup for up to 7 days, and then it is gone.
8. Contact
Questions about privacy: support@buddydayplanner.com
Buddy Day Planner · Privacy Policy · Home