BlindTest Easy

Privacy Policy — BlindTest Easy

Last updated: October 2026 · Developer: Jérémy Calles

Cette politique de confidentialité est publiée en anglais. En résumé : vos données restent sur votre appareil et les statistiques anonymes ne sont envoyées qu’avec votre accord.

1. Data we collect and how we use it

1.1 Data stored on your device only

The app stores the following data only on your device (using iOS storage). We do not send this data to our servers or to any third party.

DataPurpose
Player namesThe names you enter when setting up a game are saved so they can be suggested the next time you play. You can avoid this by not saving or by clearing the app data.
Favorite playlistsWhen you mark Deezer or Apple Music playlists as favorites, their identifiers and basic info (title, cover) are stored on your device so they appear in “Mes Blind Tests.”
Analytics consent choiceWhether you accepted or declined optional usage statistics is stored on your device.
Solo Voice settingWhether you enabled the optional Solo Voice beta is stored on your device.

This data stays on your iPhone or iPad. Deleting the app removes it.

1.2 Optional anonymous analytics (opt-in only)

On first launch the app asks whether you agree to share anonymous usage statistics. If you accept, the app sends anonymous events to TelemetryDeck (an EU-hosted, privacy-first analytics service hosted in Germany).

TelemetryDeck also receives standard technical metadata with each event, such as app version, iOS version, device type, and an anonymized installation identifier that cannot be linked back to you. TelemetryDeck does not store IP addresses.

The app sends only the events below. All of them are used to understand how the app is used and to improve it.

App usage

EventData sent
App opened— (on the website, also the page address without its query, the site you came from, and the browser language)
Onboarding started / completed / skippedWhere skipped (invite or walkthrough), step number when applicable
Rate prompt shown / accepted / dismissed—

Games

EventData sent
Game startedNumber of players, number of tracks, timer duration, MC mode, companion mode, whether Solo Voice was on, music provider (Deezer or Apple Music), playlist identifier and playlist title when applicable, companion settings, how the game was started; on the website, the screen size (phone, tablet, or computer)
Game stopped (quit early)Same game settings as above, number of tracks completed, where the game was abandoned
Game completedSame game settings as above, winning score, whether the result was a tie
Round completedTrack index, points awarded, whether it was the last track
Game durationHow long the game lasted in the foreground, and whether it was completed or stopped

Player names are never included in analytics.

Playlists and search

EventData sent
Playlist openedPlaylist identifier, music provider, number of tracks, source (favorites, chart, or search)
Playlist favorited / unfavoritedHashed playlist identifier, music provider
Search performedNumber of results, music provider, whether any results were found
Music provider changedPrevious and new provider (Deezer or Apple Music)
Catalog provider selectedWhich source was selected (deezer or appleMusic)
Catalog auth prompt shown / granted / deniedWhether Apple Music catalog access was allowed or refused
Catalog Deezer fallback shown / accepted / dismissedWhether the player continued with Deezer after an Apple Music catalog problem
Catalog retry tapped—
Catalog open Settings tapped—

Solo Voice beta (optional)

If you enable Solo Voice, the app listens on-device for the artist and title. Microphone audio never leaves the device. Speech is not streamed while you play. If you accepted anonymous analytics, a Voice match event is sent at the end of each song’s timer (one match event per song). It includes the catalog artist and title (raw and the cleaned title used for matching), the text dictation understood for that song (not the audio), match percentages, whether artist and title locked, the music provider, and the speech locale — so recognition can be improved. A Voice miss event uses the same payload when the round ends without both fields locked, and also when you tap Artiste or Titre to self-credit. Misses include inputSource (asr or manual) and missKind (silence, near_miss, or wrong_guess). Soft-confirm prompts log shown, accepted, and dismissed events (field, heard text, match percentages, speech locale).

