Privacy policy
This policy applies to the website catch-mobile.info, the web app app.catch-mobile.info and the Catch app for Android. We process as little data as possible – Catch records what, where and when something happened on a line – never who. This is a translation; the German version is legally binding.
1. Controller
[First and last name]
[Street and number, postcode city]
E-mail: contact@catch-mobile.info
2. Hosting and server logs
The website, web app and server run on a server operated by Hetzner Online GmbH, Industriestr. 25, 91710 Gunzenhausen, Germany (data processing agreement under Art. 28 GDPR). When you visit, the web server stores technically necessary log data: IP address, date and time, requested address, status code, browser identifier. Purpose: secure operation and preventing abuse. Legal basis: Art. 6(1)(f) GDPR. Logs are deleted after 14 days at the latest.
3. Website catch-mobile.info
The website sets no cookies, uses no analytics or advertising trackers and loads no third-party content (only exception: the map page loads map images from OpenFreeMap, see section 7); fonts are served from our own server. The live numbers shown are anonymous totals. Links to other sites (e.g. Ko-fi, see section 10) are plain links that only load something when you tap them.
Storage on your device (app and web app)
The app and the web app (app.catch-mobile.info) store some information in your device’s or browser’s storage (e.g. local storage, IndexedDB, service worker cache) so that the features you use work: your sign-in (Firebase, see section 4), language and settings, saved and recently searched places (see section 7), which tutorials you have already seen, your saved trips (so you can see them without a connection; deleted when you sign out), downloaded offline timetables, the widgets’ data (for the trip widget your saved trips, for the “Just reported” widget your last location from the start screen, rounded to about 1 km – both only on the device; the trip widget is cleared when you sign out) and – in the web app – the program files for faster loading. What of this is sent to our server is described in the respective sections. We do not use cookies, analytics or advertising trackers. Because this storage is strictly necessary for the features you explicitly use, it does not require consent (Section 25(2) no. 2 TDDDG) – which is why there is no cookie banner. You can delete this information at any time: by signing out, by clearing the site data in your browser or by uninstalling the app.
4. Account and sign-in (Firebase Authentication)
You need an account to report, confirm and use live tracking. Sign-in is provided by Firebase Authentication from Google Ireland Limited, Gordon House, Barrow Street, Dublin 4, Ireland. Your e-mail address, a password hash, a display name and a user ID are processed. Data may be transferred to Google LLC in the USA; Google is certified under the EU-US Data Privacy Framework. Legal basis: Art. 6(1)(b) GDPR (terms of use).
5. Data Catch stores on our server
- Account: user ID, e-mail address, display name, language, time of registration and last use, and when you accepted the terms of use.
- Tips (reports): kind (delay, cancellation, crowding, disruption or ticket check), line, direction, the two stops (incl. their coordinates), time, selected tags (e.g. “very full”). Other users see reports without names or accounts. Free text and photos are deliberately not possible.
- Flags: if you flag a tip (“Report content”), we store the tip, your user ID, the reason you chose and the time, so that we can review the content and prevent abuse. Flags are deleted together with the tip or your account.
- Feedback: if you send us feedback (app → Profile → Send feedback), we store the category, your text, the optional rating, app version, platform and language. If you are signed in, the feedback is linked to your account; we only see your e-mail address if you agree to a reply by e-mail. Please don’t include data about other people.
- Confirmations: your vote (“still there” / “gone”) on a report.
- Live tracking: line, time window and your section (stops) while tracking is active.
- Saved trips (trip companion): if you tap the bookmark or “Start trip” on a connection, we store this connection – start and destination (for addresses with coordinates), the rides, times and platforms –, your settings for reminders and get-off alarms, and which notices we have already sent you. This is the only way Catch can guide you with live data (reminder, platform change, delay, get-off alarm) while the app is closed. For the live data our server asks the timetable service about the individual rides – without account data (see section 7). For the refund hint (“you may get money back” from 60 minutes of delay by train) we also keep the scheduled arrival of the connection you originally saved; the details for a claim are only put together on your device and are not sent anywhere by Catch. The trip is deleted when you end it, at the latest 7 days after arrival, and immediately when you delete your account.
- Sharing a trip: if you tap “Share trip”, we create a random link for this trip (e.g. app.catch-mobile.info/share/…). Anyone who has the link can see the trip live – start, destination, rides, times and platforms – without signing in; the page shows no name, e-mail or account details and is not indexed by search engines. You decide whom to send the link to (via your phone’s share menu – we do not see the recipients). The link stops working when you tap “Stop sharing” or end the trip, and at the latest 2 hours after arrival. Legal basis: Art. 6(1)(b) GDPR.
- “Your impact”: in your profile we show how many of your reports were confirmed and how many other people received a live alert because of them. For this we only count stored data (reports, confirmations, alerts) – nothing about the other people is shown to you.
- Commutes (commuter mode): if you save a route (e.g. “Home → Work, weekdays 7:30”), we store its name, start and destination – a stop or an address with coordinates, so e.g. your home or work address –, the weekdays, the time, the kinds of tips you chose and the reminder setting, plus the most recently computed connection and when we reminded you. This is the only way Catch can watch the route and remind you while the app is closed. For planning, start and destination are sent – without account data – to the timetable service (see section 7). At the times of your route Catch creates automatic live trackings for the lines of the connection. The route is deleted immediately when you delete it in the app (Profile → My commutes) or delete your account; the automatic trackings one day after they end.
- Verified accounts and closed beta (Kickstarter backers): if you backed Catch on Kickstarter, Kickstarter gives us a backer report with your e-mail address and your reward once the campaign has ended. We use it only to give you what you were promised. We upload the report once and keep, per backer, only a fingerprint (keyed hash) of the e-mail address and the name of the reward – not the address itself, your name or your postal address. If you use Catch with the same e-mail address and have confirmed it (the confirmation e-mail is sent by Firebase, see section 4), we mark your account as verified and store when, how (backer list, one-time code or by hand) and for which reward. If you redeem a one-time code instead, we store that this code was used by your account. Verified accounts can see the information and links for the closed beta. We delete the fingerprints when they are no longer needed for the beta; the “verified” mark is deleted together with your account. While Catch is in closed beta, the app sends your sign-in with every request so that the server can check whether your account may use Catch; nothing extra is stored for this. Legal basis: Art. 6(1)(b) GDPR (providing the reward).
- Device token: an identifier of your device for push notifications.
The purpose is operating Catch (showing reports, computing statistics, sending alerts) and preventing abuse (e.g. limiting reports per account). Legal basis: Art. 6(1)(b) and (f) GDPR.
Retention
- Reports are deleted after 365 days.
- Live trackings are deleted one day after they end.
- Feedback is deleted after 12 months at the latest, usually earlier once it has been dealt with.
- E-mails you send us, and our replies to them, are deleted after 12 months at the latest (see section 9).
- If you delete your account (app → Profile → Delete account), your account, device tokens, trackings, commutes, saved trips and votes are deleted immediately. Your reports remain anonymised (without any link to you) for the statistics, as does your feedback (without any link to you).
- Backups are kept for 30 days.
Moderation, trust and security log
For moderation (e.g. reviewing flagged content, suspending accounts that break the rules) the operator can view accounts, tips and feedback in a protected admin area. Only the operator has access, secured with a second factor. Every action there and every sign-in attempt is logged with time and IP address and deleted after 180 days.
- Trust level: from the confirmations, disputes and flags on your reports in the last 90 days, from hidden reports, the number of your reports and the age of your account, Catch automatically calculates a trust level (0–3). It is recalculated from this data when needed and not stored as a separate profile. On each report we only store the level at the time of reporting and whether live alerts are held back until the first confirmation; others only see “trusted” or “unconfirmed”, never your account. If reporting is limited for your account automatically, we store until when. What the level does is described in the terms of use, section 7.
- Moderation decisions: if one of your tips is hidden or deleted, your account is suspended or your reporting is limited – by the operator or automatically – we store the measure, the reason, an optional note, whether the decision was automated, the details of the affected tip (kind, line, stops, time) and whether the notification was sent. These entries are deleted after one year; if you delete your account earlier, they remain without any link to you until then.
- E-mail notification: we inform you about such decisions, with the reasons and how to object, at your account’s e-mail address (sent via Resend, see section 9). If you object, a person reviews the decision again.
- Replies to feedback: if you agreed to a reply and we answer you, we store the reply together with your feedback; it is deleted with it.
Legal basis: Art. 6(1)(f) GDPR (security, preventing abuse and reliable tips) and Art. 6(1)(c) GDPR (obligations under the Digital Services Act, in particular the statement of reasons under Art. 17 DSA).
6. Location
Catch asks for your location only when you use a “nearby” feature – e.g. when reporting (“Which line are you on?”) or for stops near you. The coordinate is then sent to our server, rounded to about 10 m and passed on to the timetable service (see section 7) to look up stops and departures. No location history is stored and the coordinate is not linked to your account. You can revoke location access at any time in your device settings. Legal basis: Art. 6(1)(a) GDPR (consent via the system prompt).
Ticket wallet and camera (Android app)
In the ticket wallet you can turn a PDF, an image or a photo of a ticket into a ticket to show. This happens entirely on your device: the file is read by a tool inside the app that technically cannot open any network connection, and the ticket – what was recognised (e.g. title, name, validity), the pattern of its code, a picture of the original and the original file – is stored only in the app’s storage on your phone. Nothing of it is sent to us or to anyone else, and the wallet works without an account. Catch asks for the camera only when you tap “Take a photo”; the photo stays on your device. You can delete each ticket in the app; uninstalling the app deletes all of them. Legal basis for the camera: Art. 6(1)(a) GDPR (consent via the system prompt), which you can withdraw in your device settings at any time.
7. Timetable data
Our server requests stops, departures and connections from the open timetable service Transitous. Only the search request is transmitted (e.g. stop name, start/destination, possibly a rounded coordinate) – without your IP address or account data, because the request comes from our server.
Punctuality per line: from the live timetable data our server receives anyway, we keep for each departure only the line, trip, stop, scheduled time, delay and whether it was cancelled – no account, device or location data – for 60 days, to show how punctual a line was. Lift status: to warn about lifts out of order at the stations of a connection, our server looks up these stations in Deutsche Bahn’s lift data (FaSta) it keeps in memory; nothing about you is sent to Deutsche Bahn.
Address search and saved places
When you search for an address or a place (e.g. “Weseler Straße 108”), the search text is passed via our server to the timetable service (see above). “My location” uses your position once for the search. Places you save as “Home”, “Work” or favourites, and recently searched places, stay only on your device and are not sent to us. Exception: the start and destination of a commute or a saved trip are stored on our server (see section 5).
Official notices from Deutsche Bahn
For official notices about trains (e.g. construction work, replacement buses, reasons for delays) our server asks DB InfraGO AG (Timetables, FaSta, StaDa) for the timetable changes of individual stations, the status of elevators and escalators, and station data. No data about you is transmitted – only the station and the time, and only from our server, not from your device.
Map
The map view loads map images (tiles) from OpenFreeMap (openfreemap.org, map data © OpenStreetMap contributors). For technical reasons the tile server receives your IP address and the map section shown, but no account or location data from us. Tips and stops on the map come from our server. If you switch on station details (elevators, entrances, platforms), the map requests them for the area shown from our server. For this our server fetches the elevator status from DB InfraGO AG (FaSta) and entrances and platform numbers from OpenStreetMap via the Overpass API (overpass-api.de, FOSSGIS e.V.) – only a map area (about 1 km) is sent there, never anything about you; the responses are cached. Legal basis: Art. 6(1)(b) and (f) GDPR.
8. Push notifications
For live alerts while the app is closed we use Firebase Cloud Messaging (Google Ireland Limited, see section 4). The device token and the content of the alert (e.g. “Delay on U8 between A and B”) are transmitted. During a saved trip, the Android app can also show a pinned live notification with the next step, platform and live times; our server updates it via push only when its content changes. You can switch it off on the trip screen (“Live notification”). If your own ride is running late or is cancelled, Catch may also ask in a separate, silent notification whether you want to report it for others; a report is only created when you tap “Report”, and you can switch these questions off in your system settings (notification category “Suggest a report”). You can turn push notifications off at any time in the app or in your system settings. Legal basis: Art. 6(1)(a) GDPR.
Notifications in the web app (e.g. on an iPhone after adding Catch to the Home Screen): if you turn them on, your browser creates a push subscription – an address at your browser’s push service (Apple, Google or Mozilla, depending on the browser) plus encryption keys. We store this subscription with your account and send alerts through that push service. The content is end-to-end encrypted, so the push service cannot read it; it only learns that a message for this address arrived. Switching notifications off or signing out deletes the subscription; an expired subscription is deleted automatically. Legal basis: Art. 6(1)(a) GDPR (you turn it on; the browser asks for permission).
Add to calendar: this opens your phone’s calendar app with the trip filled in (in the web app it downloads a calendar file). Nothing is sent to us or to the calendar provider by Catch; whether and where the entry is saved is up to you and your calendar app.
9. E-mails (password, moderation, replies, e-mails to us)
When you request a new password, Firebase (see section 4) creates a one-time link. We send the e-mail with this link via the service Resend (Resend, Inc., USA). Only your e-mail address and the content of the e-mail are transmitted. The transfer to the USA is based on the EU standard contractual clauses (Art. 46 GDPR). Legal basis: Art. 6(1)(b) GDPR. If Resend is not set up, Firebase sends the e-mail directly. You set the new password on our page catch-mobile.info/reset-password; the password goes straight to Firebase and is not stored by us.
We also use Resend to send notifications about moderation decisions that concern you (see section 5) and – only if you agreed when sending feedback – our reply to your feedback. Your e-mail address and the content of the e-mail are transmitted, for a reply also your feedback as a quote. If you reply to one of these e-mails, we receive your message and your e-mail address. Legal basis: Art. 6(1)(c) GDPR in conjunction with Art. 17 DSA (statement of reasons) or Art. 6(1)(b) GDPR (answering your request).
E-mails to us: e-mails you send to an address at catch-mobile.info – for example a reply to one of our e-mails or a message to our contact address – are received via Resend (see above) and passed on to our server. We store them up to 12 months to handle your request: sender address and name, recipients, subject, the text of the message (as plain text), technical details (date, message IDs, results of the sender checks SPF/DKIM/DMARC) and the names, types and sizes of attachments. We do not store attachments themselves. If the sender address belongs to a Catch account, we link the e-mail to that account. If we reply, we store our reply together with your e-mail; it is deleted with it. Legal basis: Art. 6(1)(b) GDPR (your request) and Art. 6(1)(f) GDPR (answering inquiries, legitimate interest).
10. Donations via Ko-fi
On the website and in the app we link to our page on Ko-fi (ko-fi.com/catchline, operated by Ko-fi Labs Limited, United Kingdom). Ko-fi only opens in your browser when you tap the link; no data is sent to Ko-fi before that, and we do not embed any content from Ko-fi. If you donate, Ko-fi and the payment service you choose (e.g. PayPal or Stripe) process your payment data under their own privacy policies. We only receive the details Ko-fi shows to page owners (e.g. the amount, the name you entered and, if given, your message and e-mail address). We do not link these details to your Catch account and only use them to record the donation and, where applicable, to thank you; they are kept as long as tax rules require. Transfers to the United Kingdom are covered by the European Commission's adequacy decision. Legal basis: Art. 6(1)(b) and (c) GDPR.
11. Your rights
You have the right to access (Art. 15 GDPR), rectification (Art. 16), erasure (Art. 17), restriction of processing (Art. 18), data portability (Art. 20) and objection (Art. 21). You can withdraw consent at any time. To do so, write to the e-mail address above. You can also lodge a complaint with a data protection supervisory authority, e.g. the authority of your federal state.
As of: November 2026