- Photos
- The photos you upload are processed only to create the AI improvement you requested. If you upload a photo of someone else (for example in Together mode), you must have their permission; we process their photo only to create the result you asked for.
- Account info
- Email, or a Sign in with Apple / Google identifier. With Sign in with Apple you can hide your email, and if you share your name it becomes your profile name. With Sign in with Google, the name and profile-photo link Google shares are stored in your account record, and the name also becomes your profile name. If you continue as a guest, an anonymous account is created and your device identifier and app language are stored with it.
- Profile details
- The name you give a profile and optional attributes: gender, age range, body type and ethnicity. You can pick these yourself or leave them blank; for any you leave blank, the AI model may estimate a value from your photo and fill it in (your own choice always wins). We add them to your generation requests only to keep you looking like yourself in the result, and store them with your profile for sync. Ethnicity is sensitive (special-category) data that the law protects separately. We state this estimate, including ethnicity, clearly on the consent screen shown before you add a photo, and we make it only with your consent; we record the date and text version of your consent. If you change a field, your choice is used; if you clear it, it may be estimated again at your next photo analysis.
- Settings and preferences
- For cross-device sync, some of your settings and preferences are stored in the cloud with your account — for example dark mode and app language, your quality and output preferences, your analytics choice, results you've pinned in Jobs, your favorites, your profile names and each profile's Quick Create presets, results you've removed the watermark from, and your progress in the onboarding tour. They are kept until you delete your account and are deleted when you do. Some device-level information is deliberately not synced: your photo-processing consent is asked for again on a new device, and your device identifier, notification permission and device integrity (App Attest) key stay specific to each device.
- Device identifier
- A device-specific identifier (UUID) and the device model, used to grant a guest try, limit welcome credits to one per device, provide support, and prevent abuse.
- Approximate location
- A COUNTRY-level approximate location taken from your device's App Store country and region/language settings, sent by the app with your generation requests, for fraud prevention and abuse detection. No GPS is used, and this data is kept for at most 90 days. We do not use your IP address to determine location; for abuse prevention we keep it only briefly (hashed for up to 36 hours for guest-trial limits, and up to 24 hours after failed code-redemption attempts). While analytics is on, our analytics provider PostHog may derive an approximate location (such as city or country) from the IP address a request comes from; if you don't want that, you can turn analytics off in Settings.
- Usage analytics
- Event data about how you use the app, linked to your account ID and device identifier, sent to PostHog (US) and stored in our own database (the events themselves for up to 90 days; the hourly summary derived from them is covered in section 7), to improve the product. While analytics is on, the app also sends a short signal to our own servers only, once a minute while it is open on screen, so the minutes when the app was open are kept for 90 days and your device's last-seen record for 180 days after its last use, together with your account ID and device identifier. You can turn analytics off in Settings; crash reporting (Sentry) is separate.
- Crash logs
- Diagnostics and crash reports (Sentry) to fix problems. While analytics is on, these reports are linked to your account ID.
- Purchase info
- Verification of credit and subscription purchases (Apple In-App Purchase / RevenueCat) and a server-side purchase event log (no card data). We never see your card details; Apple handles payment.
- Ad measurement (Apple Ads)
- Once after installation, the app gets an attribution token from Apple's AdServices framework and passes it to RevenueCat. RevenueCat uses the token to ask Apple whether you downloaded the app through an ad on Apple Ads; if so, the campaign, ad group and keyword are linked to your record at RevenueCat. We do this only to measure whether our ads work. This measurement does not use the advertising identifier (IDFA) and does not require tracking permission.
- Ad measurement (no tracking)
- VibeX does not track you across other companies' apps and websites and does not ask for tracking permission; the app contains no ad-tracking kits. We measure whether our ads work only in ways that do not identify you: Apple's attribution for Apple Ads, described above, and, for links we share in places like Instagram, the aggregate campaign counts App Store Connect shows us (how many people viewed and downloaded the app from a link; anonymous and only in groups larger than a few people). Versions 0.5.17–0.5.19 of the app included Meta's measurement kit: if you allowed tracking in one of those versions and analytics was on, an “app opened” event may be sent to Meta when you open the app (with the Meta anonymous ID, the advertising identifier (IDFA), device model, version, language and IP address); updating the app stops this completely. Your photos, face data, email and profile details were never sent to Meta. Meta processes this data under its own privacy policy; you can withdraw permission at any time in iOS Settings > Privacy & Security > Tracking.
- Push notifications
- If you allow notifications, your device's Apple push token is stored to send you notifications (including announcements); it is deleted when you delete your account.
- Feedback and reports
- The reason and note you send about a result; only if you turn on sharing, the result, original and reference photos are uploaded so our team can review them (refunds, moderation).
- Website waitlist
- If you join the Android waitlist on vibexapp.com, we store your email, language and platform (via Supabase/Upstash) only to notify you at launch, and your signup is also emailed to our team via Resend. Email us to be removed.
- Website visits
- vibexapp.com sets no cookies and loads no advertising or tracking tools. Your light/dark theme choice is stored only in your own browser. Our web server keeps no access log of visits (IP address, browser details); your IP address is used only to deliver the page to you. If a connection error occurs, the IP address may appear in the server's error log; we use these logs only to fix problems, and older lines are deleted automatically once the log reaches a set size.