Privacy Policy
Last updated: September 26, 2026
The app's public name is LUMA Radio & Podcasts (Android com.luma.stream, iOS com.pavlosol.lumastream). The package identifiers differ from the name for historical reasons; this policy covers both platforms.
LUMA Radio & Podcasts is a local-first radio, podcast, and local-media app. Core listening - browsing, streaming radio, playing podcasts, and playing supported local audio or video selected by you - works without an account. An optional account exists only to unlock premium features and sync your premium entitlement, favorite stations, and app settings across your devices.
This policy explains what is stored on your device, the optional account and subscription data we process, which third-party services the app contacts, and how the web preview differs from the installed app.
Optional account and sign-in
You can use LUMA Radio & Podcasts signed out. Creating or signing in to an account is optional and only needed to purchase or restore premium and to sync your premium entitlement across devices.
Sign-in is provided through Google Firebase Authentication using:
- Email and password.
- Sign in with Google.
- Sign in with Apple (on iOS). If you choose Apple's Hide My Email option, we receive only the private relay address Apple generates, never your real address.
When you create or use an account, we process your email address, display name if provided, Firebase account user ID, and premium entitlement flag. While you are signed in, the app also syncs a favorites snapshot (your saved radio stations) and a settings snapshot (theme, preferences, app language, launch count) to your account so they can be restored across devices and reinstalls. If you use song recognition, your recognized-songs history (song title, artist, catalogue IDs, artwork link, genres, the station it was heard on, when it was heard, and whether you liked it) is synced to your account in the same way. This data is stored in Google Firebase Authentication and Cloud Firestore, keyed to your user ID.
We do not sell this data, use it for advertising, or share it with third parties for their own purposes. Passwords are handled by Firebase Authentication; LUMA Radio & Podcasts never stores your password.
Personalised listening and technical data
The Personalised listening setting controls LUMA's own statistics and recommendation service. It is enabled by default and can be turned off at any time in Settings. When it is off, the app stops registering with that service, drops queued events, and does not send further listening or diagnostic data to LUMA's server.
While enabled, the app sends a random app-generated installation ID; platform, app version and selected country; operating-system/API version; manufacturer, brand, device model and model code; device class; supported CPU architectures; whether the environment reports itself as an emulator; and the installer/store where available. The random installation ID is not an IMEI, Android ID, advertising ID, serial number, MAC address, or other hardware identifier.
The service also receives listening and interaction events such as station starts, listening-duration milestones, skips, favorites, selected countries and genres, the genres of songs you like in Recognized songs (only the genres, not the song), search terms, onboarding completion, and subscription/paywall interactions. Playback reports can include the station or stream, success or failure, error category, HTTP status, latency, time to first audio, content type, codec, bitrate, and whether a stream appeared geo-blocked.
LUMA uses this information only to provide personal listening statistics and recommendations, improve station reliability, diagnose compatibility and playback problems, understand feature and subscription flows, prevent abuse, and operate the service. It is not used for advertising or cross-app tracking and is not sold. An installation is pseudonymous while signed out; signing in can link it to the LUMA account so statistics, sync, and premium features work together.
LUMA does not include a third-party analytics, advertising, or crash-reporting SDK. This technical and interaction data is sent directly to LUMA's own service and processed by its hosting providers on LUMA's behalf.
Premium subscriptions
Premium is sold as an in-app subscription through Google Play billing on Android and through the Apple App Store on iOS. The store you bought from processes your payment; LUMA Radio & Podcasts never receives or stores your payment card or billing details. After a successful purchase or restore, the app records only a premium on/off flag against your account.
To confirm a purchase is genuine, the app sends the store's purchase token or transaction identifier to our server, which checks it directly with Google or Apple and then sets that premium flag. Those identifiers relate to the subscription only — they carry no payment details, and we do not use them for any other purpose.
What is stored on your device
LUMA Radio & Podcasts stores app data locally using platform app storage and, where supported, folders or file locations selected by you.
- Favorite radio stations, subscribed podcasts, saved podcast episodes, downloaded episode records, continue-listening, and last-played state.
- Local-media folder shortcuts, favorite tracks, recent tracks, playlists, queue order, and resume positions.
- Radio, podcast, and Media themes; day/night mode; Bold UI; sort modes; country defaults; playback speed; equalizer; car auto-play; and feature preferences.
- A cached copy of your signed-in account user ID, email, display name, and premium flag so the app works offline and at cold start. This cache is cleared on sign-out.
- Podcast download locations, including Android Storage Access Framework folder URIs and the app's Documents area on Apple platforms.
- Media folder paths or Android Storage Access Framework folder URIs selected by you where the platform supports folder browsing.
- Station metadata, tags, countries, artwork URLs, radio-guide schedules/source attribution, podcast show/episode data, and optional artist/album/cover-art lookup results.
Supported local audio and video files remain in the folders you selected. LUMA Radio & Podcasts reads them for browsing and playback but does not upload those files.
Third-party network services
LUMA Radio & Podcasts contacts public third-party services to provide sign-in, discovery, and playback. These services may receive standard technical request information such as your IP address, User-Agent, request time, and requested URL. Their own privacy policies govern how they process that information.
- Google Firebase Authentication and Cloud Firestore for optional account sign-in, premium entitlement storage, and favorites/settings sync while signed in.
- Google Sign-In for optional sign-in.
- Google Play billing (Android) and the Apple App Store (iOS) for premium subscription purchases, restores, and server-side verification of those purchases.
- Radio Browser for station search, station metadata, tags, votes, stream URLs, and country lists.
- SHOUTcast directory services for optional SHOUTcast station discovery, genre browsing, and stream resolution.
- LUMA-hosted Radio Guide data at
luma.pidbiq.net/radio-guide/seed.jsonfor schedules, categories, source attribution, and refresh data. - Apple Podcasts / iTunes-compatible podcast search and podcast RSS feeds for podcast discovery, episode metadata, artwork, and audio URLs.
- MusicBrainz and Cover Art Archive for optional artist, album, and artwork lookup. For local audio, a filename-derived title and artist (when present) are sent as a search query; the audio/video file itself is never sent.
- IP-based country lookup (
api.country.is, falling back toget.geojs.ioand then Cloudflare'scloudflare.com/cdn-cgi/trace) for approximate local-station discovery. - Apple ShazamKit for optional song recognition while listening to radio (see "Song recognition" below).
- Apple Music / iTunes catalogue lookup for details of a recognized song (album, release date, length, genre, label, artwork). The song's Apple Music ID or ISRC is sent either through LUMA's own server, which queries the Apple Music API, or directly to Apple's public iTunes lookup.
- Individual radio stream hosts, podcast audio hosts, station websites, and image hosts selected by content providers.
- The Luma hosted web preview at luma.pidbiq.net/play/.
Approximate location
To suggest stations from your country on first use, LUMA Radio & Podcasts sends a request to an IP-based geolocation service that reads the request's IP address and returns a country code. The app uses it to pick a default discovery country, which may be saved on your device as a preference. While Personalised listening is on, your selected country is also sent to LUMA's server for recommendations and statistics, as described above. LUMA Radio & Podcasts does not collect GPS or precise location, does not store your IP address, and does not use this for advertising or tracking.
Radio-stream recording
Radio-stream recording is disabled and is not available in current store builds. Programme reminders created from the Radio Guide store only the programme and notification details needed to alert you; they do not capture audio.
If an earlier app build created radio-recording files, those legacy files remain in the location you previously selected until you delete or move them. The app does not upload them.
Song recognition (Shazam auto-recognition)
LUMA Radio & Podcasts offers an optional, premium "Shazam auto-recognition" setting (default off) that identifies the song currently playing on a radio station using Apple's ShazamKit service.
It never uses your microphone. On both Android and iOS, recognition works from the radio stream's own audio, not from the room around you. The app does not request microphone permission and does not declare RECORD_AUDIO; nothing you say, and no sound near your device, is captured, transmitted or analysed. Recognition stops when you turn the setting off, pause or stop playback, or switch to podcasts. The stream audio used for recognition is not stored, and is not sent to or stored by our own servers — it is used only for the recognition request to Apple's service.
Podcast downloads
Downloaded podcast episodes are saved locally to the folder you select. LUMA Radio & Podcasts does not upload downloaded episodes.
Local audio and video
On Android, the Media area inside Library scans only folders you select through the Storage Access Framework. It can list supported audio and video files, remember folder shortcuts, build audio queues and playlists, save favorites and recent items, and remember playback positions. Apple-platform file access follows the locations exposed by that platform and the app.
Local media stays in its existing folder. LUMA Radio & Podcasts does not upload local audio or video files. When artwork lookup is available, the app may send a filename-derived track title and artist to MusicBrainz and load matching artwork from Cover Art Archive. You can still play the file if no metadata or artwork is found.
Android permissions
INTERNET: search, stream, fetch station and podcast data, sign in, and load artwork.FOREGROUND_SERVICE/FOREGROUND_SERVICE_MEDIA_PLAYBACK: background audio playback and media controls.WAKE_LOCK: keep audio playing with the screen off.POST_NOTIFICATIONS: show the media playback notification and controls where the OS requires permission.BLUETOOTH_CONNECT(Android 12+): optional car/Bluetooth auto-play. It is requested only when you enable that setting; if denied, the feature remains limited while the app is in the foreground.com.android.vending.BILLING: in-app subscription purchases through Google Play billing. (Android permission names are listed here; on iOS the equivalent access is requested by the system at the moment it is first needed.)- Storage Access Framework folder access: only for folders you select for podcast downloads and local Media browsing/playback.
Web preview limitations
The browser preview at luma.pidbiq.net/play/ is intended for radio and podcast discovery, the Radio Guide, preview playback, settings, favorites, and shared links where browser APIs allow it. Web shows sign-in/mock only; subscriptions are not sold on the web.
The installed app is required for programme reminders, podcast downloads, native Android EQ, background/lock-screen/notification controls, car/Bluetooth auto-play, local MP3/audio and video folder access, and fuller station logo/artwork support.
Luma Charts and now-playing titles
What is sent. While you listen to a radio station, many stations broadcast the title of the track currently playing. When "Personalised listening" is on, LUMA Radio & Podcasts sends that title, together with the station and its country and genre, to our own servers. This is what builds Luma Charts — a ranking of what stations are actually playing and how many people were listening.
It is not tied to you. These records are stored without any account, user ID, or device identifier. They record that a station played a track and a number of people heard it, never who those people were. Because nothing links a record to you, there is no personal listening history for us to look up, export, or delete — there is nothing there to find. Your own listening statistics inside the app are calculated on your device and are not built from this data.
How to switch it off. Turn off "Personalised listening" in the app (Settings → Personalised listening). While it is off, nothing is sent. Titles are also skipped when they are not a recognisable artist and track, such as advertising breaks and station idents.
Where it appears. Aggregated charts are shown in the app and may be published as public playlists on streaming services under LUMA's own accounts. Only the aggregate ranking is ever published.
Analytics and advertising
LUMA Radio & Podcasts does not include first-party analytics SDKs, advertising SDKs, or crash-reporting SDKs. Firebase Analytics is not enabled. If that changes, this policy will be updated before release.
Deleting your account and data
Account data. You can delete your account and its server-side data (Firebase Authentication record and the Firestore account document) from within the app: Settings → Account → Delete account. You can also request deletion by emailing luma@pidbiq.net from your account email, or via the web form at luma.pidbiq.net/delete-account/. Deleting your account removes your email, display name, user ID, premium entitlement flag, and synced favorites/settings snapshots from our authentication and database providers. An active subscription must be cancelled separately in the store that sold it — Google Play › Subscriptions, or Apple Settings › your name › Subscriptions.
Sign in with Apple. If you signed in with Apple, deleting your account also revokes the app's Apple sign-in token, so it stops appearing under Settings › your name › Sign in with Apple on your device.
On-device data. Clear app data or uninstall the app to remove preferences, favorites, subscriptions, programme reminders, and local records. Delete downloaded podcast files and any legacy radio-recording files from the folders where you saved them. Remove Media folder shortcuts in the app, and delete or move local audio/video files using your file manager if you want to remove those files. Revoke folder access in device Settings if you previously selected a folder through Storage Access Framework.
Children
LUMA Radio & Podcasts is a general-audience media app. Content is provided by third-party radio stations, podcast publishers, and stream hosts. LUMA Radio & Podcasts does not control or moderate that content and is not directed specifically at children under 13.
Changes
This policy may be updated as the app evolves. The date at the top reflects the most recent revision.
Contact
Support and privacy: luma@pidbiq.net or luma.pidbiq.net/support/