Privacy Policy
Last updated: April 8, 2026
Label Mate ("the app") is developed by Joey Liechty ("we", "us"). This policy describes what data the app collects, how it is used, and your choices.
Summary
Label Mate is designed to work primarily on-device. We do not create user accounts, do not collect personal information, and do not use analytics or advertising frameworks. The app sends limited data to cloud services only when needed to identify records and fetch metadata.
Data Collected
Data We Do Not Collect
- No names, email addresses, or contact information
- No location data
- No device identifiers or advertising IDs
- No analytics, crash reports, or usage telemetry
- No browsing history or search history stored server-side
On-Device Data
The following data is stored only on your device and is never transmitted:
- App preferences: settings, toggles, and UI state (stored in UserDefaults)
- Scan history: your last 25 scans (stored in UserDefaults)
- Prepare list: tracks you save for later (stored in UserDefaults)
- Scan counter and trial status: daily scan count and free trial start date (stored in Keychain)
- Catalog database: a local index of catalog numbers for offline record identification (stored as a SQLite file)
- Cached metadata: cloud API responses cached locally for up to 30 days to reduce network requests
Data Sent to Our Cloud Service
When the app identifies a record, it sends catalog numbers, artist names, and track titles to our Cloud Run API to fetch metadata (tracklists, credits, YouTube video links). These are music industry identifiers, not personal data. No user identifier is attached to these requests.
API endpoint: hosted on Google Cloud Run (us-central1)
Data Sent to Google Cloud Vision (LP Mode Only)
When you use LP mode (textless album cover recognition), the app sends a photograph of the album cover to Google Cloud Vision via our proxy server for reverse image matching and text detection. Images are processed by Google and are subject to Google Cloud's Privacy Policy. We do not store these images on our servers.
LP mode is optional. If you do not use LP mode, no images are sent to any cloud service.
Data Sent to Discogs (Pricing)
When pricing information is displayed, the app fetches marketplace data from Discogs via our proxy server. Only the release ID is sent. No personal data is transmitted. Pricing data is cached on-device for 24 hours per Discogs API terms. Discogs data is subject to the Discogs Privacy Policy.
Optional Crowdsource Contributions
If you enable "Help improve the database" in Settings (enabled by default), the app may send the following anonymous data to help improve results for all users:
- Barcode mappings: barcode number, catalog number, and master release ID
- YouTube video matches: master release ID, track title, and YouTube video ID
No user identifier, device identifier, or personal data is included in these reports. You can disable this at any time in Settings.
Camera and Photo Library
- Camera: used to scan record labels and barcodes. In LP mode, images are sent to Google Cloud Vision as described above. In all other modes, camera frames are processed entirely on-device using Apple's Vision framework and are never transmitted.
- Photo library: used only in batch mode to import Live Photos for multi-frame scanning. Photos are processed on-device and are never uploaded.
Apple Music
The app uses Apple's MusicKit framework to search for and play music. Your Apple Music subscription status and playback are handled entirely by Apple. We do not access your Apple Music listening history or library.
Subscriptions
Subscriptions are processed by Apple through the App Store. We do not receive or store your payment information. Subscription status is verified on-device using StoreKit 2.
Data Retention
- On-device data: persists until you delete the app or clear caches in Settings.
- Cloud API: we do not log or store API requests beyond standard Cloud Run request logging (retained for 30 days by Google Cloud for operational purposes).
- Crowdsource data: anonymous barcode and video mappings are stored indefinitely to improve the database. Because no user identifier is attached, we cannot associate this data with you or delete specific contributions.
Children's Privacy
Label Mate is not directed at children under 13. We do not knowingly collect data from children.
Your Rights
Since we do not collect personal data or maintain user accounts, there is no personal data to access, correct, or delete. You can:
- Disable crowdsource contributions at any time in Settings
- Avoid LP mode to prevent any image uploads
- Clear all caches in Settings to remove locally stored metadata
- Delete the app to remove all on-device data
For users in the EU/EEA, UK, or California: because we do not collect personal data as defined by GDPR or CCPA, these regulations' data subject rights (access, deletion, portability) do not apply. If you believe we have inadvertently collected personal data, contact us and we will investigate.
Third-Party Services
| Service | Purpose | Data Sent | Privacy Policy |
|---|---|---|---|
| Google Cloud Run | API proxy, metadata | Catalog numbers, artist/title queries | Google Cloud |
| Google Cloud Vision | Album cover recognition (LP mode) | Album cover photograph | Google Cloud |
| Discogs | Marketplace pricing | Release ID | Discogs |
| Apple MusicKit | Music search and playback | Search queries (handled by Apple) | Apple |
| Apple StoreKit | Subscriptions | Payment (handled by Apple) | Apple |
Changes to This Policy
We may update this policy from time to time. The "Last updated" date at the top will reflect the most recent revision. Continued use of the app after changes constitutes acceptance of the updated policy.
Contact
If you have questions about this privacy policy, contact us at:
Email: joeyliechty@gmail.com