Privacy Policy

Last updated: 17 October 2026

Zest Snap is developed and operated by Stability Group (Pty) Ltd, a company registered in South Africa under registration number 2018/605063/07. Stability Group (Pty) Ltd (“we”) is responsible for the personal information described here. We collect only what we need to run Zest Snap, we don’t sell it, and we don’t use advertising trackers.

What we collect

Why we use it (and our legal basis)

We don’t use your scans, plans or messages to train AI models, and we don’t sell or rent personal information.

Uploads and AI processing

When you scan, Zest Snap sends your image or PDF to OpenAI to extract dates and event details. Review the result before relying on it. Zest does not save the original upload in its database or browser storage. Requests disable OpenAI response storage; the provider’s own security and abuse retention policies may still apply. Do not upload content you are not entitled to share. Before your first scan or plan, the app asks your permission to send it to OpenAI; you can withdraw that in Settings › Privacy & data, and scanning then asks again.

Plan with Zest (voice and typed plans)

When you speak to Plan with Zest, your phone or browser’s own speech recogniser turns your words into text (on Apple devices this is Apple’s speech recognition; on Android and in Chrome, Google’s). Only the resulting text reaches Zest Snap; Plan with Zest audio is not sent to or stored by Zest Snap. The text is sent to OpenAI to suggest events, which you review before anything is saved. The microphone is used only while you are speaking to Plan with Zest. Voice notes you send in a Shared plan are different: they are recorded and stored as described under Shared plans.

Saved data

Guest history, agenda and reward progress are stored in this browser. Clearing browser data or changing devices can remove access. When cloud accounts are enabled, signed-in records are saved to the dedicated Zest Snap Supabase project, with a separate device copy for offline access. You can explicitly merge guest history and agenda in Settings. Original images are never included in that merge. Local reward progress is not accepted as spendable cloud credits. Planner changes made offline that haven’t synced when you sign out are kept on that device for up to 30 days, so they can sync when the same account signs in again; Clear device data removes them at once.

Retention and deletion

On the Free plan, scan history is kept for 30 days. On Pro it is removed according to your retention preference; the default is 90 days. For signed-in accounts this runs on our servers once a day; for guest history it runs when you open the app. Results held temporarily while a scan is processed are cleared after two days. Agenda and Planner items remain until you remove them. Shared plan messages, attachments and voice notes remain until they are deleted as described under Shared plans. Settings lets you export records, clear device data or delete a cloud account. Deleting your account removes your profile, scans, Planner, reminders, rewards and notification tokens, revokes your sessions and Google Calendar access, deletes the Shared plans you own (including their messages and files, for every member) and deletes your messages and uploads in other people’s Shared plans, your support attachments and the members you blocked. Payment records are kept for up to 5 years for tax and accounting law; support conversations and safety reports are kept without a link to your account. Support attachments are also deleted a year after their conversation is closed. Provider backups may persist until they expire on the provider’s schedule. Full details: Delete your account. Downloaded files and external calendar events are outside Zest’s deletion control.

Calendar and notifications

Calendar files are prepared only when requested. You choose whether to import them into another application. Preparing a file does not confirm that an event was added there. In the apps, adding to your calendar opens your phone’s calendar editor and you confirm each event; Zest Snap does not read your existing calendar. If you connect Google Calendar, Zest Snap stores an access token to add and update the Planner items you choose in your Google Calendar and to show your Google events alongside your Planner while you view it (those events are not saved by Zest Snap); disconnect at any time in Settings. Zest Snap’s use and transfer of information received from Google APIs to any other app will adhere to the Google API Services User Data Policy, including the Limited Use requirements. Google Calendar data is used only to provide the calendar features you turn on; it is not sold, not used for advertising, not used to train AI models, and not read by people except with your permission, for security, or where the law requires it. Reminders, the optional Daily Briefing and Shared plan message notifications are delivered as notifications you turn on. In the iOS and Android apps, reminders and the Daily Briefing are scheduled on your device. Shared plan message notifications are sent through OneSignal, which delivers them via Apple Push Notification service (iOS) or Firebase Cloud Messaging (Android): when you allow notifications in the app, your phone is linked to your Zest Snap account identifier in OneSignal (no name, email or message history), and signing out unlinks it. In a browser or the installed web app, notifications are sent through your browser’s push service (for example Apple, Google or Mozilla). Notification text can include item titles, plan names and people’s display names and, for Shared messages, the first 140 characters of the message. In Settings you can turn Shared plan message notifications off, or keep them but show only “New message”. You can also turn notifications off in your device or browser settings. In a Shared plan, other members can see when you last read its messages (shown as “Read” under their messages).

Tips and offers (optional marketing notifications)

Zest Snap sends marketing notifications only if you turn on Tips and offers in Settings. It is off unless you choose it, and it is separate from reminders, the Daily Briefing and Shared plan notifications, which keep working whether or not you turn it on. When you turn it on, Zest Snap records when you did so and on which kind of device, and uses OneSignal (OneSignal, Inc.) to deliver these notifications: we share your Zest Snap account identifier and your device’s notification subscription with OneSignal for this purpose. We do not share your name, email address, scans or plans with OneSignal. In a browser, nothing is sent to OneSignal before you turn the setting on; in the apps the same OneSignal link also carries Shared plan notifications, and Tips and offers are only ever sent to accounts that turned them on. These notifications are about rewards you earned, your monthly scans or returning to Zest Snap; you receive at most two a week, never overnight in your timezone. Turn Tips and offers off at any time in Settings, or by blocking notifications for Zest Snap; when you sign out, your device stops receiving them for that account.

Shared plans

