Privacy Policy
Last updated: July 6, 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. It also covers the Label Mate website.
Summary
Label Mate is designed to work primarily on-device. We do not create Label Mate user accounts and do not use analytics or advertising frameworks. The app sends limited data to cloud services when needed to identify records and fetch metadata. If you choose to connect your Discogs account, the app uses it on your behalf as described below. The only personal information we ever hold is an email address you voluntarily submit to the Android waitlist on our website.
Data Collected
Data We Do Not Collect
- 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
- No access to your photo library or contacts
On-Device Data
The following data is stored only on your device:
- App preferences: settings, toggles, and UI state (stored in UserDefaults)
- Scan history: your recent scans (stored in a file in the app's private storage)
- Prepare list: tracks you save for later
- Manual label drafts: labels you create in the print hub (stored in a file in the app's private storage)
- Discogs data cache: if you connect a Discogs account, a local copy of your collection and wantlist, including your Discogs notes and date-added information, so browsing works quickly and offline
- Scan and print counters, trial status: daily scan count, daily print count, and free trial start date (stored in Keychain)
- Discogs sign-in tokens: if you connect a Discogs account, your OAuth tokens (stored in Keychain; removed when you log out)
- 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, track titles, and text fragments read from the label to our Cloud Run API to fetch metadata (tracklists, credits, YouTube video links). For cover recognition, the app computes a compact numeric "fingerprint" of the cover (an embedding and perceptual hashes) on-device and sends that fingerprint, not the photo, to our API for matching. These are music-identification signals, not personal data. No user identifier is attached to these requests.
API endpoint: hosted on Google Cloud Run (us-central1)
Images Sent to Cloud Services
Most scanning happens entirely on-device. A photo of the record label or cover leaves your device only in these cases:
- Text-reading fallback: if on-device text recognition can't read a label confidently, the app sends the label photo to Google Cloud Vision via our proxy server for better text detection. Google processes these images under Google Cloud's Privacy Policy; we do not store them.
- Cover-identification fallback: if cover matching is ambiguous, the app may send the cover photo to Google's Gemini model via our proxy server to help identify the album. We do not store these images.
- Missed-match reports: if "Help improve the database" is enabled and cover matching fails to find your record, the app uploads the cover photo (with the text fragments read from it) to our storage so we can fix the gap. See "Optional Crowdsource Contributions" below.
Discogs
You can optionally connect your Discogs account to browse your collection and wantlist, see marketplace pricing, print labels for your records, and list records for sale.
- Sign-in: authentication uses Discogs OAuth. Your Discogs credentials (password) are never seen by the app or by us; you sign in on discogs.com.
- Request signing: the Discogs API requires each request to be cryptographically signed with an application secret we cannot ship in the app. To sign a request, the app sends the request details and your OAuth token to our proxy server, which returns a signature. Your token is used only to compute the signature and is not stored on our servers.
- API calls: the actual Discogs API calls (collection, wantlist, pricing, listings) go directly from your device to Discogs under your account and are subject to the Discogs Privacy Policy and Discogs Terms.
- Pricing: marketplace pricing is fetched under your own Discogs account and cached on-device per Discogs API terms.
- Disconnecting: logging out of Discogs in the app deletes your tokens from the device. You can also revoke Label Mate's access in your Discogs account settings.
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 release ID
- YouTube video matches: release ID, track title, and YouTube video ID
- Streaming matches: release ID, track title, and matched Apple Music song ID
- BPM and key data: release ID, track title, and detected tempo/musical key
- Missed-match reports: a photo of the record cover the app failed to identify, plus the text read from it and the candidates the app considered
No user identifier, device identifier, or personal data is included in these reports. You can disable contributions at any time in Settings; the same toggle controls missed-match photo uploads.
Camera
The app uses your camera to scan record labels, album covers, and barcodes. By default, camera frames are processed on-device using Apple's Vision framework and on-device machine-learning models. Images leave your device only in the specific fallback and contribution cases described above. The app does not access your photo library.
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 read your Apple Music listening history or library. If you enable the optional playlist auto-add feature (off by default), the app adds identified songs to an Apple Music playlist you choose. This is a write to your own library, performed at your direction, and no information about it is sent to us.
YouTube
Label Mate uses YouTube API Services to find and play videos of the records you scan when a track isn't available on Apple Music. By using the app's video playback features you agree to the YouTube Terms of Service. Google's handling of data in connection with YouTube is described in the Google Privacy Policy.
- What is sent to YouTube: search queries built from record metadata (artist names and track titles — music-identification signals, not personal data). The app never connects to your Google or YouTube account, and no Label Mate user identifier accompanies these requests.
- Embedded playback: videos play in the official YouTube embedded (IFrame) player inside the app. During playback, YouTube may collect information (such as your IP address and viewing activity) directly, as described in the Google Privacy Policy — the same as watching an embedded YouTube video on any website.
- What we store: the app caches release-to-video-ID mappings (which YouTube video matches which record) on your device for up to 30 days, and our database stores the same anonymous mappings to speed up matching for everyone. These mappings contain no personal data.
- Deletion: clear the app's caches in Settings or delete the app to remove all locally stored YouTube-related data (cached video mappings and any player state). Because we attach no user identifier, we hold no YouTube-related data about you on our servers to delete. You can also clear your YouTube watch history in your own Google account settings if you are signed in to YouTube elsewhere.
- No account access: the app does not request access to, read from, or write to any Google or YouTube account. There is nothing to revoke; if you ever want to review third-party access to your Google account generally, visit Google security settings.
Website (Android Waitlist)
Our website offers an optional Android waitlist. If you submit your email address, we store it in our database for one purpose only: to notify you when an Android version is available. We do not share, sell, or use it for marketing. Email joeyliechty@gmail.com to have your address removed at any time.
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, clear caches in Settings, or (for Discogs tokens and cache) log out of Discogs.
- 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 contributions (barcode, video, streaming, BPM/key mappings and missed-match photos) are stored until processed or indefinitely to improve the database. Because no user identifier is attached, we cannot associate this data with you or delete specific contributions.
- Android waitlist emails: stored until the Android version launches and notifications are sent, or until you ask us to remove yours.
Children's Privacy
Label Mate is not directed at children under 13. We do not knowingly collect data from children.
Your Rights
The app does not require an account and attaches no user identifier to its cloud requests. You can:
- Disable crowdsource contributions (including missed-match photo uploads) at any time in Settings
- Disconnect your Discogs account in Settings, which deletes the tokens and cached collection data from your device; you can also revoke access on discogs.com
- Clear all caches in Settings to remove locally stored metadata
- Delete the app to remove all on-device data
- Request removal of your Android waitlist email by contacting us
For users in the EU/EEA, UK, or California: the only personal data we hold is an email address you voluntarily submit to the Android waitlist. You may request access to or deletion of it at any time by emailing us. Data in your Discogs account is controlled by Discogs and subject to their privacy policy and your Discogs account settings.
Third-Party Services
| Service | Purpose | Data Sent | Privacy Policy |
|---|---|---|---|
| Google Cloud Run | API proxy, metadata, cover matching | Catalog numbers, artist/title queries, label text, cover fingerprints | Google Cloud |
| Google Cloud Vision | Text-reading fallback | Label photograph (fallback only) | Google Cloud |
| Google Gemini | Cover-identification fallback | Cover photograph (fallback only) | Google Cloud |
| Discogs | Collection, wantlist, pricing, listings (if connected) | API requests under your Discogs account | Discogs |
| YouTube API Services | Video search and embedded playback | Artist/track search queries; playback via the YouTube IFrame player | |
| Apple MusicKit | Music search, playback, optional playlist add | Search queries (handled by Apple) | Apple |
| Apple StoreKit | Subscriptions | Payment (handled by Apple) | Apple |
| Amazon | Printer gear recommendations | Nothing sent by the app; links open Amazon with our affiliate tag | Amazon |
The printer and supply recommendations in the app link to Amazon using our Amazon Associates affiliate tag; we may earn a commission on qualifying purchases. The app sends no data to Amazon; the links simply open in your browser, where Amazon's own privacy policy applies.
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