InvertLens — Privacy Policy
1. Summary
- InvertLens is a live negative-view camera. It is a viewing aid only; it does not identify or diagnose anything.
- Camera frames are processed on your device and are never uploaded to any server.
- An image is stored only when you tap Save, and it stays in the app's private storage on your device.
- There is no account and no sign-in, and we run no servers of our own.
- The free version shows one banner ad from Google AdMob. To show that ad, Google's advertising software processes some data, such as your device's advertising ID and IP address. Section 4 explains this.
- If you buy InvertLens Plus, no ads are shown and the advertising software is not started.
- The app includes Google's Firebase Analytics and Firebase Crashlytics. They send basic usage statistics (for example that a frame was frozen) and crash reports to Google so we can see how the app is used and fix crashes. They never contain images or anything that identifies you by name. Section 6 explains this.
2. Camera and images
The app uses the camera to show the live view and to apply the view modes (Negative, High Contrast, Mono Negative, Edge Glow), contrast, zoom, split compare and freeze.
- On-device processing. Camera frames are processed on your device's graphics processor. They are not sent to us or to anyone else, and they are not uploaded to any server.
- Saved only when you choose. Nothing is recorded while you simply look through the live view. An image is stored only when you tap Save.
- Private storage. Saved captures are kept in the app's private storage on your device and shown in the in-app gallery.
- Save to phone. If you choose "Save to phone", the app copies the selected captures to the
Pictures/InvertLensfolder on your phone. This happens only when you ask for it. From then on those copies are ordinary pictures on your phone, and other apps you have given photo access to can see them. - Share. If you choose Share, Android's share sheet opens and the image goes to the app you pick. What that app does with it is covered by that app's own privacy policy.
The app does not record sound and has no access to your microphone.
3. Permissions
The app requests two Android permissions itself:
- Camera (
CAMERA): needed for the live view. Android asks you to allow it. Without it the app cannot show the camera image. - Internet (
INTERNET): used for ads in the free version, for purchases through Google Play, and for sending usage statistics and crash reports to Google Firebase (section 6). The app does not use it to send your images anywhere.
The Google components built into the app add some further permissions that Android grants automatically, without a prompt. These include network state (ACCESS_NETWORK_STATE), the advertising ID permission (com.google.android.gms.permission.AD_ID) and Google Play billing (com.android.vending.BILLING).
The app does not request microphone, location, contacts or storage permissions.
4. Advertising
The free version shows one banner ad at the very bottom of the main camera screen. The ad is provided by Google AdMob through the Google Mobile Ads SDK. No other screen shows ads.
To deliver the ad, measure it and protect against fraud, Google may collect and process the following through its SDK:
- Advertising ID and similar device identifiers (such as the app set ID).
- IP address, from which an approximate location (for example country or city) may be derived. The app does not use GPS or request any location permission.
- Device information, such as device model, operating system version and language.
- Ad interaction data, such as whether an ad was shown or tapped, and basic app-use signals like app launch.
- Diagnostic data about how the app and the SDK perform.
This data goes directly from your device to Google. We see only aggregated ad reports in our AdMob account (for example how many ads were shown), not data about individual users, and we keep none of it on servers of our own. The app does not send camera frames or your saved captures to the advertising service.
Depending on your region and your choices, ads may be personalised or non-personalised. Google handles this data under its own policies:
- Google Privacy Policy: https://policies.google.com/privacy
- How Google uses information from apps that use its services: https://policies.google.com/technologies/partner-sites
- Your Google ad settings: https://adssettings.google.com
InvertLens Plus. If Plus is active, no ads are shown and the advertising SDK is not initialised.
5. Consent and ad choices
Where the law requires it (for example in the European Economic Area, the United Kingdom and Switzerland), the app shows a consent form before ads are loaded. The form is provided by Google's User Messaging Platform (UMP). Your choice is stored on your device.
You can change your choice later:
- In the app: open Settings and tap "Ad privacy choices". This row appears when a consent choice applies to you.
- On your phone: in Android's settings, open the Ads section (usually under Privacy or Google) and choose "Delete advertising ID". You can also reset the ID there. The exact path differs between devices and Android versions.
- In your Google account: manage ad personalisation at https://adssettings.google.com.
6. Analytics and crash reports
Since version 1.0.1 the app includes two Google services from the Firebase platform: Firebase Analytics (Google Analytics for Firebase) and Firebase Crashlytics. Both are present in the free version and in InvertLens Plus. They are configured with the app's Firebase project settings, and the data they collect goes directly from your device to Google.
Firebase Analytics. We use it to understand, in aggregate, how the app is used. The app logs only these four events of its own:
first_frame: the first live camera frame was shown in a session.capture: you froze a frame. It carries the name of the view mode that was active (for example Negative).paywall_view: the Plus screen was opened. It carries the reason it opened (for example that a Plus-only mode was tapped).purchase: a Plus purchase was completed. It carries the product identifier (for example monthly or yearly).
These events contain no personal data and no images. Firebase Analytics also collects its standard automatic data: a randomly generated app instance ID, events such as app open and screen engagement, device model, operating system version, language, approximate country derived from your IP address, and the app version. Analytics is switched off in our development builds, so only the published app sends it.
Firebase Crashlytics. If the app crashes, whether in its native code or in its JavaScript code, a crash report is sent to Google Firebase the next time the app starts. The report contains the stack trace, device model, operating system version, app version, available memory and storage, and a Crashlytics installation identifier. It contains no images, and we do not attach any user identifier of our own. We use these reports only to find and fix crashes.
What we see and do with it. We look at this data as dashboards and reports in the Firebase console. We keep none of it on servers of our own. We do not use it to personalise advertising, and the advertising SDK is described separately in section 4. Because both Firebase Analytics and Google Mobile Ads are present in the free version, Google may link analytics data with your advertising ID under its own policies; the ad choices in section 5 apply to that.
Google acts as our processor for this data and handles it under its own terms and policies:
- Privacy and security in Firebase: https://firebase.google.com/support/privacy
- Google Privacy Policy: https://policies.google.com/privacy
7. Purchases
InvertLens Plus is optional and is sold through Google Play Billing. Payment is handled entirely by Google Play. The app never sees or stores your card details or other payment information.
Google Play tells the app on your device whether Plus is active. The app stores that status locally so it can unlock the Plus features and hide ads. We do not keep purchase records on any server of ours. Google processes purchase data under the Google Privacy Policy.
8. Rating prompt and feedback
Rating prompt. After your third saved capture the app may show a one-time card inviting you to rate it. If you agree, the rating window is shown by Google Play (Google Play In-App Review). Rating is optional, and your rating or review is submitted to Google Play, not to us directly.
Feedback email. If you tap "Send feedback" or "Contact us", your own email app opens with a draft addressed to vrmoby@gmail.com. Nothing is sent unless you send the email yourself. If you do, we receive your email address and whatever you wrote, as with any email, and we use it only to read and answer your message.
9. Data stored on your device
The app keeps the following on your device only:
- Captures you saved.
- Your chosen language.
- Your last used view mode and contrast setting.
- A flag that records that the camera permission prompt has already been shown.
- A flag that records that you completed the introduction screens.
- The cached Plus status.
- A counter of how many captures you have saved, used to show the one-time rating card after the third save.
Google's components may also store their own data on the device, such as your ad consent choice, the Firebase Analytics app instance ID, the Crashlytics installation identifier, and any events or crash reports waiting to be sent.
10. Data retention and deletion
We hold no personal data about you on servers of our own, so there is nothing for us to retain or delete on our side, apart from any email you choose to send us. Analytics data and crash reports are held by Google on our behalf for the periods below.
- Captures: delete them at any time in the in-app gallery (select one, several or all, then delete).
- Everything in the app: uninstalling the app deletes the in-app gallery and the other data listed in section 9. You can also clear the app's storage in Android's settings.
- Copies made with "Save to phone": these are in
Pictures/InvertLenson your phone and stay there until you delete them with your gallery or file manager, even after you uninstall the app. - Advertising data: this is held by Google. You can delete or reset your advertising ID in Android's settings and manage your data in your Google account.
- Analytics data: this is held by Google Firebase under the retention settings of our Firebase project. We have set event-level data retention to 2 months, after which Google deletes it; aggregated reports may be kept longer. Uninstalling the app ends collection, and reinstalling creates a new app instance ID that is not linked to the old one. Resetting your advertising ID also breaks any link Google may have made between analytics data and that ID.
- Crash reports: these are retained by Firebase Crashlytics for 90 days and then deleted by Google.
- Emails you sent us: ask us at any time and we will delete them.
11. Children
InvertLens is not directed at children under 13, and we do not knowingly collect personal data from children. If you believe a child has sent us personal data by email, contact us and we will delete it.
12. Your rights
Depending on where you live, laws such as the GDPR (European Economic Area and United Kingdom), the KVKK (Türkiye) and the CCPA (California) give you rights over your personal data. These can include the right to be informed, to access, correct or delete your data, to object to or restrict processing, to withdraw consent, and to complain to your data protection authority.
- Data held by us: we do not hold personal data about you on servers of our own. The only personal data we may have is an email you sent us. Write to us and we will give you a copy or delete it.
- Data on your device: you control it directly, as described in section 10.
- Advertising data: this is processed by Google. Use the options in section 5 to change your consent or delete your advertising ID, and contact Google through the links in section 4 to exercise your rights over the data Google holds.
- Analytics data and crash reports: these are processed by Google Firebase on our behalf, as described in section 6. Analytics events are tied to a random app instance ID, not to your name or email, so we cannot look up a particular person's data. If you still want to exercise a right over this data, email us and we will do what the tools Firebase gives us allow, and help you as far as we can; you can also contact Google through the links in section 6. Uninstalling the app stops all further collection, and the data already held is deleted after the periods in section 10.
We do not sell your personal data. The ad in the free version does involve Google processing the data described in section 4; you can limit that with the options in section 5, or avoid it by using InvertLens Plus. The analytics and crash reporting in section 6 have no in-app switch; they run in both the free and the Plus version. If you have a question about your rights or need help with a request, email vrmoby@gmail.com.
13. Changes to this policy
If the app or the law changes, we may update this policy. The new version will be published on this page with a new effective date.
14. Contact
VR Moby
Email: vrmoby@gmail.com
15. Subscription terms
- InvertLens Plus is optional. The app's free features work without it.
- Plus removes ads, unlocks the Mono Negative and Edge Glow modes and removes the 20-capture limit of the in-app gallery.
- Plus is offered as a monthly subscription, a yearly subscription or a one-time lifetime purchase.
- Monthly and yearly subscriptions renew automatically until you cancel them. You can cancel at any time in Google Play › Subscriptions. After you cancel, Plus stays active until the end of the period you already paid for.
- The lifetime option is a single purchase and does not renew.
- Prices are provided by Google Play and shown in the app before you buy.
- Payments and refunds are handled by Google Play and follow Google Play's refund policy.