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:

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.

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.

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

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/