LoopSnap Privacy Policy
Effective date: 2026-05-10 Last updated: 2026-05-20
LoopSnap is an iOS app that turns Live Photos and short clips into animated messages — stickers, GIFs, and looping WebPs sized for the chat app you're sending them to. This policy explains, in plain terms, what we do and do not do with your data.
The short version: we do not collect, transmit, or share any of your data. Everything LoopSnap does happens on your iPhone. There is no server we control, no analytics SDK, and no third-party tracker.
---
1. What LoopSnap does not do
LoopSnap does not:
- Create an account, ask for an email, or otherwise identify you
- Send your photos, videos, or any user-generated content off the
device - Use Google Analytics, Firebase, Sentry, Mixpanel, Amplitude, or any
similar analytics or crash-reporting SDK - Contain advertising SDKs, ad networks, or marketing pixels
- Read your Contacts, Calendar, Reminders, Health data, or Location
- Use the IDFA (advertising identifier) for tracking — the app's
Privacy Manifest (PrivacyInfo.xcprivacy) declaresNSPrivacyTracking = falseand the tracking-domains list is empty - Make network requests under normal operation other than those
Apple's own frameworks initiate (e.g. App Store IAP receipt validation, see §4)
You can verify these claims by inspecting the app binary or watching network traffic from a tool like Charles Proxy or Little Snitch.
---
2. What stays on your device
LoopSnap reads, processes, and writes the following data, all locally on your iPhone:
- Source media — Live Photos, videos, and bursts you pick from the
Photos app via the system photo picker. The app holds the frames in memory long enough to encode them, then discards them. We do not silently keep copies. - Exported files — when you save a GIF / WebP / MP4 to your
Photos library, the file goes through the standardPHPhotoLibrarysave API. LoopSnap never sees the file again after that handoff. - Library cache — the in-app Library tab keeps thumbnails and
metadata for past loops you've made, stored in the app's sandboxed container (Application Support/). Deleting the app removes everything in that container. - Preferences — your last-selected destination chip, onboarding
completion flag, and Pro entitlement cache are stored inUserDefaults. These are stored in the app's sandboxed plist on device. - Local metrics — counts of successful and failed exports and
the timestamp of your first export are stored inUserDefaultsso the in-app Debug screen can show you what the app has done. These never leave the device. SeeLocalMetrics.swiftin the open repository for the full list.
---
3. Photo library permission
When you first pick media inside LoopSnap, iOS asks for access to your Photos library. LoopSnap requests read access only by default, and only for the specific items you select via the photo picker (using PHPickerViewController, which gives the app a sandboxed copy of just the items you tapped on — not your whole library).
When you save an exported animation, iOS asks separately for add- to-library permission. You can grant either, both, or neither; denying both does not break the rest of the app — you can still preview, but Save and Share buttons become unavailable.
You can revoke these permissions at any time in Settings → Privacy & Security → Photos → LoopSnap.
---
4. In-App Purchase (LoopSnap Pro)
LoopSnap Pro is a single one-time, non-consumable In-App Purchase priced at $7.99 USD (local-currency equivalent shown at checkout).
Purchases are processed entirely by Apple StoreKit 2. Apple is the merchant of record. We receive no payment information about you from Apple — only a Transaction ID and a signed entitlement confirming that the purchase exists. We use that entitlement to unlock Pro features inside the app. Restore Purchase, refund processing, and receipt validation all go through Apple's infrastructure, not ours.
Family Sharing is disabled for LoopSnap Pro. Refunds are handled exclusively by Apple per the App Store Terms of Service.
---
5. Children
LoopSnap is not directed at children under 13 and does not knowingly collect any data from anyone. Because there is no server-side collection, there is no "children's data" pipeline to delete from.
---
6. Open source components
LoopSnap links the following third-party libraries. None of them make network requests in the configuration we ship:
| Library | License | What it does | |---|---|---| | libwebp 1.5.0 | BSD-3-Clause (Google) | Encodes animated WebP for the WhatsApp Sticker destination |
The full BSD-3-Clause text and the libwebp patent grant are available at <https://obelisk.club/loopsnap/acknowledgements> (reachable from Settings → Acknowledgements in the app) and in the source repo at LoopSnapKit/Vendor/LICENSE-libwebp.txt and LoopSnapKit/Vendor/PATENTS-libwebp.txt.
---
7. Data retention
Because we do not collect data, there is nothing for us to retain. All data described in §2 lives in your phone's local sandbox and is removed when you delete the app.
---
8. Your rights (GDPR / CCPA / PIPL)
Because no personal data is collected, transmitted, or stored by us, the principal rights granted by GDPR, CCPA, and PIPL — access, deletion, portability, opt-out of sale — have no on-device target. We can confirm in writing on request that we hold zero records about any user.
If you are in the EU, the UK, California, China, or another jurisdiction that recognises a "right to access," you may write to the address in §10 and we will confirm that statement applies to your account. (There is no account, so the answer is always the same.)
---
9. Changes to this policy
If a future version of LoopSnap changes any of the above — for example, adds an optional account-based sync feature, or integrates an analytics SDK — we will:
1. Update this document with a new "Last updated" date 2. Note the substantive change in the App Store "What's New" text for the version that introduces it 3. For changes that meaningfully expand data collection (anything that creates a new category of data leaving your device), prompt you in-app at first launch of the new version with the option to opt out and keep the old behaviour
Older versions of this policy are tracked in the repository at LEGAL/PRIVACY-en.md (git history).
---
10. Contact
Questions, complaints, or data-rights requests:
We aim to reply within 7 business days. If you do not receive a reply, the App Store Connect "Report a Problem" route reaches us as well — App Store Connect routes feedback to the same mailbox.