Steward

Privacy policy

Last updated 7 November 2026

Steward: Live Flight Tracker is an Android app made by Marko Zanoski. It watches the flights you follow and tells you when something changes. To do that it needs a small server of its own. This page says what stays on your phone, what goes to that server, who helps run it and how long anything is kept.

Who is responsible

Marko Zanoski, Austria, is the controller for the data described here. Contact: marko@zanoski.com.

Promises

  • No accounts and no sign in.
  • No ads and no advertising identifiers.
  • No analytics, crash reporting or tracking libraries.
  • No AI service.
  • No selling of data. What the server keeps is used only to watch your flights, and goes only to the services named below.

What stays on your phone

  • Your calendar, when Steward reads it. Gmail puts flight bookings into Google Calendar. If you allow calendar access, which Steward asks for only after you tap Find in my calendar or Look in my calendar, it reads events from yesterday to about eleven months ahead on the phone: their title, notes, place and time. It keeps only events that say flight, and from those only the flight number and the day. Nothing from your calendar leaves the phone. When you tap Add on a found flight, that flight's number and day are sent to the server like a flight you typed. Turn it off in Settings with Look in my calendar.
  • Flights written into your calendar. Keep flights in my calendar is off until you turn it on. Then Steward writes one event per flight you follow into a calendar on your phone, keeps it up to date and removes it when you stop following the flight. Turning the switch off takes every event it wrote back out. Steward writes these on the phone; if that calendar syncs to an online account, your calendar app sends the event there like any other.
  • Boarding passes. When you share or open a PDF, a Wallet pass or a screenshot with Steward, the barcode is read on the phone. Steward keeps only the barcode text, which holds the name, booking code and seat printed on the pass; the file itself is not kept. The pass never leaves the phone. Only the flight number, day and seat it finds are sent, to follow that flight.
  • Your trips and Passport. A copy of every flight you follow, so the app works offline and Passport can count the flights you have flown.
  • Your settings. Alert switches, the airport times you set, the look and the flights you marked Not mine.

Steward is left out of Android's cloud backup and out of the copy to a new phone on purpose, because the install key and your boarding passes belong to this phone.

What leaves your phone

The app talks to one server, api.steward.zanoski.com, over HTTPS. It sends:

WhatWhy
An install id and its key, made by the server the first time the app opensSo the server knows which phone is asking. The server stores only a one way hash of the key.
A device hash: a one way hash of Android's id for this app on this phoneSo a reinstall counts as the same phone, and the phones on a plan can be counted. Android's id itself never leaves the phone.
A push token from Google Firebase Cloud MessagingSo alerts can reach your phone.
The flights you look up and follow: flight number and dayTo find the flight and watch it for you.
The seat you add to a flight, up to 8 charactersKept with your trip on the server. It is never shown on a share link.
The Google Play purchase token, the plan, and a random account number made on your phone (Play calls it the obfuscated account id)To check your subscription with Google Play and to keep a purchase tied to the person who bought it.

Like any connection on the internet, the server sees your IP address. It is used only in memory, to allow at most 5 new installs per address per hour, and is forgotten within the hour. It is not written to the database, and the server logs carry no install key and no account number.

Steward never asks for your contacts, your camera or your microphone, and never reads Gmail itself. Your rough location, if you allow it, stays on the phone (see below).

Leaving for the airport

The reminder to leave for the airport is worked out on the phone from the flight's departure and the two times you set in Settings: Be at the airport and Time to the airport.

If you turn on From where I am, Steward asks for your rough location (not your precise location, and never in the background). On the day of a flight, while Steward is open, it takes one rough fix and estimates the drive to the airport from the straight line distance. The estimate can only move your leave reminder earlier. Your location is used on the phone only, kept there for at most 6 hours, and never sent to our server or anyone else. Turn it off in Android's settings for Steward at any time.

Directions opens your own maps app with the airport as the destination, and that app works under its own privacy policy.

Share links

Share ETA makes a link you can send to anyone. Anyone who has the link can see the flight on a web page, with no app and no account: the flight number, the route, the times, the gate and terminal, the baggage belt, the status and the aircraft type. It never shows your seat, your name or anything about your phone. The page uses no cookies and loads nothing from outside the server.

A link ends by itself 6 hours after the flight reaches the gate, or 48 hours after its departure at most. To end it sooner, tap Stop sharing the live link on the flight, or remove the flight from Steward: the link is deleted with it.

