Legal · GDPR Compliant
Privacy Policy
Last updated: 14 June 2026
Soul Garden is a wellness companion that uses astrology and tarot as tools for personal reflection. We collect the minimum personal data needed to personalise your experience. Some data (your profile and AI-generated persona) is stored in our secure database and in cloud storage so it follows you across devices. This policy explains what we collect, why, and how you can control it — in full compliance with the EU General Data Protection Regulation (GDPR) and the ePrivacy Directive.
🏛1. Data Controller
The data controller responsible for this application is the Soul Garden / Eventure team ("we", "us", "our"). For any privacy-related enquiries please contact us at soulgarden.mira@gmail.com.
📋2. What Data We Collect & Why
We collect the minimum data necessary to provide your personalised cosmic reading.
- App theme preference and notification settings — stored in your browser's localStorage as lightweight preferences.
- Anonymous session identifiers used by analytics (when consented) — see Section 7.
Data stored server-side in our secure database (Neon PostgreSQL, eu-central-1):
- Astrological profile — your birth date, optional birth time, optional birth city and coordinates, and display name are stored in our database to power personalised readings and to follow you across devices.
- Conversation history — all messages exchanged with Soul are stored in our database. FREE plan conversations are retained for 12 months; PREMIUM plan conversations are retained indefinitely until you delete them.
- Emotion entries — daily mood and emotion logs are stored for up to 24 months to surface trends and insights.
- Check-in streaks — your daily check-in streak and milestone history are stored in our database.
- AI persona document — an AI-generated personality profile created at onboarding is stored both in our database (metadata) and in AWS S3 (full document, eu-central-1). It is the canonical copy that follows you across devices.
- AI chat messages in transit — prompts sent to Soul are forwarded to our AI provider (Google Gemini) including your astrological profile so the AI can give personalised responses. These are processed under a signed Data Processing Agreement and not used to train any AI model.
- Birth data for chart calculation — when you request a Swiss Ephemeris chart, your birth date, time, and coordinates are sent to our calculation API over an encrypted HTTPS connection.
Technical / operational data:
- IP address and browser user-agent — processed transiently for rate limiting (legitimate interest, GDPR Art. 6(1)(f)). IP addresses used solely for rate limiting are NOT stored; they are evaluated in-memory per request and discarded immediately after the check.
- Standard web server logs (IP address, browser user-agent, timestamp, URL) are retained for up to 7 days for security and performance monitoring, then automatically deleted.
- First-party analytics events (page views, feature interactions) — collected only if you choose to accept analytics on the consent banner. Events are processed by our internal analytics service and never shared with advertising platforms.
⚖️3. Legal Basis for Processing (GDPR Art. 6)
- Consent (Art. 6(1)(a)) — You explicitly consent to the Privacy Policy before any personal data is saved to our database. You separately consent to optional first-party analytics on the cookie consent banner.
- Contract performance (Art. 6(1)(b)) — We process your astrological profile and conversation history to fulfil the personalised reading service you requested.
- Legitimate interests (Art. 6(1)(f)) — Minimal server logs are retained for 7 days to ensure security and service reliability.
Birth data is classified as ordinary personal data under GDPR. Where birth data could be combined with other information to infer health or religious beliefs, we minimise collection to date of birth only for core features.
🔐4. Data Storage & Security
Your personal data is stored in two systems:
- Neon PostgreSQL database (eu-central-1, Frankfurt, Germany) — your astrological profile, conversations, emotion entries, and streak data. All data at rest is AES-256 encrypted. Database credentials rotate automatically and access is restricted to our application servers.
- AWS S3 (eu-central-1, Frankfurt, Germany) — your AI-generated persona document. The bucket is private (no public access), server-side encrypted, and access-logged.
- Browser localStorage — minimal preference data (theme, notification settings) is cached locally for instant access. It is not the authoritative store.
All communication between your browser and our services is encrypted in transit using TLS 1.2+. Sensitive fields (e.g. birth coordinates) are additionally encrypted at the application layer (AES-256-GCM) before being written to the database.
🗓5. Data Retention
- Astrological profile & account data — retained for the lifetime of your account. You can delete your account at any time (see Section 6).
- Conversation history — FREE plan: 12 months from the date of each message. PREMIUM plan: retained indefinitely until you delete them.
- Emotion entries — retained for 24 months, then automatically deleted.
- AI persona document — retained for the lifetime of your account; deleted when you delete your account.
- Server logs — automatically purged after 7 days.
- Analytics events (if consented) — retained for up to 90 days in aggregate form.
✋6. Your Rights Under GDPR
As a data subject under GDPR (EU 2016/679) you have the following rights:
- Art. 15Right of access — You can request a full export of your personal data at any time via Account Settings → Export My Data (calls /api/profile/export). The download includes your astrological profile, all conversations, emotion entries, and streak history in JSON format.
- Art. 16Right to rectification — Update your profile directly in the app settings at any time.
- Art. 17Right to erasure ('right to be forgotten') — Delete your account via Account Settings → Delete Account (calls DELETE /api/account). This permanently removes your profile, all conversations, emotion entries, AI persona document, and account from our systems. Server logs are anonymised after 7 days.
- Art. 18Right to restriction of processing — Contact us to request restriction of processing while a dispute is pending.
- Art. 20Right to data portability — Use Account Settings → Export My Data to download a machine-readable JSON copy of all your personal data at any time.
- Art. 21Right to object — You may withdraw analytics consent at any time via the consent banner or Privacy settings. You may delete your account to stop all processing.
- Art. 77Right to lodge a complaint — You have the right to lodge a complaint with your local supervisory authority (e.g. ICO in the UK, CNIL in France, BfDI in Germany).
To exercise any right that requires our involvement (e.g. server log deletion requests), contact us at soulgarden.mira@gmail.com. We will respond within 30 days as required by GDPR Art. 12.
🍪7. Cookies & Tracking
Essential session cookie — Soul Garden sets a single, strictly necessary authentication cookie (next-auth.session-token or __Secure-next-auth.session-token) to keep you signed in. This cookie is classified as 'strictly necessary' under the ePrivacy Directive and does not require separate consent.
Optional analytics — if you choose to accept analytics on the consent banner, we set a first-party anonymous identifier (anonymousId in localStorage) to count unique sessions and track feature usage. No advertising networks are involved. You can withdraw consent at any time from the consent banner or Privacy settings.
No advertising or third-party tracking — we do not use Google Analytics, Meta Pixel, or any third-party advertising cookies.
🔗8. Third-Party Services
- AI provider (Google Gemini, or OpenAI / Anthropic if configured) — Chat prompts and your astrological personality profile are forwarded to the active AI inference provider. We have a signed Data Processing Agreement with each provider. Your data is not used to train any AI model. Transfers to US-based providers are covered by Standard Contractual Clauses (SCCs, GDPR Art. 46).
- Swiss Ephemeris API (freeastroapi.com) — Birth date, time, and coordinates are sent for chart calculation when an API key is configured and you have granted ephemeris transfer consent (GDPR Art. 49(1)(a)).
- Stripe — Processes subscription and card payments for EU users. Stripe is a certified payment processor under SCCs and a signed DPA.
- PayOS — Processes subscription payments for Vietnam users under a signed Data Processing Agreement.
- Neon PostgreSQL (eu-central-1, Frankfurt, Germany) — Our managed PostgreSQL database where your profile, conversations, emotion entries, and streak data are stored. Neon is covered by a signed DPA and stores data exclusively within the EEA.
- AWS S3 (eu-central-1, Frankfurt, Germany) — Your AI-generated persona document is stored in Amazon S3, Frankfurt region. Amazon is covered by SCCs and a signed DPA.
- Browser push relay (Mozilla Push Service / Google FCM) — If you enable push notifications, your browser's push subscription endpoint is registered with the respective relay service (Mozilla for Firefox, Google FCM for Chrome/Edge). The only information sent through the relay is the notification payload (which contains no personal data). This relay is strictly necessary to deliver push notifications.
- Hosting / CDN (Vercel) — The app is hosted on Vercel. Vercel processes request logs in accordance with their Privacy Policy and DPA.
Sub-processor Register (GDPR Art. 13(1)(e))
| Sub-processor | Purpose | Location | Legal basis |
|---|---|---|---|
| Google (Gemini API — paid) | AI chat inference | USA (SCCs via DPA) | DPA |
| OpenAI | AI chat inference (optional fallback) | USA (SCCs via DPA) | DPA |
| Anthropic | AI chat inference (optional fallback) | USA (SCCs via DPA) | DPA |
| FreeAstroAPI | Natal chart computation | TBD — DPA pending | DPA or local fallback |
| Mapbox | Birth city geocoding, timezone lookup | USA (SCCs) | DPA |
| Stripe | Payment processing (EU) | USA + EU (SCCs) | DPA |
| PayOS | Payment processing (Vietnam) | Vietnam | DPA |
| Vercel Inc. | Hosting, serverless API | USA (SCCs via DPA) | DPA |
| Sentry (EU) | Error monitoring | EU (Frankfurt) | DPA |
| Langfuse (EU) | LLM trace logging | EU (Frankfurt) | DPA |
| AWS S3 (eu-central-1) | Persona document storage | EU (Frankfurt) | DPA |
| Neon | Primary database | EU (Frankfurt) | DPA |
| Push relay services (FCM / Mozilla / APNs) | PWA push notifications | USA (SCCs) | Legitimate interest |
We have Data Processing Agreements (DPAs) in place with all sub-processors that handle any personal data on our behalf, as required by GDPR Art. 28.
🌍9. International Data Transfers
Your personal data is stored in the EU/EEA by default (Neon PostgreSQL and AWS S3 both in eu-central-1, Frankfurt). AI inference providers (Google Gemini, OpenAI, Anthropic) and US-hosted infrastructure (Vercel) may process data in the United States. PayOS processes Vietnam payment data in Vietnam. In each case, transfers are protected by Standard Contractual Clauses (SCCs) approved by the European Commission (GDPR Art. 46) and a signed Data Processing Agreement, or by your explicit consent where required (Art. 49).
👧10. Children's Privacy
Soul Garden is not directed at children under 16 years of age (GDPR Art. 8 — EU minimum age for digital services). Our onboarding requires users to confirm they are at least 16 by selecting a birth date 16 or more years in the past. We do not knowingly collect personal data from children under 16. If you believe a child under 16 has provided us with personal information, please contact us at {email} so we can delete it promptly.
📝11. Changes to This Policy
We may update this policy to reflect changes in our practices or applicable law. When we do, we will update the "Last updated" date at the top of this page. For material changes, we will notify you within the app. Continued use of Soul Garden after a policy update constitutes acceptance of the revised policy.
✉️12. Contact Us
For any questions about this Privacy Policy or your data rights, please contact our Data Protection Officer:
Email: soulgarden.mira@gmail.com
Response time: within 30 days (GDPR Art. 12)