Privacy Policy for Jet Lag
Effective date: 19 September 2026 — applies to version 1.9.0 onwards.
Jet Lag is a jet-lag planning app. This policy explains exactly what the app does and does not do with your information. It is written to describe the app’s actual behaviour, not to reserve rights we don’t use.
Two things described below are live for the first time in 1.9.0: the optional flight lookup, and the one-time paid unlock. Earlier builds shipped with both switched off, so the app made no network requests at all — these sections now describe something you can actually reach.
The flight lookup section has also been corrected. It previously named only AeroDataBox as the recipient; the request in fact reaches a marketplace first, which forwards it. Both are now named, because the company that receives your data is exactly the thing a privacy policy exists to tell you. That marketplace is RapidAPI as of 1.9.0 — it was briefly API.Market during development, and no build carrying that gateway was ever released.
The short version: Jet Lag has no accounts and no servers. Everything you enter — your trips, your flights, your sleep times — stays on your device. Two things do leave it: a flight number and date if you tap “Look up”, and anonymous counts of which screens you use, which you can switch off.
Information stored on your device
The app stores the following locally, on your device only:
- Your sleep preferences — your usual bedtime and wake time, your home time zone, and whether you want melatonin and caffeine guidance included in your plans.
- Your trips — trip names, and for each flight the origin and destination airports and the departure and arrival times you entered.
- App state — whether you’ve completed the intro, whether your free trip has been used, and whether you’ve purchased the paid unlock.
This information is held in the app’s private storage. It is not uploaded, backed up to us, shared, or sold. We never receive it, because there is no “us” on the receiving end: the app has no server and no account system.
We are aware that sleep times and melatonin or caffeine preferences are sensitive. That is precisely why they never leave your device.
To delete all of it, uninstall the app, or use your device’s “clear app data” option on Android.
Information sent off your device
Flight lookup (optional)
If you type a flight number and tap Look up, the app sends that flight number and the departure date off your device in order to fetch the airports and scheduled times.
Two companies are involved, and you should know both. The request goes to
RapidAPI, an API marketplace, at aerodatabox.p.rapidapi.com. RapidAPI
passes it on to AeroDataBox, the flight schedule service that actually
answers it. We hold an account with RapidAPI rather than with AeroDataBox
directly, so RapidAPI is the company your request reaches first.
- This happens only when you actively tap “Look up”. It never happens in the background.
- Nothing else is sent — no identifier, no account, no other trip data, and nothing about your sleep preferences.
- As with any internet request, RapidAPI receives your device’s IP address, and may pass it on.
- The feature is entirely optional. You can enter every flight by hand and the app never contacts the network at all.
RapidAPI’s and AeroDataBox’s own privacy terms govern what each of them does with the requests they receive. We have no control over either.
Anonymous usage data (you can turn this off)
The app records which screens get used, so I can see which parts of the app help and which get abandoned. It is sent to PostHog, an analytics service, and stored on their European servers.
What is recorded is a list of plain event names, and nothing else:
- that onboarding was completed
- that a trip was created, or that a plan was opened
- that the upgrade screen appeared, and whether a purchase completed, was cancelled, or failed
- that a flight lookup succeeded or failed
What is deliberately never recorded, and this is the part that matters:
- Nothing you type or choose. No trip names, no airports or routes, no dates, no flight numbers, no bedtimes or wake times, no time zone.
- No name, email, account, or advertising identifier.
- No location, and no screen recordings.
Besides its name, every event carries a random ID for this install. The first time the app launches, PostHog generates an anonymous ID and stores it on your device, so it can tell that events came from the same install without knowing who you are. It contains nothing about you — it isn’t your name, your account, or an advertising identifier, and nothing links it back to you. Uninstall the app, or clear its data on Android, and the next launch gets a brand new one; nothing connects the old ID to the new one. Each event also carries a session ID (random for that app session), your screen size, and the app’s own version — technical details about the request, not about you.
The events carry no properties at all — not even indirect ones like how many flights a trip has, because that is still a fact about your trip. An event says “a trip was created”, never which trip. Two people with completely different itineraries send identical events, apart from each install’s own random ID.
As with any internet request, PostHog receives the IP address you connect from. No profile is built against it.
To turn it off: open the You tab and switch off Share anonymous usage. Nothing further is sent from that moment. Everything in the app keeps working exactly the same — there is no feature behind this, and you are not asked again.
PostHog’s own privacy terms govern what they do with what they receive.
Purchases
The paid unlock is processed by Apple’s App Store or Google Play, not by us. Payment happens inside the store’s own flow. We never see or receive your payment details, card information, billing address, or store account identity. The app only ever learns whether a purchase exists.
Apple’s and Google’s privacy policies govern those transactions.
What the app does not do
- No accounts. There is nothing to sign up for and no password.
- No advertising or attribution SDKs, and no cross-app tracking. The app contains no advertising, attribution, or crash-reporting SDKs, and nothing that follows you between apps or websites. It does include one analytics tool — see “Anonymous usage data” below, including how to turn it off.
- No advertising, and no sharing of data with advertisers.
- No sale of personal information.
- No location access. The app never requests or reads your device location.
- No contacts, photos, calendar, microphone, or camera access.
- No push notifications from a server. Reminders are scheduled locally on your device by the app itself and are not sent from anywhere.
Permissions
Android apps declare permissions both for their own features and by inheriting them from the libraries they use. Below is the complete picture, because a partial list isn’t an honest one.
What the app uses directly
- Internet / network state — for the optional flight lookup described above. With no lookup, the app makes no network requests at all.
- Notifications — to show your plan’s reminders at the right times, and to update the app’s icon badge.
- Vibration and wake — so a reminder can alert you when your device is idle.
- Run after device restart — so reminders you’ve already scheduled survive a reboot and still fire. Used only to re-register those reminders.
- Billing — to offer the one-time paid unlock through Google Play. Payment is handled entirely by Play; see “Purchases” above.
Inherited from libraries, and unused
The notification library we use bundles Google’s Firebase Cloud Messaging and a launcher-badge helper. These add a number of permissions — badge permissions for specific phone launchers (Samsung, Huawei, Sony, HTC, Oppo and others), Firebase messaging permissions, and a Google Play install referrer permission.
The app does not use the server-push capability these enable. It never registers for push notifications and holds no push token. Firebase is not configured in this app — the configuration file that would activate it is deliberately absent, so Firebase does not start up and does not contact Google. Every reminder you receive is scheduled locally on your device by the app itself. The badge permissions are used only to update the number on the app’s own icon.
We list these because they are visible to anyone who inspects the app, and we would rather explain them than have you wonder.
What the app never requests
No location, contacts, photos, calendar, microphone, camera, or storage access.
Children
Jet Lag is not directed at children and we do not knowingly collect information from children.
Medical disclaimer
Jet Lag provides general wellness guidance about sleep, light exposure, melatonin, and caffeine timing. It is not medical advice and is not a medical device. Talk to a doctor if you have a sleep disorder, are pregnant, or take any medication.
Changes to this policy
If the app’s data practices change, this policy will be updated and the effective date above revised. Material changes will be noted in the app’s release notes.
Contact
Questions about this policy or the app’s handling of information:
uzairkhan@gmail.com