App Privacy Policy

SG-JB Transit

Overview

SG-JB Transit is a free, open public transit tracker. We are committed to protecting your privacy. This policy explains what information is collected when you use the SG-JB Transit app and how it is handled.

No Account or Profile Data

You can use SG-JB Transit without creating an account or submitting your name, email address, phone number, or similar profile information.

Accounts (Optional)

You can use the app without an account. If you sign in with Apple, Google or a passkey, we keep an account with your saved stops and routes, the name and email Apple or Google shares (Apple's can be a private relay address), the public part of your passkeys (the private part never leaves your device, password manager or security key), the model of each device you sign in on, and when you last signed in. If you give the app a name to greet you by, the account keeps that name instead. The account is shared with Malaysia Transit, our app for the rest of Malaysia, and kept in its Firebase project (Cloud Firestore): signing in with Apple or Google reaches the same account in both apps, and each app keeps its own saved list. The app keeps its sign-in in the device's secure storage; it also keeps a copy of the account's details so Settings can show them. You can delete the account in Settings → Account at any time: it is deleted for both apps, with all of this.

Stored on Your Device

The app keeps a few things on your phone or tablet: your language, the region the map shows (Singapore, Johor Bahru or both) and display choices, the name you'd like to be greeted by, your saved stops and routes, route lists, timetables, Singapore departure estimates, the cross-border services and fare tables for using it offline, how long you have used the app and when the "buy me a matcha latte" reminder last appeared (so it shows at most once every two days), and whether a matcha latte payment is still awaiting approval. It also notes whether you've seen the welcome tour, each how-to tip and each notice, so they show only once. Apart from what an account keeps (above), they stay on your device, and deleting the app removes them.

Location

If you allow it, the app uses your location to show where you are on the map, suggest the region you're in, find stops and the border crossing near you, and start a journey from where you are. The region is worked out on your device. For nearby stops, the nearest crossing and the journey planner, your position is sent to our server (and, for journeys, on to Google Maps Platform) to answer that request. You can turn off location access at any time in your device settings.

Arrival Alerts and Live Activities

When you track a bus, the app sends our server the route or routes you're waiting for, your stop, the stop where you get off (if you choose one, or the one your planned journey uses), which alerts you want, your language and this device's notification tokens. The server uses them only to send that trip's alerts and Live Activity updates, through Apple's push service on iPhone and iPad. While the bus is tracked, it also keeps them in Firebase, so that a server restart doesn't end tracking. Tracking ends after 2 hours at most; the server then deletes the tokens at once, and the rest about 15 minutes later. The app keeps the tracked bus on your device until tracking ends. Nothing is sent unless you track a bus.

Technical Request Data

When the app calls our API, we process limited technical metadata for service reliability, security, and usage analytics:

We use this information to monitor API health, understand service usage, and reduce abuse. We do not use it to build personal user profiles. The latest requests are held in memory only; what we save is totals per hour, day, endpoint, region and referring website.

Transit Data

Public transit data in SG-JB Transit comes from official open data and the operators: LTA DataMall, from Singapore's Land Transport Authority, for Singapore; Malaysia's official open data platform, data.gov.my, for Johor's BAS.MY buses and KTM trains; Bas Muafakat Johor's live vehicle tracking; and Causeway Link's cross-border routes. Our server fetches it, so the app never contacts these sources directly. Route and stop parameters sent by the app are used to return the transit information you requested.

Payments

If you buy a matcha latte in the app, Apple (App Store) or Google (Google Play) handles the payment. SG-JB Transit never sees your card or account details. The app only learns which item you chose and whether the payment went through, so it can thank you, and it doesn't send this to our server.

Third-Party Services

SG-JB Transit uses the following third-party services:

These services have their own privacy policies. We recommend reviewing their respective policies for more information.

Cookies and Tracking

The app does not use cookies, advertising identifiers or analytics tools, and it does not track you across other apps or websites.

Children's Privacy

SG-JB Transit does not knowingly collect any information from children. Our service is freely accessible to all users without requiring any personal data.

Changes to This Policy

We may update this privacy policy from time to time. Any changes will be reflected on this page with an updated revision date.

Contact

If you have any questions about this privacy policy, please contact us through our website at

techmavie.digital

Last updated: 3 November 2026