PRIVACY POLICY FOR WEB SCROBBLER
Last Updated: October 23, 2026
Web Scrobbler ("we", "our", or "the extension") is an open, privacy-focused browser extension developed to track and scrobble music played on web players to Last.fm, Libre.fm, and ListenBrainz. This Privacy Policy details how Web Scrobbler handles user information, explains the browser permissions requested, and answers whether each permission is strictly necessary.
════════════════════════════════════════════════════════════════════
1. CORE PRIVACY PRINCIPLES
════════════════════════════════════════════════════════════════════
• Zero Data Collection: We do not collect, store, track, sell, or transmit any personally identifiable information (PII), browsing history, search history, passwords, or payment details.
• No Third-Party Analytics or Tracking: The extension does not contain Google Analytics, trackers, telemetry scripts, ad pixels, or external tracking libraries.
• Local-Only Storage: All settings, toggle preferences, cleaned regex filters, and recent scrobble logs are saved exclusively on your local device via Chrome's native storage API.
• Direct Communication: Network calls are only made directly between your browser and the specific music services you deliberately link (e.g., Last.fm or ListenBrainz). No intermediary servers are involved.
════════════════════════════════════════════════════════════════════
2. DETAILED BROWSER PERMISSIONS & WHY THEY ARE USED
════════════════════════════════════════════════════════════════════
Web Scrobbler requests a narrow, purpose-driven set of browser permissions:
A. "storage"
• Purpose: To save your customized extension preferences locally across browser restarts.
• Data Stored: Settings such as your preferred scrobble trigger percentage (e.g., 50%), toggles for video title cleanup, enabled streaming platforms, and a local list of your 50 most recent scrobbles.
• Location: Stored solely within your browser profile via `chrome.storage.local`. Nothing is uploaded to remote servers.
B. "notifications"
• Purpose: To show a brief system banner when a track is successfully scrobbled or marked as "Loved".
• User Control: Can be enabled or disabled at any time in the extension's Settings tab.
C. Host Permissions (Streaming Services: YouTube, Spotify, SoundCloud, Bandcamp, Deezer, Apple Music, Tidal)
• Purpose: Enables Web Scrobbler's lightweight content script to run on supported web players.
• What It Does: Reads the media element (`<video>` / `<audio>`), current track title, artist name, and playback progress to determine when the scrobble threshold has been reached.
• What It Does NOT Do: It does not read your private playlists, cookies, credentials, comments, search queries, or activity outside the active media playback element.
D. Host Permissions (Scrobble APIs: Last.fm, ListenBrainz, Libre.fm)
• Purpose: Allows the extension to send standard HTTPS POST requests containing track title, artist, duration, and timestamp directly to the scrobbling endpoints you configured.
════════════════════════════════════════════════════════════════════
3. ARE ALL THESE PERMISSIONS STRICTLY NECESSARY?
════════════════════════════════════════════════════════════════════
YES. Every permission requested is essential for the core functionality of the extension and adheres strictly to Google Chrome's Least Privilege Principle:
1. Why Not Use `<all_urls>`?
Instead of requesting access to all websites you visit (which would trigger high-alert browser warnings), Web Scrobbler explicitly limits its host permissions to only the specific music streaming domains it supports and the official scrobble endpoints. It has zero capability to interact with your banking, email, shopping, or other personal tabs.
2. Why Is the Storage Permission Needed?
Without `chrome.storage`, the extension would forget your Last.fm link, your threshold preference, and your title cleanup choices every time you close your browser.
3. Why Is Content Script Injection Needed?
Web players (like YouTube and Spotify) do not provide a universal browser API for background extensions to discover what song is playing. The only technical method to detect the currently playing track and its duration is by reading the player DOM elements on those specific domains.
4. What Permissions Are DELIBERATELY EXCLUDED?
To protect your privacy, Web Scrobbler intentionally does NOT request:
• `cookies`: We never read your browser session cookies.
• `webRequest` / `declarativeNetRequest`: We never intercept, modify, or inspect your network traffic.
• `tabs`: We do not monitor which tabs you have open or your general browsing habits.
• `history`: We have zero access to your browsing history.
════════════════════════════════════════════════════════════════════
4. THIRD-PARTY MUSIC SERVICES
════════════════════════════════════════════════════════════════════
When you choose to connect Web Scrobbler to third-party services:
• Last.fm: Track scrobbles and loved statuses are submitted directly to `https://ws.audioscrobbler.com` using standard Last.fm API protocols.
• ListenBrainz: Submissions are delivered directly to `https://api.listenbrainz.org` using your personal ListenBrainz user token.
• Libre.fm: Submissions are sent directly to `https://libre.fm`.
These services operate under their own independent privacy policies and terms of service. Web Scrobbler does not control how Last.fm or ListenBrainz handles your scrobble logs once received.
════════════════════════════════════════════════════════════════════
5. DATA RETENTION & REMOVAL
════════════════════════════════════════════════════════════════════
Because all data resides exclusively in your local browser profile:
• You can clear your local scrobble history at any moment by clicking "Clear" in the History tab.
• You can reset all configurations to defaults in the Settings tab.
• Uninstalling Web Scrobbler from your browser immediately and permanently removes all stored preferences, tokens, and history.
════════════════════════════════════════════════════════════════════
6. CONTACT & INQUIRIES
════════════════════════════════════════════════════════════════════
If you have any questions or feedback regarding this Privacy Policy or Web Scrobbler's data practices, please open an issue on the official project repository or reach out via the Chrome Web Store extension support tab.