Account data — your email and a bcrypt-hashed password. We never see your password in plain text.
Profile data — optional display name, preferred interpretation framework (Jungian / Freudian / Cognitive / Spiritual / Agnostic), and current themes you choose during onboarding. All of this is optional, can be left blank, and can be changed or cleared at any time in Settings.
Dream content — the title, body, mood, tags, dream date, and adult-flag you write into the journal. Stored on our server so you can sync between devices.
Interpretations — the AI-generated interpretation text returned for each dream you choose to interpret. Cached alongside the dream so we don't re-send the request when you re-open the entry.
Voice recordings — only if you use the "speak instead of typing" feature. Audio is captured on your device, transcribed to text (locally on the device when possible, or via our server when on-device transcription isn't available), and the audio file is then deleted. We never store the raw audio.
Subscription state — your current tier (free / plus), trial status, expiry date, and remaining AI-interpretation quota for the month. We never see your card number — payment is processed entirely by Apple (App Store) or Google (Play Store).
Session token — after you sign in we store a JWT on your device in the platform secure store (iOS Keychain / Android Keystore). It's used to authenticate API requests and contains your user ID, nothing more.
Minimal request metadata — IP address and user-agent on each API request, kept in transient web-server logs for up to 30 days for abuse prevention and debugging. Not used for analytics or advertising.
What we don't collect
We do not collect your contacts, location, photos, or device identifiers for advertising.
We do not place tracking pixels in the app or on these pages.
We do not use advertising networks or sell your data to data brokers.
We do not sell, rent, or share your dream content with anyone.
We do not use your dreams or interpretations to train any model — neither ours nor any third party's.
Crash reporting & analytics
We use Firebase Crashlytics and Firebase Analytics (Google) to detect crashes, monitor app performance, and understand how features are used in aggregate. These SDKs are linked to your internal user ID (a random UUID — never your email) so we can diagnose issues tied to a specific account. No dream content is included in these reports. Firebase data is processed in the United States; see Google's Firebase privacy page for details.
We use RevenueCat to manage subscription state and process in-app purchases. RevenueCat receives your internal user ID and subscription events (purchase, renewal, cancellation). No dream content is shared. See RevenueCat's privacy policy.
AI interpretation (Anthropic Claude)
When you tap "Interpret" on a dream, the dream text together with a short context block (mood, tags, flags, your chosen interpretation framework, and your optional themes) is sent over TLS to Anthropic's Claude API to generate the interpretation. The request crosses an international border: Anthropic's processing infrastructure is located in the United States.
Anthropic acts as our sub-processor and, per their commercial terms, does not train its models on data sent through the API. They retain API request data for up to 30 days for abuse monitoring and may retain it longer if required by law.
Interpretation is opt-in per dream — nothing is sent to Anthropic unless you tap the button. The first time you use it, we surface a short notice in the app so you know the dream text is leaving the device.
If you do not want any dream content sent to a third-party AI service, simply don't use the Interpret feature; the rest of the journal works fully without it.
Adult-flagged dreams
If you mark a dream as Adult / 18+, it's hidden from the main feed and from search by default. The flag is private to you; we treat the content the same way as any other dream — stored, not analysed.
Notifications
If you opt in, we send local notifications (morning reminders to write down your dream). These are scheduled and delivered entirely on your device — we never store push tokens on our server, and we never send remote pushes. Permission is requested only when you toggle the reminder on, and can be revoked at any time in your OS settings.
How we secure your data
All API traffic uses TLS (HTTPS).
Passwords are hashed with bcrypt before they touch the database.
The database (PostgreSQL) is hosted on infrastructure with disk-level encryption and is not exposed to the public internet.
Session tokens on your device live in the platform secure store (iOS Keychain / Android Keystore).
No employee has casual database access; access is tied to incident response only.
How long we keep things
Active accounts — for as long as you keep using the app. Dreams remain until you delete them.
Soft-deleted dreams (Trash) — held in trash for 30 days, then permanently purged.
Account deletion — when you request deletion, your account is scheduled for permanent removal with a 3-day grace period (so you can change your mind by signing back in and tapping "Cancel deletion"). After the grace period, a nightly job permanently purges your account, all dreams, and all interpretations from our database. Database backups roll over within 30 days, after which the data is fully gone.
Web-server logs — up to 30 days, then rotated out.
Your rights
Access and portability — download your entire archive as PDF or CSV at any time, free of charge, from Settings → Archive → Export.
Deletion — delete your account from Settings → Account → Delete account, or via this web form without installing the app. See the timeline above.
Correction and restriction — you can edit any dream and any profile field directly in the app. For other concerns write to support@dzigadreamjournal.com.
Withdraw consent — you can stop using the Interpret feature at any time; existing interpretations stay attached to their dreams unless you delete the dream.
Lodge a complaint — EU/UK users have the right to complain to their local data-protection authority.
Legal basis (GDPR / EEA + UK users)
Account, dreams, profile — performance of the contract between you and us (you sign up to use the journal, we store the journal).
AI interpretation — your explicit opt-in consent, given each time you tap "Interpret".
Subscription state — performance of the contract; we need to know your tier to enforce quotas.
Server logs (IP / user-agent) — our legitimate interest in keeping the service available and free of abuse.
Data sent to Anthropic is transferred to the United States. Anthropic's commercial terms include the EU Standard Contractual Clauses for international transfers.
Children
Dziga is not directed at users under 13 (under 16 in the EU). We do not knowingly collect data from children. If you believe a child has created an account, write to us and we will delete it.
Firebase Crashlytics & Analytics (Google) — crash reporting and usage analytics. United States. Linked to your internal user ID. Subject to Google's Firebase privacy policy.
RevenueCat — subscription management and purchase events. United States. Linked to your internal user ID. Subject to RevenueCat's privacy policy.
Apple App Store / Google Play — payment processing for subscriptions, if you choose to subscribe. We never see your card details. Subject to Apple's and Google's respective privacy policies.
Hosting — our server runs on a single VPS in the EU. The provider has standard physical-security and disk-encryption controls; they have no application-level access to your data.
International users
If you use Dziga from outside the country where our server is hosted, your data is transferred to and stored on our server. By creating an account you acknowledge this transfer. We rely on Standard Contractual Clauses with Anthropic for the onward transfer to the United States.
Changes to this policy
If we materially change anything here, we will update this page and the "Effective date" at the top. Significant changes (e.g. a new sub-processor, a new data category) will also be surfaced inside the app the next time you open it.