Information We Collect
When you create an account, we collect:
- Email address and password (stored securely via Firebase Authentication)
- Display name and username (handle)
- Profile photo (if you choose to upload one)
- City and country (if you choose to provide them)
- Bio (if you choose to provide one)
- Hogwarts House selection (optional, for personalization)
If you sign in with Google or Apple, we receive your name, email address, and profile photo as provided by those services. We do not receive or store your Google or Apple password.
If you grant location permission, we may collect approximate or precise location coordinates to:
- Show concerts and events near you
- Enable location-based event notifications (geofencing)
- Center the event map on your location
The App requests location access when needed for these features and uses it subject to the permission you grant. You can revoke location access at any time in your device Settings.
- Cart data (product selections, quantities) is managed locally and through the Shopify platform
- Payment and shipping information is collected and processed directly by Shopify through their hosted checkout. We do not collect, process, or store your credit card number, billing address, or shipping address.
- Order IDs and purchase history are stored to provide order tracking and support
With your consent, we collect:
- App interaction data (screens viewed, features used, favorites added)
- Performance data (app launch times, errors)
- Aggregated statistics (total favorites, listening time, most active days)
- Device tokens for push notifications (via APNs and Firebase Cloud Messaging)
- Vendor identifier (a non-permanent, non-personal device identifier used as a fallback)
- Device name (sent during push notification registration)
- Device attestation via Apple's DeviceCheck for app integrity verification
- Favorites: Shows, films, products, and radio tracks you mark as favorites
- Notification preferences: Per-film and per-composer subscription settings
- Email subscriptions: Newsletter and film-specific email opt-ins
- Search queries: Queries sent to our search provider to return results. The App keeps a local cache of recent search queries and results; cached entries expire from use after five minutes and are pruned during cache maintenance.
The App uses your device's gyroscope and accelerometer for the Immersive Listening Room feature (360-degree panoramic viewing). This motion data is processed locally in real time and is never stored or transmitted.
For Journey personalization, music-source authorization and AI-personalization permission are separate choices. Connecting a source does not by itself authorize a personalized Journey request to a third party.
To derive a taste summary on your device, the App may read authorized source information: Apple Music through MusicKit may read up to 25 recently played songs, 50 library artists, and 100 library songs to derive artist, genre, and soundtrack-composer signals; Spotify's optional OAuth flow may read up to 50 top artists and their genres; and, if you supply a Last.fm username, the App may request that account's up-to-50 overall top artists from Last.fm.
The App derives a bounded taste summary on device from those signals. Only if you separately allow AI personalization may CineConcerts send that summary to create a personalized Journey. The Journey request can include up to 12 composers, 20 artists, and 12 genres, plus optional prior Journey film and composer information, explored composers, and works to avoid repeating. It does not send the raw Apple Music library or recent-song lists, Spotify access token, or Last.fm username as part of that Journey request.
Vercel receives a pseudonymous account reference: the first 16 characters of a stable SHA-256 hash of your user ID. This reference is used with the Journey request; it is not your email address or display name.
How We Use Your Information
- Provide and maintain the App, including user accounts, favorites, and personalization
- Process transactions through our e-commerce partner (Shopify)
- Send push notifications about events, new content, and order updates (with your permission)
- Deliver location-based alerts when concerts are happening near you (with your permission)
- Generate AI-powered content such as musical insights and film analysis, and—only when you separately allow AI personalization—personalized Journey recommendations using the derived taste and optional continuity information described above
- Improve the App through analytics (with your consent)
- Provide customer support and respond to inquiries
- Send newsletters and marketing emails (with your explicit opt-in, including double opt-in verification)
Third-Party Services
We use the following third-party services, each governed by their own privacy policies:
| Service | Purpose | Data Shared |
|---|---|---|
| Firebase (Google) | Authentication, database, storage, push notifications, analytics | Account data, favorites, preferences, device tokens, analytics events (with consent) |
| Shopify | E-commerce and checkout | Cart items; payment and shipping data collected directly by Shopify |
| Algolia | Event search | Search queries, location coordinates (if searching by location) |
| Vimeo | Video streaming | Video playback requests |
| Vercel AI Gateway and Anthropic | Personalized Journey recommendations and guidance, when enabled | Derived taste and optional Journey continuity information. This Journey service is configured to use Anthropic Claude Sonnet 4.6 through Vercel AI Gateway; Vercel receives the pseudonymous account reference described above. This describes the Journey route, not every separate AI feature in the App. |
| OpenAI | AI-generated musical insights and Radio insights | For Radio insights, public cue metadata, public context, and locale; that Radio request does not include the account owner's taste, saved items, or listened items. |
| ElevenLabs | Text-to-speech for authored Radio narration | Authored narration text and selected voice/model settings. The speech request does not add the listener's user ID or Journey taste summary. |
| Spotify | Composer playlists, audio previews, and optional user-authorized taste imports | Playlist and preview requests; if you choose the optional OAuth connection, authorized source information may be used to derive taste information. |
| Apple Music | Optional user-authorized on-device taste derivation | MusicKit reads the authorized recent-song and library categories described above; the App derives the bounded taste summary on device before any separately permitted Journey request. |
| Last.fm | Optional user-supplied account taste import | If you provide a Last.fm username, the App requests that account's overall top artists to derive taste information. |
| BlockadeLabs | Immersive 360° environments | Environment generation prompts |
| Apple | Push notifications, Sign-In, DeviceCheck, Maps | Device tokens, authentication tokens, map data |
| Sign-In | Authentication tokens, profile info (when using Google Sign-In) |
We encourage you to review the privacy policies of these third-party services.
Data Storage & Security
Cloud Storage
Account data, favorites, and preferences are stored in Firebase Firestore (Google Cloud infrastructure), which provides encryption at rest and in transit.
Local Storage
The App stores data locally on your device, including:
- Image cache (up to 100 MB in memory, with disk persistence)
- Skybox/environment cache (up to 500 MB on disk)
- Playlist cache (up to 50 MB on disk)
- User preferences in device-local storage
- Biometric credentials in the iOS Keychain (encrypted, accessible only via Face ID or Touch ID)
Security Measures
- All network communication uses HTTPS/TLS encryption
- Passwords are never stored in plain text
- Biometric credentials are stored in the iOS Keychain with hardware-level encryption
- Firebase App Check validates app integrity to prevent unauthorized API access
- Consent audit entries are timestamped when they can be saved to the signed-in account; device-only changes and unsuccessful saves may not appear in that audit history
Consent Management
We implement a granular consent system. You can independently control:
Music-source connection and import permission are separate from AI-personalization permission. A source connection, analytics choice, or generic personalization setting does not by itself grant AI-personalization permission. The App records timestamped consent audit entries when it can save them to your signed-in account. Device-only changes and unsuccessful saves may not appear in that audit history. You can modify your preferences at any time through the App's Privacy Center.
If you turn off AI personalization, CineConcerts stops new personalized requests on this device and purges its Journey-derived state. Once the change syncs to your account, the service blocks new personalized Journey requests and starts removal of the account-scoped Journey cache; other devices update when they reconnect. Cache removal may not finish immediately. This does not delete independent saved music or listening history, historical shared caches, or information already held by a processor. General public Radio remains separate.
Your Rights
For All Users
- Access your personal data stored in the App
- Update your profile information at any time
- Delete your account and associated data
- Opt out of analytics, notifications, emails, and location services
- Export your data in a portable format
EEA Residents — GDPR
If you reside in the European Economic Area, you additionally have the right to:
- Rectification of inaccurate personal data
- Restriction of processing under certain circumstances
- Object to processing based on legitimate interests
- Data portability in a machine-readable format
- Lodge a complaint with your local data protection authority
Our legal bases for processing are: your consent (analytics, marketing, location), contractual necessity (account management, purchases), and legitimate interests (app security, fraud prevention).
California Residents — CCPA
- Know what personal information is collected and how it is used
- Delete your personal information
- Opt out of the sale of personal information (we do not sell personal information)
- Non-discrimination for exercising your privacy rights
Children's Privacy
The App is not intended for children under the age of 13 (or 16 in the EEA). We do not knowingly collect personal information from children. If you believe a child has provided us with personal data, please contact us and we will promptly delete it.
Data Retention
- Account deletion: When you request deletion, CineConcerts removes your account profile, sign-in account and the app data covered by the deletion flow, including your account-scoped generated Journey cache. Some records remain, including a pre-deletion backup, deletion-request records, a minimal record that prevents an old session from restarting personal AI processing, and rate/budget records. CineFan reward and entitlement records are handled separately from your active profile.
- Deletion backups: The current deletion flow gives newly created backups a seven-year retention timestamp. That timestamp is not a confirmation that a backup has been erased. Account deletion does not promise universal erasure of every retained record or processor-held copy. You may contact us about retained information using the details below.
- Analytics and service records: These records can be held separately from the active account profile. This policy does not promise that all such records are anonymous or share one retention period.
- Local caches: The App stores caches such as images, playlists and environments. Cache lifetimes vary; clearing downloaded images in Settings does not delete all other app or service data.
- Consent audit entries: These entries can be held separately from the active account profile. This policy does not state one retention period for every audit entry.
- Push notification tokens: The App processes device tokens to deliver notifications. Uninstalling the App is not the same as requesting account deletion.
- Third-party processing: Withdrawing AI-personalization permission stops new personalized Journey requests once the change reaches the service; it does not retroactively erase information already processed by a third party. We do not promise zero retention, a universal no-training guarantee or one deletion deadline for every processor.
International Data Transfers
Your information may be transferred to and processed in countries other than your own, including the United States, when we use the third-party services described in this policy.
Changes to This Privacy Policy
We may update this Privacy Policy from time to time. We will notify you of material changes by posting the new policy within the App and updating the "Last Updated" date. Your continued use of the App after changes constitutes acceptance of the updated policy.
Contact Us
If you have questions about this Privacy Policy, wish to exercise your data rights, or have concerns about your privacy, please contact us at: