This guide covers all available Scrobblet configuration options, which are set through environment variables.
| Variable | Required | Default | Description |
|---|---|---|---|
SCROBBLET_PORT |
No | 7276 |
Port the API server listens on |
SCROBBLET_DATA_PATH |
No | /etc/scrobblet |
Path where application data is stored |
SCROBBLET_LOG_LEVEL |
No | INFO |
The log level. Options: DEBUG, INFO, WARN, ERROR |
SCROBBLET_RATE_LIMIT_RATE |
No | 10 |
Maximum requests per second |
SCROBBLET_RATE_LIMIT_BURST |
No | 100 |
Maximum burst size |
SCROBBLET_SOURCE |
Yes | - | Source to track. Options: Spotify |
SCROBBLET_TARGETS |
Yes | - | Comma-separated list of targets to scrobble to. Options: LastFm, ListenBrainz, Maloja, Koito, CSV |
ℹ️ Spotify Premium account required: Scrobblet uses Spotify's Web API to fetch your currently playing track. Since February 11, 2026, all newly created Development Mode apps require a Spotify Premium account. As of March 9, 2026, this requirement also applies to all existing apps. See the Spotify Developer Blog for full details.
| Variable | Required | Default | Description |
|---|---|---|---|
SPOTIFY_CLIENT_ID |
Yes* | - | Your Spotify app Client ID |
SPOTIFY_CLIENT_SECRET |
Yes* | - | Your Spotify app Client secret |
SPOTIFY_REDIRECT_URL |
Yes* | - | OAuth 2.0 redirect URL (must match your Spotify app Redirect URI) |
*Required only when SCROBBLET_SOURCE=Spotify
To set up Spotify:
- Go to Spotify Developer Dashboard
- Create a new app
- Add
http://127.0.0.1:7276/api/spotify/callback(or your custom URL) to Redirect URIs - Copy the client ID and client secret
- Start Scrobblet with the client ID, client secret, and redirect URL configured
- Visit
http://localhost:7276/api/spotify/loginto authenticate
⚠️ Spotify Redirect URI: Spotify only allows HTTPS Redirect URIs unless you use an explicit IPv4 or IPv6 loopback address (e.g.http://127.0.0.1:7276orhttp://[::1]:7276).If you cannot provide a valid redirect URI, you can intercept the callback and rewrite the address to your Scrobblet instance:
- Run
docker run --rm -p 8080:8080 mendhak/http-https-echo:39on the machine where your browser runs- Set the Spotify Redirect URI and
SPOTIFY_REDIRECT_URLtohttp://127.0.0.1:8080/api/spotify/callback- Visit
http://localhost:7276/api/spotify/loginto authenticate- Replace
127.0.0.1:8080with the address of your Scrobblet instance and open the updated URL
| Variable | Required | Default | Description |
|---|---|---|---|
LASTFM_API_KEY |
Yes* | - | Your Last.fm API key |
LASTFM_SHARED_SECRET |
Yes* | - | Your Last.fm shared secret |
LASTFM_REDIRECT_URL |
Yes* | - | Redirect URL (must match your Last.fm API account callback URL) |
*Required only when SCROBBLET_TARGETS=LastFm
To set up Last.fm:
- Go to Last.fm API Account Creation
- Create an API account
- Set callback URL to
http://127.0.0.1:7276/api/lastfm/callback(or your custom URL) - Copy the API key and shared secret
- Start Scrobblet with the API key and shared secret configured
- Visit
http://localhost:7276/api/lastfm/loginto authenticate
| Variable | Required | Default | Description |
|---|---|---|---|
LISTENBRAINZ_URL |
No | https://api.listenbrainz.org |
URL of a ListenBrainz-compatible service |
LISTENBRAINZ_TOKEN |
Yes* | - | Your ListenBrainz user token |
*Required only when SCROBBLET_TARGETS=ListenBrainz
To set up ListenBrainz:
- Go to ListenBrainz User Settings
- Copy your user token
- Start Scrobblet with the user token configured
✅ ListenBrainz-compatible API support: Scrobblet can scrobble to any service that implements the ListenBrainz API specification. This includes the official ListenBrainz service, self-hosted ListenBrainz instances, or any other compatible implementation. Simply set
LISTENBRAINZ_URLto point to your preferred service.
| Variable | Required | Default | Description |
|---|---|---|---|
MALOJA_URL |
Yes* | - | URL of your Maloja instance (e.g., http://localhost:42010) |
MALOJA_TOKEN |
Yes* | - | Your Maloja API key |
*Required only when SCROBBLET_TARGETS=Maloja
To set up Maloja:
- Access your Maloja instance
- Go to Settings → API Keys
- Generate a new API key
- Start Scrobblet with the API key configured
| Variable | Required | Default | Description |
|---|---|---|---|
KOITO_URL |
Yes* | - | URL of your Koito instance (e.g., http://localhost:4110) |
KOITO_TOKEN |
Yes* | - | Your Koito API key |
*Required only when SCROBBLET_TARGETS=Koito
To set up Koito:
- Access your Koito instance
- Log in
- Go to Settings → API Keys
- Generate a new API key
- Start Scrobblet with the API key configured
| Variable | Required | Default | Description |
|---|---|---|---|
CSV_FILE_PATH |
No | ${SCROBBLET_DATA_PATH}/scrobbles.csv |
Path to the CSV file where scrobbles will be written |
The CSV target writes completed scrobbles to a CSV file with the following format:
- Artists: Multiple artists joined with ", "
- Title: Track title
- Album: Album name
- Track Number: Track number on the album
- Duration: Track duration in seconds
- Started At: ISO 8601 timestamp when tracking started
- Ended At: ISO 8601 timestamp when tracking ended
The CSV file is created automatically with headers on the first scrobble. Subsequent scrobbles are appended to the file.