Privacy Policy
Last updated: October 3, 2026
OW Match Notifier helps users receive notifications when an Overwatch match is detected by the companion desktop agent.
Information We Collect
The app and backend collect the desktop agent identifier, temporary pairing codes, mobile device push notification tokens, match event identifiers, timestamps, and basic delivery metadata needed to send notifications. Delivery metadata includes acknowledgements that the mobile app received a message; it does not indicate that the user read or heard it.
How We Use Information
Accounts use Firebase Authentication for email/password sign-in, email verification and password recovery. We store the account identifier, access status and expiration, an installation identifier for one phone, and the linked desktop identifier. Desktop credentials are stored as hashes on the server. This backend does not receive account passwords.
We use this information to pair a phone with the user's desktop agent, register mobile devices, deliver match notifications, prevent duplicate notifications, and maintain a local notification history on the user's device.
Local Notification History
Notification history is stored locally on the user's device. Users can clear this history from inside the app.
Third-Party Services
OW Match Notifier uses Firebase Authentication for accounts, Firebase Cloud Messaging to deliver push notifications, Cloud Firestore for account access, device links, pairing codes, attempt limits and receipt metadata, and Google Cloud Run to host the backend service. Optional QR scanning uses Google Code Scanner on Android; manual code entry remains available.
Data Sharing
We do not sell personal data. Data is shared only with the infrastructure providers required to operate push notifications and the backend service.
Data Retention
Device tokens are retained while the service is in use. Pairing codes and idempotency records are kept temporarily. Local notification history remains on the device until the user clears it.
Receipt credentials expire after 24 hours. The backend stores only their hashes. Pending receipt credentials are stored locally on the phone until acknowledged or expired and are retried when connectivity is available. Expired server receipt records are inaccessible through the receipt API; physical removal depends on the configured database retention policy. Receipt timestamps may also be included in local desktop diagnostic reports.
User Controls
Optional automatic desktop diagnostics require permission in the app and can be disabled in Settings. Reports contain the app version, counters and up to two minutes of structured technical events: capture state, detection decisions, error codes, window state, resolution, confidence and timings. Expanded diagnostics require renewed permission. They do not include images, audio, recognized screen text or local report files. Each report has a random ID. Up to ten authorized pending reports are stored locally for seven days and removed when sharing is disabled. Reports are stored in our restricted Google Cloud database for troubleshooting, marked to expire after thirty days, and removed incrementally when new reports arrive. Disabling sharing stops future uploads; it does not delete reports already received. Network requests are authenticated and infrastructure logs may contain normal connection metadata.
Unpairing removes the active desktop and phone link. Signing out of the linked phone first removes that link. Account access and expiration records are retained so reinstalling or unpairing does not restart a free beta. To request account deletion, use the contact address below.
- Users can disable notifications in Android system settings.
- Users can clear local notification history inside the app.
- Users can stop using the companion desktop agent to stop match detection events.
Contact
For privacy questions, contact: lucaschiavicatti@gmail.com