Who helps run Steward

  • AeroDataBox gives the flight data. The server asks it about a flight by its number and day, about the aircraft flying it, and asks to be told when flights with that number change. AeroDataBox gets nothing about you: no install id, no seat, no push token, and one request serves everyone who follows the same flight.
  • Google Firebase Cloud Messaging carries the alerts to your phone: your push token and the flight news of the alert, never your seat. Steward uses only this part of Firebase: no Firebase Analytics and no Crashlytics.
  • Google Play takes the payment. The server checks your purchase token with Google Play, and Google Play tells the server when a subscription renews, ends or is refunded.
  • Railway hosts the server and its database, in its EU West region in Amsterdam, the Netherlands.

Railway and Google are based in the United States. Where their staff or systems can reach the data from outside the EU, the transfer is covered by the EU Standard Contractual Clauses in their data processing terms, or by the EU US Data Privacy Framework where the company is certified under it.

How long it is kept

  • A flight you follow is deleted from the server 90 days after the flight, with its share link. Remove it in the app and it goes at once.
  • An install that has not been seen for 400 days, and holds no live subscription, is deleted with its trips and links.
  • A purchase record is deleted 400 days after the subscription ended, once no phone holds it.
  • Flight data that nobody follows is deleted after 7 days. It holds no personal data.
  • What is on your phone stays until you remove it or uninstall the app.

Legal bases

Watching your flights, sending alerts and checking your subscription: our contract with you (GDPR Art. 6(1)(b)). The install limit per address and the check that a purchase belongs to its buyer: our legitimate interest in keeping the service safe from abuse (Art. 6(1)(f)).

Payments

Steward is free to download, and using it needs a subscription bought through Google Play. Google handles the payment under its own privacy policy. We receive the purchase token to check the subscription, and no card details.

Permissions

Every permission Steward has, and why:

  • Internet and network state: to reach the server.
  • Notifications: for alerts and the live update on the lock screen. On Android 16 and newer, the promoted notification permission lets the live update sit in the status bar.
  • Alarms and reminders (exact alarms): so check in, leave and boarding reminders come at the right minute. Asked for in the app.
  • Run at startup: to set the reminders again after a restart or an update.
  • Receive push messages and keep the phone awake briefly: used by Firebase to deliver an alert.
  • Google Play billing: for the subscription.
  • Read calendar: Find in my calendar, as above. Asked for only after you tap it.
  • Write calendar: Keep flights in my calendar, as above. Asked for only when you turn it on.
  • Rough location: From where I am, as above. Asked for only when you turn it on, used on the phone only.

This website

This site uses no cookies, no analytics and no outside fonts or scripts. It is hosted on Vercel, which keeps short server logs to run and protect the service.

Children

Steward is not directed at children.

Deleting your data

In the app, open Settings, then Delete my data. The server erases this phone at once: its trips, seats, share links, push token and install, and the purchase record when no other phone of yours holds it. Then the app takes out the calendar events it wrote, clears everything on the phone and closes. There is no waiting period and no backup copy kept by us.

Remove a single flight in the app and the server deletes it and its share link at once. If you uninstalled Steward before deleting, what the server keeps is deleted by itself 400 days after the phone was last seen; to have it deleted sooner, write to marko@zanoski.com with the number and day of a flight you followed or a share link, so we can find the install.

Deleting your data does not cancel a subscription. Cancel it in Google Play, which keeps its own purchase records under its own policy.

A copy of your data: Settings, then Download my data saves everything the server keeps about your phone as a JSON file.

Your rights

Under the GDPR you can ask for a copy of your data, a correction, deletion, a limit on its use or a copy in a common file format, and you can object to processing based on legitimate interest. The copy and the deletion are in the app itself (Settings, Your data); for the rest, or if you prefer email, write to marko@zanoski.com and you get an answer within one month. You can also complain to the Austrian data protection authority, Datenschutzbehörde, Barichgasse 40 to 42, 1030 Wien (dsb.gv.at), or to the authority where you live.

Changes

If this policy changes, the new version will be posted on this page with a new date.

Credits

Flight data comes from AeroDataBox. The map uses Natural Earth, in the public domain. The type is Archivo, under the SIL Open Font License; its license text ships inside the app.

Contact

Questions about privacy: marko@zanoski.com