When you share an event or plan, its members can see its items, the group’s member list with display names and roles, and who is assigned to each task. Owners can rename the group, revoke invitation links, change a member between editor and viewer, and remove members; members can leave at any time. A removed member immediately loses access to the plan, its messages and its files, their tasks are unassigned, and they can rejoin only through a new invitation. An invitation sent to an email address stores that address so only that account can accept it. Invitation links can be opened by anyone who has them until they expire or are revoked, and before signing in they show the plan’s name, the role offered and one item from the plan.

Members can send messages, reactions, replies, photos, files and voice notes in a Shared plan. A voice note is recorded by your device from when you start recording until you stop, and is then uploaded as an audio file. Photos, files and voice notes (up to 25 MB each) are stored in a private Zest Snap storage area in our Supabase project; other members of that plan can open them through links that expire after one hour, and people outside the plan cannot. Messages and attachments are not sent to OpenAI. Your read position in each plan is stored to show unread counts and is visible only to you.

You can edit or delete your own messages. Deleting a message replaces its text with “Message deleted”, removes its reactions and deletes its attachment; the sender and time of the message remain. Leaving a plan, or being removed from it, does not delete messages you sent there; the group can still see them. When the owner deletes a plan, its items, members, invitations, messages and stored files are deleted for everyone. Anything a member has already downloaded or copied is outside Zest’s deletion control.

You can report another member’s message with the flag beside it, and block a member so you no longer see their messages or get alerts about them. A report keeps a copy of the message, the reason you chose and any note you add, so our team can review it even if the message is later deleted; we may remove content or members that break our Terms. The member you report or block isn’t told who did it. Reports are kept without a link to the accounts involved once either account is deleted; blocks are deleted with either account.

Subscriptions

Subscriptions bought in the iOS or Android app are processed by Apple or Google. Zest Snap uses RevenueCat to confirm your subscription status and receives your plan, renewal and expiry details, never your payment card details. Subscriptions are sold only in the iPhone and Android apps; the website doesn’t take payments. If you buy before creating an account, the purchase is held under a random RevenueCat identifier on your device until you sign up or sign in, and is then moved to your account.

Support requests

When you contact support in the app, we keep your messages and any files you attach: photos (JPG, PNG, HEIC, WEBP), videos (MP4, MOV), PDFs, Word and text files. Each file is checked when it is uploaded and kept in a private Zest Snap storage area; only you and our support team can open it, through links that expire after a minute. If you write to us without an account, we store your email address and a hashed identifier for your device so you can follow the conversation; if you later sign in on that device, the request moves to your account. When we reply, we tell you in the app, with a notification and by email (sent through Resend); notifications and emails never include the reply itself. Attachments are deleted a year after the conversation is closed, or when you delete your account.

Operations and international processing

We record request identifiers, outcome, usage and error categories to operate the service. We do not intentionally log document contents or extracted text. To limit abuse of free scans, the app creates a random install identifier that is stored only in hashed form on our servers, and a hashed form of your network address is used for rate limiting; the hashed network address kept with guest scans is cleared after two days. No advertising tracker is included. To see which pages are used, we use Vercel Web Analytics: it sets no cookies and keeps no identifier that follows you across days or sites, and it only receives the page address without its query (shared-plan and invite links are replaced by placeholders) — never your Planner, scans, files or messages. It is switched off when your browser sends Global Privacy Control or Do Not Track.

Service providers

Zest Snap uses these providers to run the service: Supabase (accounts, database, file storage and scheduled jobs; our project is hosted in the EU, in Stockholm, Sweden), Vercel (web hosting, server functions and cookieless page-view statistics), OpenAI (reading scans and suggesting events from Plan with Zest text), Upstash (rate limiting using hashed identifiers), Google (Google Calendar, if you connect it, and speech recognition on Android and in Chrome), Apple (speech recognition on Apple devices and App Store purchases), Google Play (purchases on Android), RevenueCat (subscription status, when in-app purchases are available), Apple Push Notification service and Firebase Cloud Messaging (app notifications), browser push services (web notifications), OneSignal (Shared plan and support reply notifications in the apps, and Tips and offers notifications if you turn them on) and Resend (support reply emails). Vercel, OneSignal, OpenAI, Resend and other providers may process data outside your country, including in the United States. Each provider processes data only on our instructions to run Zest Snap, under contracts that require it to be protected.

Your choices

In Settings you can export your records, change how long scan history is kept, clear data on this device, disconnect Google Calendar and delete your account. You can turn notifications off at any time, turn Tips and offers on or off, leave a Shared plan, and delete your own Shared messages.

Your rights

Depending on where you live, including under South Africa’s Protection of Personal Information Act (POPIA) and the EU/UK GDPR, you can ask us to: tell you what personal information we hold and give you a copy; correct it; delete it; restrict or object to how we use it; and give it to you in a portable format. You can withdraw consent at any time (for example, turn off Tips and offers). Email privacy@zestsnap.app from your account email; we reply within 30 days. If you’re not happy with our answer you can complain to the Information Regulator (South Africa) or your local data protection authority.

Security

Data is encrypted in transit (HTTPS) and at rest by our hosting providers. Database rules limit each account to its own records, files are kept in private storage with short-lived links, and staff access is limited and logged. No system is perfectly secure; if a breach affects you, we’ll tell you and the regulator as the law requires.

Children

Zest Snap is for people aged 18 and over. It isn’t directed at children, and we don’t knowingly collect their information. If you think a child has given us personal information, contact us and we’ll delete it.

Changes to this policy

We’ll update the date at the top when this policy changes and tell you in the app before significant changes take effect.

Contact

Privacy enquiries and requests (including our Information Officer under POPIA): privacy@zestsnap.app. General support: support@zestsnap.app.