EventData sent
Solo beta shown / toggledWhether the toggle was turned on or off
Solo game / round startedSame anonymous game settings as above, speech language code only (fr, en…), whether listening was ready
Artist or title matchedHow many seconds into the round the lock happened
Voice matchSent once per song when the timer ends: music provider, expected artist and title (expectedSong plus expectedSongRaw / expectedSongMatch after catalog-title cleanup), heard text, artist/title/combined/ASR match percentages, speech locale, whether artist and title locked
Voice missSame payload as Voice match, plus inputSource (asr at round end, or manual when you tap Artiste/Titre), missKind (silence, near_miss, wrong_guess), and manualField (artist or song) for manual taps
Soft confirm shown / accepted / dismissedField (artist or song), heard text, artist/title/ASR match percentages, speech locale
Solo round completedWhether artist and title were locked, and whether listening was ready
Dictation ready / failedLanguage code, or a failure category (permission, unsupported, asset, analysis, unavailable)
Feature rated / recognition ratedA 1–5 score, number of tracks, how many artist/title locks occurred, and whether listening failed
Rating skippedWhich question was skipped (feature, recognition, or both)

Companion mode (multi-device play)

EventData sent
Companion host startedNumber of joinable players
Companion joinedNumber of players in the session

Errors

EventData sent
Catalog or network errorsDedicated ids catalog.notAuthorized, catalog.quotaExceeded, and catalog.developerTokenUnavailable when those cases apply. All other catalog failures use catalog.error with kind (network, token, storefront, decode, quota, server, or unknown) plus a context (chart, search, playlist loading). No personal data is included.

What is NOT collected:

  • Player names, email, or any personal identifiers.
  • Advertising IDs or precise location data.
  • IP addresses (TelemetryDeck does not store them).
  • The content of your searches (only the number of results is sent).
  • Microphone audio from Solo Voice, and no live speech stream. If analytics are accepted, only one summary per song is sent after the timer: catalog titles and the understood text, not the recording.

If you decline on first launch, no analytics data is sent and the analytics service is never initialised. The app does not currently include a Settings screen to change this choice later; deleting the app or clearing its data in iOS Settings resets the choice.

1.3 Data we do not collect

We do not collect:

  • Name, email, or other account information (the app does not use accounts or sign-in).
  • Precise location or advertising identifiers for tracking.
  • Advertising-related data.

2. Third-party services

2.1 Deezer

The app uses the Deezer API to let you browse playlists and play music clips during the blind test. When you use these features:

  • Your device sends requests to Deezer’s servers (e.g. to load charts, search playlists, or get track previews).
  • We do not send your name, email, or any account data to Deezer; the app does not use a Deezer account.
  • Deezer may receive technical data such as your device’s IP address. For how Deezer handles data, see Deezer’s privacy policy.

We do not control Deezer’s practices. Use of Deezer content is subject to Deezer’s terms.

2.2 Apple Music (MusicKit)

The app uses MusicKit to browse Apple Music catalog playlists and play preview clips. When you use these features:

  • The first time you choose Apple Music, iOS asks for permission to use MusicKit. This is required so the app can load public catalog playlists and 30-second preview clips.
  • Your device sends requests to Apple’s servers (e.g. to load charts, search playlists, or get track previews).
  • We do not send your name, email, or any Apple ID to Apple. The app does not require an Apple Music subscription, does not sign you into Apple Music, and does not read your personal music library.
  • You can revoke this permission later in iOS Settings.
  • Apple may receive technical data such as your device’s IP address. For how Apple handles data, see Apple’s privacy policy.

Use of Apple Music previews is subject to Apple’s terms.

2.3 TelemetryDeck (optional, opt-in only)

If you accept anonymous analytics (see §1.2), the app sends anonymous events to TelemetryDeck, a privacy-first analytics provider hosted in Germany (EU). TelemetryDeck:

  • Does not store IP addresses.
  • Does not use cookies or fingerprinting.
  • Does not track users across apps.

For details, see TelemetryDeck's privacy policy.

3. Data retention and deletion

  • On-device data: Stored until you delete it (e.g. by removing the app or clearing app data in iOS Settings).
  • We do not retain any of your data on our own servers.

4. Children

The app does not require an account or collect personal information. It is suitable for general audiences. If you believe a child has entered personal data in the app (e.g. in player names), you can remove it by deleting the app or clearing its data.

5. Changes to this policy

We may update this privacy policy from time to time. The “Last updated” date at the top will change when we do. Continued use of the app after changes means you accept the updated policy.

6. Contact

For questions or requests about this privacy policy or your data: