Privacy Policy
Last updated: May 7, 2026KindKeep is a place for the people you love. The data you put in it is yours, full stop. This policy explains, in plain terms, what we collect, why, and what choices you have.
What we collect
We only collect what KindKeep needs to work, plus — with your permission — what helps us find more people who'd love this app. We never sell your data. We never share what you actually write inside KindKeep with anyone.
Account
- Apple ID identifier and email — when you Sign in with Apple. If you choose Apple's "Hide My Email" relay, we only see the relay address.
- Display name — optional, only if you provide one.
- Account identifiers — the unique IDs our backend, subscription, and analytics services generate for your account (Supabase user ID, RevenueCat user ID, PostHog distinct ID). Used to keep your data tied to your account across devices.
- Locale and date format preference — to format dates the way you expect.
Your KindKeep data
- The contacts (names, relationships, birthdays), notes, gift ideas, and reminders you create inside the app.
- Stored on your device and synced (if you have KindKeep Premium) to our database, encrypted in transit and at rest.
- This data is never sent to advertisers, analytics partners, or anyone outside the providers we list below.
Contact photos (optional)
- If you choose to add a photo to a contact, we ask for permission to access your iOS Photo Library (the standard system prompt) and you select a single image.
- The image is resized and re-encoded on your device, then uploaded to our secure storage on Supabase Storage. It's linked to your account so it appears across your devices and in on-device widgets.
- We do not analyze, scan, train models on, share, or use these photos for anything other than displaying the contact in the app.
- You can remove a photo any time by editing the contact. Deleting your account permanently removes all your contact photos.
- You can revoke Photo Library access at any time via iOS Settings → Privacy & Security → Photos → KindKeep.
iOS Contacts (optional, Premium)
- If you tap "Import from Contacts" (a KindKeep Premium feature), iOS shows the standard system prompt asking for access to your Contacts.
- If you grant access, we read your address book only while the import sheet is open, so you can choose which people to add.
- We import only the contacts you explicitly select. We store only the contact's name and the relationship category you assign — we do not store phone numbers, email addresses, postal addresses, organization names, or any other field from the iOS Contact record.
- Your full Contacts list is never transmitted to our servers.
- You can revoke Contacts access at any time via iOS Settings → Privacy & Security → Contacts → KindKeep.
Monthly Wrap snapshots
- Once a month, KindKeep generates a "Monthly Wrap" — a small summary of activity from the prior month (number of contacts, count of memories added, upcoming birthdays, your most-tended five). This summary is stored as a snapshot in our database so it stays stable for re-sharing.
- Wraps contain only data you have already entered into KindKeep (names you typed, counts of notes and gift ideas). They never include the body of any note or gift idea.
- We retain up to three months of wraps; older wraps are deleted automatically. All wraps are deleted when you delete your account.
- When you tap "Share my month", KindKeep generates an image you can send via your device's standard share sheet. We do not log, observe, or store how, where, or to whom you share that image.
Subscriptions
- If you subscribe to KindKeep Premium, Apple processes the payment. We never see your credit card.
- RevenueCat (our subscription manager) receives an anonymous Apple identifier and, when applicable, your referral code to track entitlement status and link referrals.
- Your subscription status (free vs Premium, trial vs paid) and transaction outcomes are received from Apple via RevenueCat.
Product interaction
- We use PostHog to understand product usage in aggregate — which screens get viewed, where people drop off in onboarding, what features get used, and high-level cohort flags (e.g. whether you're on the free or Premium plan).
- Specific event names include things like paywall_shown, contact_created, reminder_toggled_active. The actual content of your contacts, notes, and reminders is never part of these events.
Ads & attribution
We run ads on Meta (Facebook and Instagram) to introduce KindKeep to people who'd love it. To know which campaigns actually work, we share a small amount of data with Meta — the kind that helps measurement, not the kind that profiles you.
What you'll see
Once during onboarding, iOS shows the standard App Tracking Transparency (ATT) prompt asking if you'll allow KindKeep to use a private device identifier. We always show our own friendly explanation right before the system prompt, so you know what we're asking and why. You can decline (we'll still work fine) or change your mind anytime in iOS Settings → Privacy & Security → Tracking → KindKeep.
What we share with Meta
- Event names and values: when you sign in, start a free trial, or convert to a paid subscription, we tell Meta the event happened (and the price + currency for purchases). This is what powers Meta's ad optimization, including their Aggregated Event Measurement (AEM) system that works for users who decline tracking. We do not send any name, contact, note, gift idea, reminder, or other content from inside KindKeep.
- Account identifiers: hashed identifiers (your Supabase user UUID and email, hashed locally with SHA-256 before transmission) so Meta can match your activity across sessions and devices when you're signed into our app.
- Apple's IDFA (Advertising Identifier): only if you allowed tracking via the ATT prompt. If you declined, we never send it; instead, attribution falls back to Apple's privacy-preserving SKAdNetwork system, which only delivers anonymized aggregate counts.
What we don't share
- The names of the people in your KindKeep, the notes you write, the gifts you plan, your reminders, contact photos, or Monthly Wrap snapshots — ever, with anyone (including Meta).
- Your location, microphone, or camera — we don't access these at all.
- Your iOS Contacts list and Photo Library — accessed only with your explicit per-feature permission, only while you're using the related feature, and only the specific items you select. The full Contacts list and unselected photos are never transmitted to our servers or anyone else.
Notifications
Reminders are scheduled locally on your device using iOS notifications. We do not send push notifications from a server. If you deny notification permission, KindKeep still works — you just won't get the gentle nudges.
How we use your data
- To make the app work: store your contacts, schedule reminders, sync across your devices.
- To process subscriptions: confirm your KindKeep Premium entitlement.
- To improve the product: understand which features are used and where people get stuck.
- To find more people who'd love KindKeep: measure which ad campaigns reach the right audience and optimize spend toward people who'd genuinely benefit from the app.
That's the whole list. We don't sell your data to brokers. We don't build profiles for advertisers. We don't read what you write inside KindKeep.
Who we share data with
Only with the providers that make KindKeep run, and only the data each one needs to do its job:
- Apple — authentication (Sign in with Apple), payments (StoreKit), local notifications, and SKAdNetwork (anonymized install attribution that's always active and never sees personal info).
- Supabase — encrypted database hosting for your account and KindKeep data, plus Supabase Storage for any contact photos you upload.
- RevenueCat — subscription state and entitlement management.
- PostHog — product analytics (cookieless on the web, no IDFA on iOS).
- Meta (Facebook and Instagram) — ad attribution and campaign optimization through the Meta App Events SDK and Aggregated Event Measurement. Only event names + transaction value + hashed account identifiers + (with your ATT permission) the IDFA. Never your KindKeep content.
We don't share your data with data brokers, marketing platforms beyond Meta, or anyone else.
Your rights
- Export — Settings → Export my data. You get a complete JSON copy of everything.
- Delete — Settings → Delete account. We permanently delete all your data, revoke your Sign in with Apple link, and remove your account on Supabase. No recovery.
- Opt out of ad tracking — iOS Settings → Privacy & Security → Tracking → KindKeep → toggle off. Effective immediately; we'll stop receiving the IDFA on the next event.
- EU users (GDPR) — you have the right to access, correct, port, or delete your data. The Export and Delete features above cover this; for anything else, email support@kindkeep.app.
- California residents (CCPA / CPRA) — you have the right to know what personal information we collect, the right to delete it (Settings → Delete account), the right to correct inaccurate information, and the right to opt out of "sharing" for cross-context behavioral advertising. Under CCPA's broad definition, our use of Meta for ad attribution may qualify as "sharing." To opt out: decline the ATT prompt or toggle tracking off in iOS Settings as described above. We do not sell personal information for money.
- For any other request, email support@kindkeep.app.
Notice for European Economic Area, United Kingdom, and Switzerland Users
If you are located in the European Economic Area (EEA), the United Kingdom, or Switzerland, this section applies to you and supplements the rest of this Privacy Policy. In case of any conflict, this section controls.
Data controller
The data controller responsible for processing your personal data under the GDPR is:
Angel Oran
Residencial San Isidro Labrador, Manzana D, Edificio 2
11500 Santo Domingo
Dominican Republic
Email: support@kindkeep.app
Legal basis for processing (GDPR Article 6)
- Performance of a contract (Art. 6(1)(b)) — to provide the KindKeep service: account, sync, subscriptions, your contacts, notes, reminders, and contact photos.
- Consent (Art. 6(1)(a)) — for advertising tracking via IDFA (only if you allow the ATT prompt) and for one-time access to iOS Contacts and the Photo Library when you use those features. You can withdraw consent at any time via iOS Settings.
- Legitimate interests (Art. 6(1)(f)) — for aggregated product analytics (PostHog), ATT-compliant ad attribution (Meta), and referral tracking. Our legitimate interests are improving the product and reaching new users likely to benefit from KindKeep. You may object to processing on this basis (see Your Rights above).
Retention periods
- Account data and KindKeep content — retained while your account exists; permanently deleted when you delete your account.
- Monthly Wraps — up to 3 months; older wraps are deleted automatically.
- Analytics events — PostHog retains aggregated events for up to 12 months. Meta retains advertising events according to its own retention policies.
- Billing and tax data — managed by Apple in accordance with their statutory retention obligations; we do not store payment data.
International data transfers
Apple, Supabase, RevenueCat, and PostHog are headquartered in the United States. Meta processes data in part in the United States. These transfers rely on:
- Standard Contractual Clauses (GDPR Art. 46(2)(c)) between us and the respective providers, and
- EU-US Data Privacy Framework, where the provider is certified.
Despite these safeguards, an EU-equivalent level of protection is not legally guaranteed for all providers. In particular, US authorities may access data. If this is unacceptable to you, you cannot use KindKeep in full.
Right to lodge a complaint
You have the right to lodge a complaint with a data protection supervisory authority (GDPR Art. 77). The competent authority is the one of your habitual residence, place of work, or place of the alleged infringement. A list of EEA supervisory authorities is available at the European Data Protection Board. For users in Germany, the federal authority is the Bundesbeauftragte für den Datenschutz und die Informationsfreiheit (BfDI). For users in the United Kingdom, the Information Commissioner's Office (ICO) is competent.
Children
KindKeep is not directed at children under 13. We don't knowingly collect data from children. If you believe a child has signed up, contact us and we'll delete the account.
Changes to this policy
If we change this policy in a meaningful way, we'll let you know in the app before the change takes effect. Smaller wording fixes won't trigger a notice but will be reflected here with an updated date.
Contact
Questions? Email support@kindkeep.app. A real person reads it.