Information we collect
We collect only the information needed to operate and improve the flight tracker:
- Account information. When you use Sign in with Apple, we receive an Apple-linked account identifier and, when Apple makes them available, your email address and name. Apple may provide a private relay email address instead of your personal email.
- Saved-flight information. We store the flights you choose to track and when you saved them so the same list is available on your account.
- Contacts, only if you choose to find friends. If you allow access to your contacts, the app reads them on your device to show which of your contacts already use Lufthaven. Names, phone numbers, email addresses, and contact photos do not leave your device. See Contacts below.
- Service and diagnostic information. Our services process request identifiers, API routes, response status, timing, search outcomes, and error categories. Hosting providers may also process standard network information such as IP address, device or browser type, and timestamps for security and delivery.
- App usage and approximate location. The iOS app uses PostHog to measure screen views, interactions, and purchase and subscription events. These events use an installation identifier and are linked to your account identifier when you sign in. PostHog derives approximate country and city from your IP address for analytics. This does not use precise device location. App session recording is disabled.
- Crash reports and support. The app uses Sentry to collect crash reports and diagnostic information, such as app version, device and operating system details, linked to your account identifier when signed in. If you choose to send a bug report, we also receive the report text, diagnostics, and any screenshot you choose to include. Automatic screenshots and session replay are disabled.
- Website usage information. The supporting website uses PostHog to measure page views, interactions, heatmaps, and performance through pseudonymous browser identifiers stored in cookies or local storage. Session recording is disabled.
The iOS app does not currently request your precise device location. Airport coordinates and aircraft positions describe flights and airports, not the location of your phone.
Contacts
Access to your contacts is optional. The app asks for it only when you choose to find friends, and every other feature works without it. If you give iOS limited access, the app reads only the contacts you selected.
When you allow access:
- The app reads each contact's name, phone numbers, email addresses, and photo on your device. Names and photos are used only to show the list on your screen and are never sent to us.
- On your device, each phone number and email address is turned into a one-way SHA-256 hash, combined with a value from our server. Only those hashes are sent to us, over an encrypted connection. We cannot read a phone number or an email address from a hash.
- We compare the hashes with the hashes of Lufthaven members' own verified email addresses, and of a phone number where a member has added one, and send back the members that match so you can choose to follow them.
- We do not store the hashes you send for matching; they are used for that lookup and then discarded. We do not upload or keep your address book, do not keep any record of contacts who are not Lufthaven members, and do not use contacts for advertising or share them with anyone.
- The app never contacts anyone for you. If you choose to invite someone, it opens a message for you to review and send yourself.
So that friends can find you the same way, we store a hash of your account's verified email address (never Apple's private relay address) and of your phone number if you add one. These are deleted when you delete your account. You can withdraw contacts access at any time in iOS Settings > Privacy & Security > Contacts.
Connected assistants
Connecting an AI assistant, such as ChatGPT or Claude, is optional. Nothing from your account is shared with an assistant until you connect it and allow it.
Some assistant tools answer without a connected account. To search fares, we receive the airports, travel dates, cabin, nonstop preference and currency in the request and send them to Google Flights through our own search service. To check Starlink, we receive the flight number and date, aircraft registration, airline or aircraft type in the request. We use the IP address of these requests only to limit how often they can be made. These requests are not linked to an account, and we do not receive your conversation or the location of your phone.
- What the assistant receives. When it asks, we send the flights you saved that are still to come or underway: flight number, airports, times, status, gate, terminal, delay, the incoming plane and the security wait at departure. We do not send your name, email address, contacts, payment details or the location of your phone.
- What we receive.The name the assistant gives for itself, and the details in each request: when you ask it to track a flight, that flight's number, date and departure airport; when you look up a flight, aircraft or route, the flight number, registration, airports and date you asked about. We do not receive or read your conversation.
- What we store.For each connection: the assistant's name, when it was connected, when it was last used, how many flights it saved that day, and a one-way hash of its access credential. Flights an assistant saves are stored like any other saved flight. We also count each connection's flight, aircraft and route lookups per day, to enforce a daily limit; each count is deleted after two days. When you look up a flight, we may keep the flight and your account identifier for 15 minutes so our aircraft-position service can find a fresh position for it.
- How long. A connection is kept until you disconnect it or delete your account. A connection request that is not answered expires after ten minutes, and a personal link that is never used is deleted after one day.
- Your control.An assistant can read your saved flights and save new ones. It cannot remove a flight or change your account. You can disconnect it at any time in Settings > Assistants, and its access ends at once.
The company that runs the assistant handles what it receives under its own privacy policy.
How we use information
We use this information to:
- authenticate your account and keep it secure;
- find flights, save your tracked flights, and present flight updates;
- operate, troubleshoot, protect, and improve the service;
- understand whether core product features are useful; and
- comply with law and enforce our terms.
We do not use your information for third-party advertising.
Service providers
We disclose information to service providers only when needed to run Lufthaven. These providers process information under their own terms and privacy commitments:
- Apple for Sign in with Apple and App Store transactions;
- the AI assistant you choose to connect, for the flights described under Connected assistants;
- Supabase for authentication and account sessions;
- Cloudflare and Amazon Web Services for API delivery, security, logs, and storage;
- FlightAware and other aviation sources for flight information;
- Google Flights, which receives the fare-search details described under Connected assistants;
- Vercel for website hosting;
- PostHog for app and website product analytics;
- Sentry for app crash diagnostics and user-submitted bug reports; and
- Google-hosted resources when the app retrieves an airline logo.
We may also disclose information when required by law, to protect people or the service, or as part of a business transfer with appropriate safeguards. We do not sell personal information.
Retention
We keep your account record and saved-flight associations while your account is active. Removing a tracked flight deletes its association with your account; the underlying operational flight record may remain as shared aviation data. Deleting your account removes its saved-flight associations and application profile, except where retention is required for security, fraud prevention, billing, or law.
Diagnostic logs and app and website analytics are kept for the limited periods configured with our providers, then deleted or aggregated. Aggregated information that no longer identifies an account may be retained to understand long-term service reliability.
Your choices
- You can remove an individual saved flight inside the app.
- You can disconnect an AI assistant in Settings > Assistants.
- You can delete your account in Settings > Account, or from the account control on the paywall.
- You can request access, correction, or deletion of account data by emailing privacy@lufthaven.app. We may need to verify that the request belongs to you.
- You can clear website cookies or local storage, or use browser privacy controls, to reset or block website analytics identifiers.
- You can manage an Apple subscription in your device's App Store subscription settings. Deleting a Lufthaven account does not itself cancel billing managed by Apple.
Depending on where you live, you may have additional rights to object, restrict processing, receive a portable copy, or complain to a privacy regulator.
Security and transfers
We use technical and organizational safeguards intended to protect information, including authenticated API access and encrypted network transport. No system is perfectly secure, so we cannot guarantee absolute security.
Lufthaven and its providers may process information in countries other than your own. Where required, we use appropriate legal safeguards for international transfers.
Children
The flight tracker is not directed to children under 13, and we do not knowingly collect personal information from children under 13. If you believe a child has provided information, contact us so we can delete it.
Changes
We may update this policy as the service changes. We will post the new effective date here and provide additional notice when a change is material.
Contact
Questions or privacy requests: privacy@lufthaven.app.