Legal
Privacy Policy
Last updated: 30 October 2026
Skina ("we", "us", "our") is committed to protecting your privacy. This policy explains what data we collect, how we use it, and your rights under the General Data Protection Regulation (GDPR).
At a glance
The short version
- There are no accounts. We do not collect your name, email address or phone number.
- Your photos are sent for AI analysis and are not stored on our servers.
- Your scan results and My Shelf are stored on your device. The backup is encrypted on your device and we cannot read it.
- We do not serve ads and do not track you across apps or websites.
- Usage analytics are anonymous, stay on our own backend, and can be turned off in the app.
Skina is for informational and educational purposes only and does not provide medical advice. The full medical disclaimer is in section 3 of the Terms of Use.
1. Data Controller
Robin ClaesBelgium
robin@easystreet.be
2. What We Collect
| Data | Purpose | Storage |
|---|---|---|
| Camera photos (selfie) | One selfie is captured for each skin scan. On your device, the app turns it into eight JPEG images: one face overview and seven close-ups (forehead, nose, two under-eye areas, two cheeks and chin). These images are sent to our API for AI skin analysis only, not to identify you. | After a successful preparation, the original selfie is deleted from the app's temporary storage. The eight images are held in memory while analysis or a retry is pending and are not saved to your scan history or encrypted backup. Our API processes them transiently and does not store them. Our API passes them to Google's Gemini model on Google Cloud Vertex AI; Google's limited retention is described in sections 5 and 6. |
| Face detection data | Live camera frames, face bounds and angles, and facial landmarks (eyes, nose and mouth) are used on your device to guide framing, assess capture conditions and position the eight image crops. Skina does not use Face ID or TrueDepth, recognize or identify a person, or create a biometric template. | Camera frames are disposed of as they are processed. Face coordinates, angles and landmarks exist only in transient on-device memory; they are not sent to our analysis API or the AI model and are not saved or backed up. Anonymous diagnostics may record image dimensions, detected face width and the cropping method used, but not the photo, coordinates, angles or landmarks. |
| Profile answers sent with a scan | Your age range, known skin conditions, sensitivities, and (if you filled them in) gender and background, plus the language of the app, so the analysis and recommendations fit you | Sent with each scan to our API and included in the request to the AI model. Not stored on our servers. |
| Skin analysis results | Your score, skin type, zone breakdown, areas of attention, recommendations | Stored locally on your device (SQLite). Backed up end-to-end encrypted (see section 5); we cannot read the backup. |
| Encrypted scan backup | Restores your scan history and My Shelf after reinstalling the app or on a new phone, without an account | Encrypted on your device with a key kept in your iCloud Keychain (iOS) or Google Block Store backup (Android). Our server stores only the encrypted data and a random identifier. You can turn it off in Settings. |
| User profile | Name (optional), skin goals, age range, known skin conditions, sensitivities, and optional gender and background | Stored locally on your device. Your name and goals never leave your device. The other answers are sent with each scan as described above. The profile is not part of the scan backup. |
| Product photos (My Shelf) | A photo of a skincare product is sent to our API, together with your sensitivities and the language of the app, so the AI model can read the product name and ingredients | The photo is processed in real-time by Google's Gemini model and is not stored on our servers. After capture, the app holds the photo only in memory while analysis or a retry is pending, then deletes it. If the app closes before analysis finishes, the unfinished analysis and its photo are discarded and you must take a new photo. The product details and the painted icon you choose for the product are kept on your device and, from version 2.3, are part of the encrypted backup (see section 5). The photo is never part of it. Versions of the app before 2.2 kept the product photo on your device; updating the app to version 2.2 or later deletes those photos. |
| Reminders | Optional skin check-in and routine reminders | Reminder settings are stored on your device. Reminders are local notifications scheduled by the app; we do not use remote push notifications. |
| Device attestation | Apple App Attest / Google Play Integrity for scan limits | Anonymous device token. Not personally identifiable. Our server keeps the device key identifier, the number of scans made and the time of the last verification. |
| Subscription status | Managed via Apple/Google In-App Purchases through RevenueCat. Once your free scans are used, our API checks with RevenueCat whether a subscription is active. | We do not collect or store any payment data. The app sends its anonymous RevenueCat identifier with a scan or product request. RevenueCat reports subscription events to us (trial started, subscription started, renewed or cancelled, plan, price, currency, store country); these are stored with the anonymous usage analytics. |
| Error and performance reports | Sentry crash logs and performance measurements for app stability and speed | Device model, OS version, stack traces, app start and screen load times, and how long each step of a scan takes. No photos or personal data. |
| Anonymous usage analytics | Understand how features are used to improve the app experience | A random identifier generated on your device, app events (e.g. screen views, feature usage, the outcome of a scan such as skin score, skin type, and the age range and gender you set in your profile, the names of products you add to My Shelf, timing measurements), on Android the link the app was installed from (read once from Google Play), platform (iOS or Android), app version, and the country and language set on your device. No photos, no name, no skin conditions, sensitivities or background. Stored in our own database on Supabase in the EU (Ireland) and not shared with third parties. You can turn this off in the app under You, Settings, "Share anonymous usage analytics". |
| Download link visits | Count how many people open our download links and tap a store button, per link and campaign | On the /get and /c pages of this website: a random identifier created for each visit and forgotten when you leave the page, the link and campaign (such as a creator code), the store button you tap, whether the page was opened on an iPhone, an Android phone or a computer, and the page language. No cookies, nothing stored in your browser, no IP address, no browser details and no personal data. Stored in our own database on Supabase in the EU (Ireland). |
3. What We Do NOT Collect
We do not collect:
- Name, email address, or phone number
- Location data
- Browsing or search history
- Advertising identifiers
We do not serve ads, do not track you across apps or websites, and do not require account creation. Our anonymous usage analytics contain no personally identifiable information.
4. Legal Basis (GDPR Article 6)
- Consent: Camera access for skin analysis (you grant permission via your device settings)
- Legitimate interest: Error reporting (Sentry) to maintain app stability; device attestation to prevent abuse; anonymous usage analytics (stored on our own backend) to improve app experience
- Contract: Processing subscription purchases you initiate through Apple or Google; keeping the encrypted scan backup that lets you restore your history and your shelf (you can switch it off at any time)
5. Data Storage and Processing
Skin analysis results are stored on your device. Photos are processed only to provide the analysis you request and are not written to Skina's database.
AI analysis. Our API runs on Supabase in the EU (Ireland). It passes the eight selfie analysis images and the profile answers listed in section 2, or your product photo, to Google's Gemini model on Google Cloud Vertex AI and returns the result to the app. The request uses Vertex AI's global endpoint, so processing and cached data are not tied to a single region. Our API does not store the photos or the profile answers.
Google retention and use. Google Cloud Vertex AI may cache inference inputs, outputs and derived data, including the analysis images, for up to 24 hours. If Google's automated safety classifiers flag a request for further abuse review, Google may log the prompt and response and retain them for up to 90 days under its data governance and abuse-monitoring policies. Google states that it does not use customer data to train or fine-tune AI models without prior permission. We do not sell face data or share it for advertising or marketing.
Encrypted scan backup. So that your scan history and My Shelf survive reinstalling the app or switching phones without needing an account, the app creates a random secret and saves it in your own iCloud Keychain (iOS) or Google Block Store backup (Android). Your results and the products on your shelf (never photos) are encrypted on your device with a key derived from that secret (AES-256-GCM) and the encrypted copy is stored on our servers (Supabase, EU region: Ireland). The secret never leaves your device or your Apple/Google account, so we cannot decrypt or read your backup. Turning off "Back up scans and shelf" in Settings deletes the encrypted copy from our servers; clearing your history in the app also removes those scans from the backup, and removing a product from your shelf removes it from the backup.
Usage analytics. The app sends anonymous usage events to our own API, which stores them in our database on Supabase (EU, Ireland). We do not use a third-party analytics service. Turning off "Share anonymous usage analytics" in Settings stops the app from sending events and deletes the events that were waiting to be sent. Versions of the app before 2.0 send anonymous usage events to Mixpanel (servers in the EU, Netherlands) instead; updating the app to version 2.0 or later ends this.
Install source. On Android, the app reads the Google Play install referrer once, on its first launch, to learn which link the install came from: the source, medium and campaign of the link (for example a creator link, or "organic" for an install found in Google Play). It is sent as one anonymous usage event and follows the analytics setting above. The iOS app does not do this.
Download links. The /get and /c pages of this website count page views and store button taps per link and campaign. Each visit gets a random identifier that exists only while the page is open. The pages set no cookies, store nothing in your browser and send no personal data; the counts go to the same database on Supabase (EU, Ireland).
We use the following third-party services, all of which operate under GDPR-compliant Data Processing Agreements:
- Supabase: Our backend (API, device attestation records, encrypted scan backups, anonymous usage analytics), hosted in the EU (Ireland) (Privacy Policy)
- Google Cloud (Vertex AI): AI analysis of selfie and product photos with the Gemini model (Privacy Notice)
- RevenueCat: Subscription management (Privacy Policy)
- Sentry: Error and performance reporting (Privacy Policy)
- Apple / Google: In-App Purchases and device attestation
6. Data Retention
- Face and product photos: The original selfie is deleted from the app's temporary storage after its eight analysis images have been prepared. Those images and product photos are held only in app memory while analysis or a retry is pending; closing the app discards the in-memory images. Photos are not saved to scan history or the encrypted backup and are not retained on Skina's or Supabase's servers. Google may cache inference inputs and outputs for up to 24 hours and may retain safety-flagged prompts and responses for abuse review for up to 90 days, as described in section 5.
- Face detection data: Live frames are disposed of as they are processed. Face coordinates, angles and landmarks remain only in transient on-device memory and are not retained, uploaded for analysis or backed up.
- On-device data: Stored until you delete the app or clear its data.
- Encrypted scan backup: Kept until you turn off "Back up scans and shelf" in Settings, which deletes it.
- Sentry logs: Automatically deleted after 90 days.
- Analytics data: Anonymous event data is kept in our own database on Supabase.
7. Your Rights (GDPR)
Under the GDPR, you have the right to:
- Access: Request a copy of any personal data we hold about you
- Rectification: Request correction of inaccurate data
- Erasure: Request deletion of your data ("right to be forgotten")
- Portability: Receive your data in a structured, machine-readable format
- Objection: Object to processing based on legitimate interest
- Complaint: Lodge a complaint with the Belgian Data Protection Authority (www.dataprotectionauthority.be)
Since nearly all data is stored locally on your device and we hold virtually no personal data on our servers, most of these rights are already satisfied by design.
8. Children
Skina is not directed at children under the age of 16. We do not knowingly collect personal data from children under 16. If you believe a child has provided us with personal data, please contact us and we will take steps to delete it.
9. Changes to This Policy
We may update this privacy policy from time to time. Changes will be reflected on this page with an updated "Last updated" date. Continued use of the app after changes constitutes acceptance of the revised policy.
10. Contact
For any questions about this privacy policy or your data, contact us at:
robin@easystreet.be