Privacy Policy
What changed in this update (October 23, 2026)
- If you sign in to an email account, Flits now syncs the details of your scans (title, date, time, whether it is all-day, location, description, repeat rule, whether it is saved, dismissed or waiting for a date, created time and a duplicate-check key) to your account so you can see them on another device. The photo or screenshot, the full text read from it (only the extracted details listed here are synced), your notes and your calendar entries are not synced. Guests are not synced. See sections 2.2, 5 and 6.
- Signing out still clears your scan history from that device, but history already synced to your account stays in your account. Clear History and deleting a scan also remove them from your synced history. Delete Account removes all of it.
Earlier update (October 13, 2026)
- Flits now offers an optional email and password account. If you create one, your email address is stored by Firebase Authentication.
- Signing out clears your scan history from that device. Deleting your account now also removes your email address.
- We corrected how we describe your Firebase ID and the monthly scan count: the count resets each month, but your ID does not.
- We added how to ask us to delete your data if you cannot sign in.
- Delete Account now also removes the records that link your store purchase to your account ID. Records from accounts deleted before this deletion update are not cleared automatically; contact support if you need help.
- We clarified that, when usage analytics is enabled, PostHog derives approximate city and country from your IP address. This does not use device location permissions or precise GPS location.
- Correction: an earlier version of this page said Flits does not read your existing calendar events. It does: Flits reads events in the calendar you chose for the date and time of the event you are saving, on your device only, to show a day preview and warn about conflicts. Nothing from your existing events (titles, times or details) is uploaded.
- Correction: an earlier version of this page wrongly described screenshot monitoring on Android. Smart Scan is iOS only, and Flits for Android does not monitor your screenshots. We also now say plainly that Smart Scan on iOS needs Photos access and only reads the Screenshots album while the app is open.
1. Who We Are
Flits ("we", "our", "us") is a mobile application that helps you save events from photos and screenshots directly to your calendar using AI.
Contact: support@getflits.app
2. What Information We Collect
2.1 Information You Provide
We do not require you to create an account. Flits starts with an anonymous guest session by default.
You can optionally add an email address and password to your account, or sign in to an existing account, so you can get back to your scan credits and Premium status on another device or after reinstalling. If you do, we receive your email address and a password, which are handled by Google Firebase Authentication. Your email address is stored in Firebase Authentication, not in our own database. Firebase stores your password in hashed form; we never see or store your plain-text password. If you ask for a password reset, Firebase Authentication sends the reset email to your address. We do not use your email address for marketing, analytics or error tracking.
If you choose to subscribe to Flits Premium, your purchase is processed by Apple App Store or Google Play Store. We do not collect or store your payment information.
2.2 Information Collected Automatically
When you use Flits, we collect:
Device and usage data:
- Device type and operating system version
- App version
- App usage events (e.g. "scan triggered", "event saved") associated with your pseudonymous Firebase UID, sent to PostHog analytics
- When usage analytics is enabled, approximate location (such as city and country) derived by PostHog from your IP address for analytics. This does not use device location permissions or precise GPS location
- Crash and error reports via Sentry, including your pseudonymous Firebase UID and subscription status (Premium/Free)
Scan data:
- Photos and screenshots you choose to scan are sent to our secure servers for AI processing
- Text you paste or type, and clipboard text you choose to scan, is sent for AI processing in the same way (to Google Gemini through our Cloud Function). Flits may check your clipboard on your device for text that looks like an event, and only sends it if you choose to scan it
- If a QR code you scan contains a link to a calendar (.ics) file, Flits downloads that link directly from your device to read the event
- Photos are processed to extract event details (date, time, location) and are not stored on our servers after processing
- Extracted event data (title, date, time, location) is stored on your device. If you are signed in to an email account, the details of your scans (title, date and time, whether it is all-day, location, description, repeat rule, whether a scan is saved, dismissed or waiting for a date, when it was created, and a simplified key built from its title, date and time that is used to avoid duplicates) are also stored in your account in Firebase Firestore so you can restore them on another device. We do not sync the photo or screenshot, the full text read from it (only the extracted details above are synced), your notes, reminder settings or calendar entries. Guest sessions are not synced
2.3 Smart Scan (Premium feature)
Smart Scan is available on iOS only. Flits for Android does not monitor your screenshots or your photo library. If you turn Smart Scan on in Flits Settings, Flits asks for access to your Photos (Flits requires full access, "All Photos", for this feature) and then:
- when you open the app, checks your Screenshots album for screenshots added since you last opened it (up to 3 per time you open the app); and
- while the app is open in the foreground, notices new screenshots added to that album.
Smart Scan only reads items in the Screenshots album, and only while Flits is open or being opened. It does not scan the rest of your photo library and does not watch your photos while the app is closed. Detected screenshots are processed through the same AI extraction pipeline as manual scans. Smart Scan runs do not count against your monthly scan limit.
2.4 Calendar Data
Flits writes the event you confirm to the calendar you choose on your device. If you undo a save, edit a saved event, or a save fails part-way, Flits updates or removes that same event in your calendar. If you turn on attach source image (iOS), the image is added to the event. Flits never changes or deletes events it did not create, and deleting a scan from History does not delete its calendar event. Flits also reads the events in that calendar for the date and time of the event you are saving, on your device only, to show you a day preview and to warn you about scheduling conflicts. We also read your list of available calendars to show you the picker. Nothing from your existing events (titles, times or details) is uploaded. The only calendar data that leaves your device is the name and ID of the calendar you select, which are stored with your account preferences in Firebase Firestore, and calendar or event IDs and dates, which can appear in error reports sent to Sentry.
2.5 Travel Time Feature (Optional)
If you enable the Travel Time feature (Premium), you may provide your home address. This address is stored in Firebase Firestore linked to your Firebase user ID and is used solely to calculate estimated travel time to event locations. Your home address is only stored if you explicitly enter it and can be removed at any time in Settings.
3. How We Use Your Information
We use the information we collect to:
- Provide the core service (extract event details from photos)
- Enforce the free tier scan limit (10 scans/month)
- Verify your Premium subscription status directly with Apple App Store or Google Play Store
- Improve the app through pseudonymous usage analytics
- Diagnose and fix bugs through crash reports
We do not:
- Sell your data to third parties
- Use your photos for training AI models
- Share your data with advertisers
- Upload or scan your general photo library — Smart Scan on iOS only reads the Screenshots album, and only while Flits is open. If you have given Flits Photos access, the camera screen also shows your most recent photo as a shortcut thumbnail; that stays on your device and nothing is sent anywhere unless you choose to scan it
4. Third-Party Services
Flits uses the following third-party services:
| Service | Purpose | Privacy Policy |
|---|---|---|
| Google Firebase | Anonymous and email/password authentication, scan count enforcement, user preferences | firebase.google.com |
| Google Gemini AI | AI event extraction from photos, screenshots or text you choose to scan (sent per scan) | ai.google.dev |
| Google Places API | Structured address lookup for extracted event locations | policies.google.com |
| Google Maps Platform | Travel time calculation — home address and event location are sent when the Travel Time feature is used (Premium only) | policies.google.com |
| PostHog | Pseudonymous usage analytics (Firebase UID + app events), including IP-derived approximate city and country when analytics is enabled | posthog.com |
| Sentry | Error and crash reporting (Firebase UID + subscription status) | sentry.io |
| Apple App Store Server API | Subscription verification for iOS purchases | apple.com/legal/privacy |
| Google Play Developer API | Subscription verification for Android purchases | policies.google.com |
5. Data Storage and Security
Local storage: Extracted event data and scan history are stored locally on your device using SQLite. As a guest, this data stays on your device unless you explicitly share it.
Synced scan history (signed-in accounts): If you are signed in to an email account, Flits copies the details of your scans to Firebase Firestore under your Firebase ID, in the background when you are online, and restores them if you sign in on another device. Only you can read or write them. The photo or screenshot, the full text read from it (only the extracted details above), notes, reminders and calendar entries are not included. When you delete a scan, or use Clear History, on a signed-in device, its details are removed from your synced history. Restored scans are not added to your calendar automatically; you choose to add each one.
Server processing: Photos sent for AI extraction are transmitted over encrypted HTTPS connections and are deleted from our servers immediately after processing completes.
Your Firebase ID: We assign you a Firebase ID (a random identifier) when you first open Flits. As a guest, this ID is not linked to your name, email, or any other personal identifier. If you add an email and password, the same ID stays with your account and Firebase Authentication stores your email address alongside it. If you instead sign in to an account that already exists, you switch to that account's ID, and any free scans left on your guest session are not transferred. The ID persists across months and is used for analytics, error tracking, and scan count enforcement. Your email address is not sent to PostHog or Sentry.
Scan credits: Your monthly scan count and Premium status are stored in Firebase Firestore under your Firebase ID.
Subscription tokens: When you subscribe to Flits Premium, your Apple transaction ID (iOS) or Google Play purchase token (Android) is stored in Firebase Firestore under your Firebase ID. This token is used solely to verify your subscription status with the respective app store. We do not use it for any other purpose.
6. Your Rights
You can:
- Delete your scan history at any time in Settings → Data → Clear History. If you are signed in to an email account, this also removes your scans from your synced history
- This action is immediate and irreversible
- Sign out in Settings if you have an email account. This clears your scan history from that device and starts a new guest session. Your account, and the scan history already synced to it, stay saved so you can sign in again and restore them. Scans that had not synced yet are lost.
- Your monthly scan count resets automatically at the start of each month. Your Firebase ID is not reset monthly. It stays the same while you keep using Flits. Signing out or deleting your account starts a new guest session with a new ID.
- Delete your account entirely via Settings → Data → Delete Account. This deletes your Firestore user document (including home address, scan count, and subscription tokens), your synced scan history, subscription webhook records linked to your account, the records that link your store purchase to your account ID, and your Firebase Authentication record, which removes your email address if you added one. Removing the purchase records also lets the same purchase be linked to a new account. This applies to new account deletions; it does not automatically clear records left by accounts deleted before this deletion update. If you deleted your account earlier, or need help restoring a purchase or with deletion, contact support@getflits.app. Deleting your account does not cancel a subscription; cancel it in the App Store or Google Play first.
If you cannot sign in: Email support@getflits.app from the address on your account and ask us to delete your account. We may need to verify that the request comes from the account holder. See also How to delete your data.
You cannot currently export your data — this feature is planned for a future version of Flits.
Analytics data: To request deletion of your PostHog analytics data, contact us at support@getflits.app. Include the app version and approximate date of first use so we can locate and delete your analytics records.
7. Children's Privacy
Flits is not directed at children under 13. We do not knowingly collect personal information from children under 13. If you believe a child has provided us with personal information, please contact us at support@getflits.app.
8. Changes to This Policy
We will notify you of significant changes to this privacy policy through the app or through the App Store / Play Store update notes. Continued use of Flits after changes constitutes acceptance.
9. Contact Us
For privacy-related questions, account deletion, or other privacy requests:
Email: support@getflits.app