This Privacy Policy describes how DreamLab ("App", "we", "our") handles your information. We built DreamLab with privacy as a core principle — your dreams are personal, and we treat them that way.
1. Information We Collect
Dream Content (User-Provided)
- Dream text you enter or dictate
- Messages you send during analysis sessions
- Profile information you optionally provide (name, birth date, gender, background)
Automatically Generated
- AI analysis responses, session summaries, existential messages, and dream actions
- AI-generated image prompts and images
- Journey chapter narratives
- Meta-summaries of your session history
We do NOT collect:
- Email addresses, passwords, or account credentials
- Location data
- Contacts or phone data
- Analytics, advertising identifiers, or tracking data
- Device identifiers beyond what Apple provides for iCloud sync
2. How Your Data Is Stored
All data is stored on your device using Apple's SwiftData framework and synced to your personal iCloud account via a private CloudKit container. This means:
- Only you can access your data through your Apple ID.
- We cannot read, access, or retrieve your dreams or any stored content.
- Data persists on your device and in your personal iCloud — nowhere else.
- If you delete the app, on-device data is removed. iCloud data can be managed via your Apple ID settings.
Optional settings (e.g. appearance mode, app lock preference, dreamer profile) are stored locally and are not synced.
3. How Your Data Is Processed
To provide AI-powered features, certain data is transmitted to third-party services during active use only:
Dream Analysis
When you start an analysis session, your dream text and conversation messages are sent to a Firebase Cloud Function, which forwards them to OpenRouter (an LLM routing service) for processing. The AI generates responses in real time. Your text is not stored on our servers or OpenRouter's servers after the response is delivered. It is not used for model training.
Image Generation
When you generate a dream image, a short visual scene description (extracted from your dream, not the full text) is sent to Replicate via a Firebase Cloud Function. The generated image is returned to your device. The prompt and image are not retained on Replicate's servers beyond the generation request.
Speech Recognition
- Apple Speech Recognition: processed by Apple per their privacy terms. Audio is not stored by DreamLab.
- WhisperKit (on-device): speech is transcribed entirely on your device. No audio leaves the device.
4. Third-Party Services
| Service | Purpose | Data Sent | Retention |
|---|---|---|---|
| Apple iCloud (CloudKit) | Private data sync | All app data | Controlled by your Apple ID |
| Firebase (Cloud Functions, App Check) | Secure API proxy | Dream text, messages (in transit) | Not stored after processing |
| OpenRouter | LLM inference for analysis | Dream text, conversation history | Not stored; not used for training |
| Replicate | Image generation (FLUX.1) | Short scene description | Not retained after generation |
| Apple Speech | Voice dictation | Audio stream | Per Apple's privacy policy |
We do not use any analytics, advertising, or behavioural tracking services.
5. Data Security
- App Lock: DreamLab supports Face ID, Touch ID, or device passcode to prevent unauthorised access.
- Encryption in Transit: All network communication with Cloud Functions uses HTTPS/TLS.
- Encryption at Rest: On-device data is protected by iOS file-level encryption. iCloud data is encrypted by Apple.
- Firebase App Check: Prevents unauthorised clients from calling our Cloud Functions.
6. Children's Privacy
DreamLab is not directed at children under 17. We do not knowingly collect information from children. The app's content — psychological dream analysis — is intended for adults.
7. Your Rights and Choices
- Delete your data: Delete individual dreams within the app (cascades to all associated messages and images), or delete the app entirely to remove on-device data. Manage iCloud data via Settings > Apple ID > iCloud.
- Opt out of AI features: You can use DreamLab purely as a journal without starting analysis sessions or generating images.
- App Lock: Enable or disable biometric/passcode protection in Settings.
- Profile: Providing a dreamer profile is entirely optional and can be cleared at any time.
8. Data Retention
- On-device and iCloud: Data persists until you delete it.
- Server-side: No dream content is retained on our servers or third-party servers after processing is complete. Cloud Function logs may temporarily contain request metadata (timestamps, error codes) but do not include dream text.
9. International Data Transfers
AI processing requests are routed through servers that may be located outside your country. These transfers are necessary to provide the analysis and image generation features. No data is stored at rest outside of your personal iCloud account.
10. Changes to This Policy
We may update this Privacy Policy from time to time. The "Last updated" date at the top reflects the most recent revision. Continued use of the App after changes constitutes acceptance.
11. Contact
If you have questions about this Privacy Policy or your data, contact us at:
[insert contact email]