Tracking your flights
You can keep recording GPS while you fly. The plane has no effect on the GPS receiver inside your phone — it talks directly to satellites and works at 30,000 feet just as well as on the ground. The only trick is making sure the tracker keeps running with the phone in airplane mode.
Follow the steps for your tracker below. The whole setup takes about two minutes and only needs to be done once per phone — after that, every flight is recorded automatically.
⚠️ Crew authority always wins. Cabin crew may ask you to fully power the phone off, leave it stowed, or disable Wi-Fi at any point during the flight — that overrides anything in this guide. Always follow their instructions. The flight track will fill in from whatever GPS your phone managed to record before / after their request, and the auto-detected flight overlay (great-circle arc between the two airports either side of the GPS gap) will patch the rest.
When to actually flip Airplane Mode. You don't have to do it at the gate or even at boarding. The realistic deadline is just before the doors close and the aircraft starts taxiing, or the moment the crew explicitly tells the cabin to "set devices to flight mode now". Airplane Mode actually saves battery — it shuts down the cellular radio, which is the biggest power drain on a phone. GPS alone draws very little. So there's no battery cost to waiting; you're just keeping cellular alive a bit longer while it's still useful on the ground.
iPhone — OwnTracks
Each step says explicitly where to do it: in the iOS Settings app, or inside OwnTracks. Don't get them mixed up — the OwnTracks-app "Settings" tab is unrelated to the iOS Settings app where iOS-level permissions live.
One-time setup (do this once per phone, before your first flight)
- Open the iOS Settings app (the grey gear icon on your home screen — not OwnTracks).
- Go to Privacy & Security → Location Services → OwnTracks and pick Always. Anything less and iOS will pause GPS after a minute or two when the app is backgrounded.
-
Go back to the top of Settings and open General → Background App Refresh. Make sure the global switch is on AND OwnTracks specifically is on in the list below.
-
Open the OwnTracks app (the dark blue icon).
- Confirm there's a recent green dot on your map and the status shows points are being sent.
- Tap the green ▲ icon in the corner to send a test point and check it lands in your Where Is Tereza? trip page.
That's the setup. You won't need to touch any of these again.
On the day of the flight
-
Just before taxi (or when the crew asks), turn on Airplane Mode in Control Centre (tap the plane icon). Cellular goes off; the GPS chip itself keeps running — iOS doesn't disable it with Airplane Mode. No need to do this at the gate or during boarding; doing it later just saves battery.
-
Re-enable Wi-Fi manually in Control Centre (tap the Wi-Fi icon — it stays togglable even while Airplane Mode is on). Skip this if cabin crew asked everyone to keep Wi-Fi off. When it's allowed, OwnTracks uses it to upload buffered points the moment in-flight Wi-Fi appears.
-
In flight, sit by a window if possible. GPS needs a clear sky view; an aisle or middle seat picks up satellites only intermittently and OwnTracks logs gaps. Either way, OwnTracks keeps recording — when you have no internet it queues points locally, and dumps them as soon as it sees Wi-Fi or cellular.
-
When in-flight Wi-Fi is offered, connect (most carriers have a free messaging-only tier that's plenty for OwnTracks's tiny payloads). Buffered points start streaming live.
-
After landing, turn Airplane Mode off. Anything still buffered uploads within seconds — the missing flight section appears on your trip map shortly after.
Android — GPSLogger / Overland / OsmAnd
Same idea: each step calls out whether the action is in Android Settings (the system app) or inside the tracker app.
One-time setup
- In Android Settings (system gear icon):
- Settings → Apps → [your tracker] → Permissions → Location. Pick Allow all the time. "Only while using the app" will pause GPS the moment the screen sleeps.
- Settings → Apps → [your tracker] → Battery. Switch from "Optimised" to Unrestricted. Battery optimisation will otherwise kill the tracker mid-flight to "save power".
-
(Samsung / OnePlus / Xiaomi only) Settings → Battery → Background usage limits → Sleeping apps. Make sure your tracker isn't on that list.
-
Inside the tracker app:
- Confirm logging is running (most apps show a green status or a per-second point counter).
- Verify your endpoint URL is set correctly.
- Send a test point and check it lands in your Where Is Tereza? trip page.
On the day of the flight
-
Just before taxi (or when the crew asks), enable Airplane Mode (swipe down → tap the plane icon). Cellular goes off; the GPS receiver stays on — Android doesn't disable GPS in airplane mode any more than iOS does. There's no benefit to flipping it at the gate; doing it later just saves battery.
-
Re-enable Wi-Fi manually if you want to use in-flight Wi-Fi (and crew haven't asked everyone to keep it off). Same Control Centre toggle as iOS — Wi-Fi stays usable while Airplane Mode is on.
-
In flight: window seat preferred. The tracker keeps writing points to its local log regardless of internet.
-
Upload behaviour per app:
- GPSLogger opens automatically when it sees Wi-Fi or cellular and POSTs the batched log to your endpoint.
- Overland queues points and uploads them in a single batch on reconnect.
-
OsmAnd Online Tracker logs locally, uploads when online — same pattern.
-
After landing, Airplane Mode off → buffered points stream up within seconds and the flight section fills in on the map.
Garmin® inReach® (satellite)
Garmin® inReach® devices have their own satellite uplink — they don't need phone GPS, phone cellular, or in-flight Wi-Fi at all. The device talks directly to the Iridium satellite network, so it works at 35,000 feet the same way it works in the middle of the Sahara. That makes inReach® ideal for flights where you want live tracking independent of whatever the phone is doing:
- Set tracking interval to 10 minutes (longer = better battery).
- The MapShare feed updates throughout the flight.
- Where Is Tereza? polls MapShare every few minutes — your flight appears in real time.
What to expect on the map
- Points come through every few minutes, not every second — a flight segment will look like a series of dots from departure airport to arrival airport, mapped against the trip's other transport modes.
- Flight points are automatically classified as Flying based on altitude (≥ 1500 m) and speed (≥ 200 km/h).
- Distance and duration are computed from the GPS points, not the airline's official figures, so they may differ slightly.
- The route on the map is drawn between the points the tracker managed to record. Window seats with continuous in-flight Wi-Fi give the cleanest line; aisle seats with only "before takeoff" and "after landing" GPS will show a single straight line connecting the two airports.
Why some flight points have huge "accuracy" numbers
Sometimes (especially on airlines without Wi-Fi) you'll see your
phone log positions with accuracy = 50,000+ metres. That's the
phone's coarse cell-tower or Wi-Fi triangulation kicking in when GPS
isn't producing readings — it's basically a guess based on what
the device "remembers" about its last known network area.
Where Is Tereza? automatically discards these (anything with accuracy > 1 km is dropped) so they don't pollute the map. Real satellite GPS readings — even at altitude — keep accuracy well under 100 metres.
Tips for cleaner tracking
- Charge the phone before boarding. GPS in Airplane Mode is more battery-friendly than cellular, but a full flight + GPS still uses meaningful power.
- Use a window seat when you can. The single biggest factor for GPS quality on a plane.
- Don't put the phone in a pocket against your body. GPS antennas are usually at the top of the device — leaving the phone on the tray table or in a seatback pocket gives better reception.
- Open the tracker app at the gate to confirm it's running. iOS / Android sometimes pause background apps if they haven't been foregrounded for a while.
Auto-detected flight overlay
Even if your phone missed parts of the flight (no Wi-Fi + middle seat + GPS dropouts), Where Is Tereza? automatically draws a great-circle arc between the departure and arrival airports. You don't have to enter anything — no flight number, no date — the detection runs from your GPS data the moment the trip is opened.
How it works (two passes, fully offline):
-
Mode-based pass (primary). The transport classifier already tags each GPS point as
flyingwhen its altitude is ≥ 1,500 m and speed ≥ 200 km/h. We find every contiguous run of flying points longer than 10 minutes, then scan ±30 points / ±30 min around each end of the run for the GPS sample that's closest to an airport within 60 km. Those become the departure and arrival anchors. This catches cases where the phone recorded clean GPS during cruise but the on-the-ground approach is messy or fragmented. -
Gap-based pass (fallback for full-airplane-mode flights). We scan the trip for GPS gaps longer than 30 minutes that also span more than 50 km. The last GPS point before the gap and the first one after are each snapped to the nearest airport within 20 km.
-
If both endpoints land at airports, a great-circle arc is drawn between them with 64 sampled waypoints — that's the smooth curved line you see on the map. Altitude is interpolated as a sin-curve climb-cruise-descent profile peaking at ~11,000 m (it's not the real flight level — but it makes the 3D drone replay look convincing).
-
If only one endpoint matches an airport, a straight chord between the two GPS points is drawn instead.
The arrival window also reaches 15 minutes past the last in-air point, so the noisy descent / taxi GPS that arrives in batches when the phone reacquires signal — the kind that otherwise scribbles parallel zigzag lines next to the runway — gets cleanly replaced by the synthetic arc.
Where to see it:
- Open the trip in admin → Flights ✈ to see the detected list, with origin / destination airport, distance, duration, and the detection method (mode-run or gap) for each leg.
- The same arcs are drawn on the public trip map automatically, rendered as a dashed gold line distinct from ground transport.
- In 3D drone replay, the camera zooms out to a continental bird's-eye view (≈ 7.5 zoom, 40° pitch) for the duration of the flight segment, then smoothly descends back to terrain-following for the ground arrival. So flights actually feel like flights.
The combined gap-and-airport gate keeps fast trains, long drives, and other ground transport from being mis-detected — the train from Prague to Vienna takes 4 hours and covers 300 km but neither endpoint is at an airport, so it stays a ground line.
Coverage notes:
- The airport database covers all ~28 000 airports with both IATA and ICAO codes — every commercial flight in the world should resolve.
- Distance is computed along the geodesic (shortest path on a sphere), so it's accurate to within a few percent of the airline's published figure.
- Altitude is interpolated as a smooth climb-cruise-descent profile peaking at ~11 000 m. We don't claim to know the actual flight level — but it makes the 3D drone replay look right.
Garmin® and inReach® are registered trademarks of Garmin Ltd. or its subsidiaries. This page is not affiliated with or endorsed by Garmin.
Need help? Contact support · Where Is Tereza?