Tidyshots
Features Privacy FAQ Support
Coming soon
On-device media processing Contacts Usage analytics Advertising attribution Purchases What we do not do Data retention Your rights Children Changes Contact

Privacy Policy

Last updated: October 22, 2026

Tidyshots is a product name of, and is operated by, Elowin Labs LLC ("we", "us"). References to "Tidyshots" mean Elowin Labs LLC doing business as Tidyshots. This policy explains the app's on-device media processing, local storage, and data sent to purchase, paywall and analytics services.

1. On-device media processing

Tidyshots scans your photo library on your device using Apple's Vision and PhotoKit frameworks. Photo and video content, thumbnails and image signatures are not sent to a Tidyshots media-processing server or to our paywall and analytics providers. Analysis signals are cached locally between sessions, as explained under Data retention. Locally available media can be scanned offline; iCloud-only items may be skipped. Fetching an iCloud original uses Apple's services and requires a connection. If you choose Share, the selected media is sent to the destination you choose. Your own iCloud Photos settings also govern library syncing.

Photo and video deletion is performed through iOS's own Photos confirmation dialog. Deleted media can be restored from Recently Deleted for up to 30 days unless you permanently delete it sooner. Compression saves a new video to your library first. Done keeps the original; only choosing "Replace original" and confirming deletion removes it.

2. Contacts

Contacts access is optional. If you grant it from the Duplicate contacts screen, Tidyshots compares the contacts you allow it to access on the device to find matching names, phone numbers or email addresses. "Open in Contacts" presents Apple's contact editor for you to review, edit or link cards. This handoff is free. Tidyshots does not automatically merge or delete contact cards, and does not send contact content to its service providers. Any changes you make in Apple's editor are handled by Apple's Contacts services and your contact-account settings. You can revoke access in Settings › Privacy & Security › Contacts.

3. Usage analytics

The app sends usage events to TelemetryDeck: event names (for example scan, paywall and purchase outcomes), count, size and timing ranges in buckets, product identifiers, and device/app metadata such as model, OS and app version. The SDK uses Apple's identifier for vendor when available, otherwise a generated identifier, and hashes it before transmission. TelemetryDeck describes additional server-side anonymization. These events help us understand feature use, purchases and reliability; they do not contain photo content, file names or contact details. This hashing does not describe how Superwall handles its identifiers, which is explained under Purchases.

This website uses Plausible Analytics and Google Analytics 4 to understand how the site is used: pages visited, the referring site, country, device and browser type. Plausible is cookieless and keeps no personal data. Google Analytics is provided by Google, which processes this data on our behalf under its data processing terms; it sets the cookies listed below and does not store IP addresses. We keep Google Analytics data for 14 months. We run Google Analytics with Google signals and ad personalization turned off and do not use it for advertising. See Google's Privacy Policy and how Google uses information from sites that use its services. Turn Analytics off in the cookie preferences and neither tool counts your visits, and the Google Analytics cookies are removed.

The website sets one cookie of its own, ts_consent, which records your choice in the cookie notice for 180 days and is mirrored in your browser's local storage under ts-consent. It identifies nothing and is never sent anywhere but this site. Plausible sets no cookies; Google Analytics sets the two cookies marked Analytics below, only while Analytics is on. The Cookie Policy has the same list and how to change your choices:

  • _ga (Analytics, 2 years). Google Analytics: a random identifier that lets us tell a returning browser from a new one when counting visits.
  • _ga_06CVDTNPM0 (Analytics, 2 years). Google Analytics: keeps the state of the current visit.

If you leave the notice unanswered it closes itself after about twenty seconds and records what is already running: Essential on, Analytics on, and nothing else. Nothing new starts at that moment, and Your privacy choices in the footer of every page reopens the preferences. In the EEA, the United Kingdom and Switzerland, Google Analytics stays cookieless until you accept Analytics.

4. Advertising attribution

Apple's AdServices framework can provide the app with an attribution token. The app sends that token to Apple's attribution service to learn whether an install came from an App Store ad and, when available, which campaign, ad group and keyword it came from. Those advertising identifiers are attached to TelemetryDeck events to measure which ads work; the app does not attach them to Superwall events. Tidyshots does not use this data for tracking across other companies' apps or websites, does not integrate a third-party ad network, and does not request the App Tracking Transparency permission.

5. Purchases

Weekly and yearly subscriptions are processed by Apple through the App Store. StoreKit provides transaction and entitlement information such as the product, purchase and expiration dates, and subscription status so the app can unlock Pro and restore valid purchases. The app never receives your payment-card details. Manage or cancel subscriptions in Settings › Apple Account › Subscriptions.

Superwall provides upgrade screens and measures paywall and subscription behavior. Its SDK initializes when the app starts, including before a paywall is shown. It receives a persistent generated user alias and Apple's identifier for vendor, as well as device model, OS, app version, locale and other device context. The alias and vendor identifier are sent to Superwall without the on-device hashing used by TelemetryDeck. They are pseudonymous identifiers that can associate events with an installation or device; they are not fully anonymous.

Superwall also receives paywall interactions, subscription status and purchase/restore outcomes, Pro status, count and size buckets, and a formatted summary of reclaimable storage. Its enabled events include performance timings, such as configuration-fetch duration, and diagnostic error details, such as configuration or paywall loading failures. This data supports paywall delivery, subscription functionality, analytics and reliability. Superwall does not receive photo/video content, thumbnails, image signatures, contact cards, file names or payment-card details from Tidyshots. We do not use these events for tracking across other companies' apps or websites.

6. What we do not do

  • We do not sell personal data. We send the service data described above to the providers that support the app.
  • We do not use your photos or contacts to train machine-learning models.
  • We do not run third-party advertising SDKs in the app.
  • We do not require a Tidyshots account. App Store purchases use your Apple Account.

7. Data retention

The app keeps a scan cache in its local Application Support storage so later scans can reuse analysis. Records include local Photos identifiers, file sizes, dimensions, dates, durations, media flags, image hashes and quality signals. Some compared photos also retain a small 32-by-32 luminance grid and a Vision feature representation. This cache survives quitting and relaunching, is excluded from backup, and is refreshed during later scans, which prune records for items no longer accessible. Removing the app and its local data removes the cache. Quitting the app or revoking Photos permission does not itself promise immediate cache erasure.

TelemetryDeck and Superwall process the service records described above for analytics, paywall/subscription functionality and reliability; these records can persist beyond an app session. They are separate from the local scan cache. Google Analytics data from this website is kept for 14 months. Support emails you send us are kept for as long as needed to help you and then deleted.

8. Your rights

If you are in the EU, UK, California or another jurisdiction with data-protection rights and want to exercise them, email us and we will respond within 30 days. Requests may concern support correspondence or identifiable or pseudonymous records held by our service providers. We may need information to locate the relevant records; not having a Tidyshots account does not mean that no service records exist. You may also lodge a complaint with your local supervisory authority.

9. Children

Tidyshots is not directed at children under 13 (or the higher minimum age in your jurisdiction) and we do not knowingly collect personal data from them.

10. Changes

If this policy changes materially, the "Last updated" date above changes and the new version is published at this address.

11. Contact

Email support@tidyshots.com.

© 2026 Tidyshots Privacy · Terms · Support