Privacy Policy

Last updated: September 22, 2026

Our Commitment to Privacy

LuminaClean (“we”, “our”, or “the app”) is built with a privacy-first philosophy. We believe your photos are deeply personal, and you should never have to send them to a server for processing. That is why LuminaClean performs all photo analysis entirely on your device.

Your photos and videos never leave your device. LuminaClean has no accounts and never asks for your name, email address or contact details.

To keep the app working, fix crashes and understand where new users come from, the app does send a limited amount of technical data. This policy lists all of it.

Data Collection

We do not collect:

  • Your photos, videos or any other media files
  • Your name, email address or contact information
  • Your precise location or GPS coordinates
  • Your contacts, messages or browsing history

We do collect the technical data described in the sections below: anonymous usage events, crash reports, purchase records and information about which link or ad led to your install. This data is tied to a random identifier created by the app, not to your identity.

On-Device Processing

All photo analysis in LuminaClean, including duplicate detection, similarity comparison, blurriness detection, and screenshot identification, is performed locally on your device using on-device machine learning.

Your photos never leave your device. No images are uploaded to any server, cloud service, or external system. The AI models run entirely within the app on your iPhone or iPad.

Photo Library Access

LuminaClean requests access to your photo library solely to analyze and help you organize your photos. This access is governed by Apple's Photos framework and requires your explicit permission.

You can revoke photo library access at any time through your device's Settings app under Privacy & Security > Photos.

Analytics & Diagnostics

Usage analytics (FolioKit). The app records anonymous usage events, such as “scan started” or “paywall shown”, together with the app version, iOS version, device model and approximate country. These events are tied to a random identifier created on your device. We use them to find bugs, see which features help people and decide what to build next. FolioKit is our own analytics service; we do not sell this data.

Crash reports (Firebase Crashlytics). If the app crashes, a crash report is sent to Google’s Firebase Crashlytics. It contains technical details about the crash and your device (such as the device model and iOS version) so we can fix the problem.

Apple may also provide us with aggregated, anonymized statistics and crash reports if you have agreed to share analytics with app developers.

Purchases

Subscriptions and purchases are processed by Apple. We use RevenueCat to confirm what you have bought so the app can unlock it. RevenueCat receives your purchase records under the same random identifier, never your name or payment details. It also receives the AppsFlyer install identifier described below, so a purchase can be linked to the campaign that led to the install.

How We Learn Where Installs Come From

Apple Search Ads. If you installed LuminaClean after tapping an Apple Search Ads result, Apple tells the app which campaign that was through its AdServices framework. This contains no personal information.

AppsFlyer. The app uses AppsFlyer to measure which link or ad campaign led to an install. AppsFlyer receives technical information such as your device model, iOS version, network (IP) address and app open events. The app asks for your permission to track. Only if you choose “Allow” may AppsFlyer also receive your device’s advertising identifier (IDFA). If you choose “Ask App Not to Track”, it does not. You can change this at any time in Settings > Privacy & Security > Tracking.

Ads in ChatGPT (OpenAI). If you reached LuminaClean from an ad shown in ChatGPT, we report the install, and later trial or subscription events, back to OpenAI together with that ad’s click reference, so the ad’s performance can be measured. We match your install to the ad click using the scrambled network address described in the next section. We never send OpenAI your photos, your name or your contact details.

Our Website (luminaclean.app)

The website counts page views and clicks using our own analytics (FolioKit) and Vercel Analytics, with a random identifier stored in your browser. It sets no advertising cookies of its own.

The site also loads measurement pixels from TikTok and OpenAI, and an AppsFlyer link script. These tell those companies when a visitor who arrived from one of their ads taps the download button.

When you tap a link to the App Store, our server keeps a scrambled (salted and hashed) version of your network address for three days. If the app is then opened for the first time from the same network, we credit the install to the page or ad you came from. The original address is never stored, the scrambled value cannot be turned back into it, and it is deleted after three days.

Third-Party Services

The app shows no ads. The external services involved are:

  • Apple (App Store, StoreKit, AdServices) — distribution, purchases and Apple Search Ads attribution
  • RevenueCat — purchase validation
  • Google Firebase Crashlytics — crash reports
  • AppsFlyer — install attribution
  • OpenAI and TikTok — advertising measurement for visitors who arrive from their ads
  • Vercel — website hosting and analytics

Each service handles data under its own privacy policy. Apple’s is available at apple.com/legal/privacy.

Your Choices

  • Revoke photo library access at any time in Settings > Privacy & Security > Photos.
  • Allow or deny tracking at any time in Settings > Privacy & Security > Tracking.
  • Reset the app’s random identifier by deleting and reinstalling the app.
  • Ask what data we hold under your identifier, or ask us to delete it, by emailing nextstep.appstudio@gmail.com.

Children’s Privacy

LuminaClean does not knowingly collect personal information from children under the age of 13 (or the applicable age in your jurisdiction). The app requires no account, and the technical data described above is not used to identify anyone.

Changes to This Policy

We may update this Privacy Policy from time to time. Any changes will be reflected on this page with an updated "Last updated" date. We encourage you to review this page periodically. Continued use of the app after changes are posted constitutes acceptance of the revised policy.

Contact Us

If you have any questions or concerns about this Privacy Policy or the app's privacy practices, please contact us at:

nextstep.appstudio@gmail.com