Last updated: September 12, 2026 · Terms of Service
CruiseWatch is a free Android app (with an optional Wear OS companion) that tracks the public fare on a cruise you've already booked and alerts you when it drops. This page explains, in full, what data the app collects, why, who it's shared with, and how to have it deleted.
This policy applies to the CruiseWatch Android app (com.cruisewatch.app), the CruiseWatch Wear
OS companion app (com.cruisewatch.app.wear), and this website. CruiseWatch is developed and
operated independently and is not affiliated with, endorsed by, or operated by Royal
Caribbean, Celebrity Cruises, Carnival, Princess Cruises, or Norwegian Cruise Line.
This data is stored in Firebase Firestore under your account and is not visible to other CruiseWatch users.
The app uses Firebase Crashlytics and Firebase Performance Monitoring to catch bugs and slow spots. When the app crashes or hangs, or during normal use, these send Google:
This data is used solely to find and fix bugs and performance problems — never for advertising.
The phone app shows banner and interstitial ads via Google AdMob to keep CruiseWatch free. AdMob may collect:
You can limit ad personalization at any time in Android Settings → Google → Ads. The Wear OS companion app does not show ads.
You can choose your own language for the app's interface during setup or any time from Settings, from a list of over 50 languages. Choosing a language other than English downloads a small language file from Google's ML Kit Translate service (a one-time download per language, by default only over Wi-Fi). After that download, the app's own interface text is translated entirely on your device — no screen text, cruise data, or account information is sent to Google or anyone else to perform this translation. The app checks your network connection type (Wi-Fi vs. cellular) only to decide whether to ask before using cellular data for that one-time download; this check does not report your location or browsing activity to us or to Google.
The optional AI chat assistant runs a language model entirely on your device after a one-time model download. Your questions, the assistant's answers, and the cruise/alert data it references are processed locally and are never sent to CruiseWatch, Google, or any third party. The only network activity involved is the initial model file download from the public model host.
If you tap the flag icon on a specific AI assistant response to report it as inaccurate, unsafe, or off-topic, that one exchange — only the question you asked and the assistant's response to it — along with the reason you selected and your app version, is sent to a Cloudflare Worker and stored in Cloudflare D1. This is the one deliberate exception to the assistant's otherwise fully on-device operation described above, and it only happens when you explicitly choose to report a message — nothing is sent automatically. No account information, device identifier, or other cruise data is included. Reported exchanges may be copied into an issue in the developer's private GitHub repository so problems can be reviewed and fixed; they are never used for advertising or shared with any other party.
When you tap the share icon on an alert or tracked cruise, CruiseWatch hands the message text to Android's own share sheet — the same system dialog any app uses to share to Messages, email, or another app you pick. CruiseWatch does not see, log, or store who you shared with or through which app; that exchange happens entirely between your device and the app you choose.
| Service | Provider | Purpose |
|---|---|---|
| Authentication | Firebase Authentication (Google) | Sign-in and account identity |
| Database | Cloud Firestore (Google) | Stores your tracked cruises, price history, and alerts |
| Push notifications | Firebase Cloud Messaging (Google) | Delivers price-drop alerts to your phone and watch |
| Crash & performance reporting | Firebase Crashlytics & Performance Monitoring (Google) | Diagnoses crashes and slow performance |
| Advertising | Google AdMob | Serves the banner and interstitial ads that keep the app free |
| Sign-in option | Google Sign-In | Optional one-tap sign-in on phone and watch |
| App translation | Google ML Kit Translate | Downloads the language file for your chosen language; the actual translation runs on your device |
| AI response reports (opt-in) | Cloudflare (Workers & D1) | Stores only the specific AI messages you explicitly flag as bad, to help fix the assistant |
We do not sell your personal data, and we do not share your cruise or account data with any party beyond the service providers above, which process it on our behalf under their own privacy terms (Google Privacy Policy).
Your tracked cruises, price history, and alerts are kept until you delete them in the app or delete your account. To request deletion of your account and all associated data, see our dedicated Delete Your Account page for the exact steps, what gets deleted, and what (if anything) is retained and for how long. Requests are processed within 30 days.
Your cruise and alert data is protected by Firestore security rules that restrict access to your own account only — no other CruiseWatch user can read or write your data. No method of transmission or storage is 100% secure, but we take reasonable steps to protect your information.
CruiseWatch is not directed at children under 13, and we do not knowingly collect personal information from children under 13. If you believe a child has provided us with personal information, contact us and we will delete it.
We may update this policy as the app changes. Material changes will update the "Last updated" date above. Continued use of the app after a change constitutes acceptance of the updated policy.
Questions, data requests, or concerns: me@charleshartmann.com