Privacy Policy
Who we are
rach is developed by an individual developer, contactable at mitraamiel@gmail.com. rach is not affiliated with, endorsed by, or sponsored by any airline.
Data on your device
rach stores the following on your device only, included in your phone's normal backup (iCloud on iOS, Google on Android) so it survives a phone replacement the same as photos or notes:
- Your roster (flights, duties, off days)
- Your crew diary entries — encrypted at rest on the device
- Your pre-flight checklist
- Places you've saved for offline viewing
- Your settings — home currency, per-diem rates you've entered, alarm preferences
Your profile name, birthday, and crew role are kept in your device's secure keychain (Keychain on iOS, Keystore on Android) for extra protection.
No accounts
rach has no user accounts. We cannot see, access, or recover your data; it lives on your device. Requests the app makes to our server carry only a random per-install identifier — not your name, email, or anything tied to your identity — used solely to rate-limit the service. Reinstalling the app generates a new one.
Roster import
Roster text or files you submit for import are sent to our server (hosted on Cloudflare), which uses Anthropic's Claude AI to extract your schedule, and are processed, not retained: they are not stored, logged, or used for any other purpose — including AI training — after the parse completes. Nothing is saved in the app until you review and confirm the result. Imports are limited to a small number per day and per month per install to protect the service; the app tells you when a limit is reached and when it resets. Importing is always free.
Layover guides
To build the layover screen for a city on your roster, the app sends that layover's city name, airport code, and hotel name/address (as printed on your roster) to our server. The server looks up nearby places and ratings (Google, Geoapify), weather (Open-Meteo), exchange rates, and a destination photo (Pexels) around that location. These lookups carry no name or identity — crew at the same hotel receive the same shared, cached guide, and the cached guide itself stores no identifier at all. Guides are only built for layovers on your own roster, shortly before the trip or when you open one.
Flight number lookup
Typing a flight number while adding a duty manually looks up its route and times online (AirLabs) to help fill in the form. Only the flight number is sent — nothing else about you or your roster. The lookup is optional and only runs when you're online.
Maps & directions
The map screen requests map tiles from OpenStreetMap for the area you're viewing. Tapping "directions" hands a place's coordinates to whichever maps app you choose. Neither carries your name or roster — just a location, the same as looking it up in any maps app.
Purchases
Premium purchases are processed by Apple or Google. Entitlements are managed by RevenueCat under an anonymous device identifier — not your name, email, or any account. "Restore Purchases" re-activates your premium features on a new device using your Apple ID or Google account purchase history.
Crash reports
If crash reporting is enabled in a future version, rach may send crash and performance diagnostics to Sentry. These reports are scrubbed of personal data: no name, no roster content, no diary content, and IP address storage is disabled. The current version sends no crash reports.
Your controls
Settings → More gives you these controls at any time: "Export roster & settings" and "Export crew diary" (as plain text, via your device's normal share sheet) and "Delete all data" (removes everything from this device — cannot be undone). All act on-device, since there is no server copy to reach.
Children
rach is not directed at children and does not knowingly collect data from children.
Your rights (GDPR / Philippine Data Privacy Act)
Because your data lives on your device and rach has no accounts, your rights to access, correct, and erase your data are exercised directly through the app's own Export and Delete controls — there is no server-side copy of your schedule or diary to request or erase, beyond the ephemeral roster-parse request described above. Shared layover guides contain no personal identifiers to erase.
Changes & contact
We may update this policy as rach's features change. Material changes will be reflected here with a new effective date. Questions: mitraamiel@gmail.com.