SkinArc Privacy Policy

Last updated: 2026-09-30

1. Who we are

SkinArc ("we", "us") is a skin-tracking mobile application operated by Keyao Zhu, an individual (not a company), based in Vancouver, British Columbia, Canada. This policy covers the SkinArc app and the backend services it talks to. Contact: worldtab.app@gmail.com.

2. What we collect

Data What it is Where it lives by default
Face photos The photos you take in the guided capture flow On your device only. Never uploaded unless you turn on cross-device sync in Settings → Privacy.
Skin scores Numbers our on-device algorithm computes from each photo (redness, pore, wrinkle, dark-circle, spot, oiliness, skin-tone-evenness, roughness, broken-capillary, dullness, breakout, and blackhead measurements) On your device; synced to our servers automatically once you create an account, so your history isn't lost if you reinstall
Routine-change labels Free-text notes you add ("started retinol", etc.) Same as skin scores
Account info Email address, or your Google/Apple account identifier if you sign in that way, plus the nickname and emoji avatar you choose Our servers (Supabase, see §5)
Approximate location Used only to look up local weather/UV/air-quality for the environmental-correlation feature Your device's location is rounded to roughly city-level precision (~11km) before it ever leaves your device, then sent directly to our weather-data provider, OpenWeatherMap (see §5) — not routed through our own servers first. We do not store the coordinates ourselves; only the resulting temperature/UV/air-quality/humidity/wind values are saved, and only if you enable this optional feature
Purchase data Subscription status, verified through Apple/Google Our servers, written only by an automated server process — never directly by the app
Feedback you submit The text of any feedback you send us (Settings → Feedback), and your email address if you provide one for a reply Relayed by our server and delivered to us by email (Resend, see §5); not stored in our database. Only collected if you actually submit feedback
Install attribution data Collected when the app is opened, for every install, so that installs from our ads can be told apart from the rest: your device's advertising identifier (the Google Advertising ID on Android — on iOS no IDFA is collected, because we never ask for App Tracking Transparency), IP address, device model and OS version, and the fact and time of the install and first open Sent to AppsFlyer (see §5). Contains none of your photos, skin scores, routine-change labels, or account email
Crash and error diagnostics Stack trace, device model, OS version, app version and language, when the app crashes or hits an error Sent to Sentry (see §5). No email address or account identifier is attached

We do not collect: your name (unless you type it into the nickname field), contacts, or photos other than what you capture in-app.

As a guest (without an account), your photos, skin scores, routine-change labels and account details never leave your device. Install attribution data (AppsFlyer) and crash diagnostics (Sentry) are still sent, as described above.

3. How your data is used

4. Biometric data — BIPA / state law disclosures

Your face photos and the skin measurements we derive from them may be considered biometric identifiers or biometric information under laws such as the Illinois Biometric Information Privacy Act (BIPA) and similar statutes in Texas, Washington, and other jurisdictions.

5. Who processes data on our behalf (subprocessors)

Provider What they handle Why
Supabase Account auth, database (scores, routine changes, purchase status), relaying feedback to Resend (not stored), and — only if you enable cross-device photo sync — encrypted photo storage Our backend infrastructure
Apple / Google Subscription payment and receipt data Required for in-app purchases; we never see your payment card details
Anthropic (Claude API) The text summary of your monthly/weekly report and daily tip — see §6 for exactly what's sent Generates the VIP report's written narrative and the VIP daily tip
Resend The text of feedback you submit (Settings → Feedback) and your email address if you provide one for a reply; and your account email address, for sign-up confirmation and password-reset emails Delivers your feedback to us by email, and sends account emails
OpenWeatherMap Your approximate location (rounded to city-level before it leaves your device), sent directly from the app — not via our servers Looks up local temperature/UV/air-quality for the optional environmental-correlation feature — only called if you enable that feature
AppsFlyer The install attribution data described in §2 — advertising identifier, IP address, device model and OS version, install and first-open events Tells us which ad campaign an install came from, so paid acquisition can be measured. Receives none of your photos, skin scores, routine-change labels or account email
Sentry Crash reports and error diagnostics — stack trace, device model, OS version, app version and language Lets us find and fix crashes. Configured with sendDefaultPii: false, so no email address or account identifier is attached

6. AI — what actually gets sent, and what doesn't

This matters enough that we want to be precise rather than vague:

7. Not medical advice

SkinArc provides personal tracking and statistical observations about your own data over time. It is not a medical device, does not diagnose any condition, and the "attribution" feature shows correlation in your own logged data, not a clinically validated cause-and-effect finding. Consult a dermatologist for any medical concern. See the in-app disclaimer shown on every attribution result for the exact wording.

8. Location data

Location access is optional and used only to look up local weather/UV/air-quality for the environmental-correlation feature. If you deny or later revoke location permission, that feature simply doesn't show data — nothing else in the app is affected.

9. Your rights

10. Children's privacy

SkinArc is not directed at children under 13. We do not knowingly collect data from children under that age.

11. Security

Photos default to on-device storage. Account credentials are never stored in plaintext — sessions are AES-256 encrypted with the key held in the device's secure hardware storage. Server-side data is protected by row-level security policies scoping every user to their own rows only.

12. Changes to this policy

If we make a material change to this policy, we'll show an in-app notice the next time you open SkinArc and update the "Last updated" date above. Continued use of the app after that notice means you accept the revised policy.

13. Contact

worldtab.app@gmail.com