Privacy Policy
App: Radio Compass
Developer: Virtomaster, Ukraine
Contact: support@virtomaster.com
Last Updated: May 20, 2026
1. What This Policy Covers
1.1 Introduction
This Privacy Policy explains what data Radio Compass collects, why we collect it, how we store it,
and what choices you have.
1.2 Key Principles
- We do not sell personal data.
- We do not collect your contacts, SMS/calls, photos, microphone recordings, or precise location.
- When you stream radio, your device connects to third-party radio stream servers, which may receive your IP address as part of normal internet traffic.
2. Data We Collect
2.1 Account Data (Optional)
- Email/password (if you register by email) — handled by Firebase Authentication.
- Google Sign-In (if you choose it): basic profile data provided by Google (e.g., email, name, avatar). We do not store your Google password.
- Facebook Sign-In (if you choose it): basic profile data provided by Facebook (e.g., email, name, avatar). We do not store your Facebook password.
- Account identifier (Firebase UID).
2.2 App Data
- Favorites (saved stations).
- Preferences (theme, language, country filter, and similar settings).
- Local cache (stored on your device to improve performance/offline behavior).
2.3 Analytics (Pseudonymous)
- We use Firebase Analytics (Google) to understand app usage (e.g., app opens, station playback, favorites actions, searches, basic performance signals like buffering).
- Analytics is collected in an aggregated/pseudonymous way (not intended to directly identify you).
- You can disable analytics at any time in Settings → Privacy.
2.4 Crash & Diagnostics
- We use Sentry and Firebase Crashlytics (Google) to detect crashes and fix bugs. Reports may include device/OS info, app version, stack traces, and technical logs related to the error.
- We use Firebase Performance Monitoring (Google) to measure technical performance signals such as app start time, screen rendering, and network request latency. These signals are aggregated and not used to identify you.
- We configure filtering to avoid collecting sensitive data (e.g., passwords/tokens) in crash logs.
2.5 Premium Subscriptions & Purchases
- Radio Compass offers optional premium subscriptions. Purchases are processed by Google Play Billing or Apple App Store — we never see or store your payment card or banking details.
- We use RevenueCat to manage subscriptions and verify entitlements. RevenueCat receives a pseudonymous app user ID (linked to your Firebase UID when signed in), purchase events, transaction IDs, and basic device/platform info.
- We store a minimal "premium status" mirror in our Firestore (a flag indicating whether your account has an active entitlement) so that premium features work across your devices.
- For refund requests, you must contact the store of purchase (Google Play or App Store) — we cannot issue store refunds on your behalf.
2.6 Last.fm Integration (Optional)
- If you choose to connect your Last.fm account, we use Last.fm's authorization flow to obtain access to your account on your behalf. Authentication credentials are stored locally on your device in secure storage; we do not store them on our servers.
- If enabled, the App may send "scrobbles" (track plays) and "loves" (liked tracks) to Last.fm on your behalf. This data appears in your Last.fm profile subject to your Last.fm privacy settings.
- Last.fm Ltd acts as an independent data controller. See their privacy policy: last.fm/legal/privacy.
- You can disconnect at any time in App Settings, or revoke access via last.fm/settings/applications.
2.7 ListenBrainz Integration (Optional)
- If you choose to connect your ListenBrainz account, you paste a personal User Token (obtained from your ListenBrainz profile) into the App. The token is stored locally on your device in secure storage; we do not store it on our servers.
- If enabled, the App sends "listens" (track play history) to ListenBrainz on your behalf. This data appears in your ListenBrainz profile subject to your ListenBrainz privacy settings.
- MetaBrainz Foundation, Inc. acts as an independent data controller. See their privacy policy: metabrainz.org/privacy.
- You can disconnect at any time in App Settings, or revoke the token at listenbrainz.org/profile.
2.8 Support Messages
- If you email us, we receive the information you include in your message.
3. How We Use Data
3.1 Primary Purposes
- Provide the service (streaming, search, favorites, personalization).
- Sync favorites/settings across devices (if you are signed in).
- Improve stability and performance (analytics, debugging, crash fixing).
- Security and abuse prevention.
3.2 Legal Basis (GDPR)
Legal basis (GDPR):
• Art. 6(1)(b) — Contract performance: to provide core app functionality.
• Art. 6(1)(f) — Legitimate interest: for usage analysis and service improvement.
4. Sharing & Service Providers
4.1 Third-Party Service Providers
We share data only with providers needed to run the app:
- Firebase (Google): Authentication, Cloud Firestore (synced user data), Firebase Analytics (usage analytics), Firebase Crashlytics (crash reports), Firebase Performance Monitoring (performance signals), Remote Config, and Cloud Functions (server-side operations).
- Sentry: crash reporting and diagnostics.
- RevenueCat: subscription management and entitlement verification for in-app purchases.
- Google Play Billing / Apple App Store: payment processing for purchases and subscriptions.
- Google Sign-In: authentication option (if you use it).
- Facebook Sign-In: authentication option (if you use it).
- Radio Browser API: station search/metadata requests.
- Logo.dev: station logo images.
- Last.fm: optional integration for scrobbling plays and loving tracks (only if you connect your account).
- ListenBrainz: optional integration for submitting listens to your ListenBrainz profile (only if you connect your account).
- Radio stream providers: when playing a station, your device connects to the station's stream server.
- Expo: framework/runtime services (may process limited technical data required to operate the app).
4.2 International Transfers
International transfers: some providers may process data on servers outside your country. We rely on reputable providers and appropriate safeguards required by applicable law.
5. Storage & Retention
5.1 Data Retention Periods
- On device: preferences/cache until you clear app storage or delete personal data.
- Firebase: kept while your account exists, then deleted as described below.
- Analytics and diagnostics: retained for limited periods as required for service improvement and troubleshooting, in accordance with the providers' standard retention practices.
6. Your Rights (GDPR)
6.1 Your Data Protection Rights
Under GDPR and similar laws, you have the right to:
- Access — request information about your personal data we store.
- Rectification — correct inaccurate data via app settings or by contacting us.
- Erasure — delete your account and data (see Section 7).
- Restriction — request temporary restriction of processing.
- Object — object to processing based on legitimate interest.
- Analytics toggle — disable analytics collection in the app settings at any time.
6.2 How to Exercise Your Rights
To exercise your rights, email support@virtomaster.com
with subject Radio Compass - Data Protection Request.
We respond within 30 days.
7. Delete Personal Data
7.1 In the App
Open: Settings → Privacy → Delete Personal Data.
7.2 By Email
Email support@virtomaster.com with subject
Radio Compass - Account Deletion Request and include the email used in the app.
7.3 On the Web
Instructions:
https://virtomaster.com/radiocompass/delete-account
7.4 What Happens After Deletion
- Local app data is removed from your device (or becomes inaccessible) after deletion.
- Firebase account data and Firestore user data are deleted; we aim to complete backend deletion within 30 days.
- Some analytics may remain only in aggregated/pseudonymous form where individual historical removal is not practical.
8. Security
8.1 Security Measures
- Encryption in transit — all data transmitted via secure HTTPS/TLS protocol.
- Authentication tokens — stored via Firebase Auth persistence with encryption layer.
- Firestore — protected by security rules (user can only access their own data).
- Sensitive data filtering — automatic removal of tokens/passwords from error logs (Sentry).
- Access controls — data access limited to minimally necessary personnel.
8.2 Security Disclaimer
No method of transmission or storage is 100% secure, but we apply industry-standard measures.
9. Children
9.1 Age Restrictions
The app is not intended for children under 13 years old
(or under 16 years old where required by local law, such as in the EU/EEA).
If you believe a child provided personal data, contact us and we will delete it.
10. Changes & Contact
10.1 Policy Updates
We may update this policy from time to time and will revise the "Last Updated" date on this page.
If we make material changes, we will notify you via the App and/or by other reasonable means.
10.2 Contact Information
Questions or concerns: support@virtomaster.com.