Spotify Scraper
Pricing
from $1.19 / 1,000 results
Spotify Scraper
Scrape Spotify albums, tracks, artists and playlists with full metadata: popularity, genres, available markets, ISRC/UPC, followers, tracklists, cover art and audio previews. Works out of the box; add free Spotify API credentials for keyword search and complete metadata.
Pricing
from $1.19 / 1,000 results
Rating
0.0
(0)
Developer
Unfenced Group
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
5 hours ago
Last modified
Categories
Share

Scrape Spotify albums, tracks, artists and playlists with full metadata — popularity, genres, available markets, ISRC/UPC codes, follower counts, full tracklists, cover art and audio previews. Works out of the box for any Spotify URL. Add free Spotify API credentials to unlock keyword search and complete metadata.
Two ways to run
Embed mode — no setup
Paste any Spotify URL or URI (album, track, artist or playlist) and the scraper returns its core metadata immediately. No account, no credentials, no configuration. Keyword search is not available in this mode.
API mode — free credentials, full power
Add a Spotify Client ID and Client Secret (free, two minutes to create) and the scraper unlocks:
- Keyword search across albums, tracks, artists and playlists
- Popularity scores, genres, follower counts
- Available markets per item, ISRC (tracks) and UPC (albums) codes
- Record label, copyrights, release-date precision
- Full tracklists for albums and playlists with per-track metadata
- Artist to discography expansion
Both modes use the same flat per-result pricing.
How to get free Spotify API credentials
- Go to the Spotify Developer Dashboard at developer.spotify.com/dashboard and log in with any Spotify account.
- Click Create app. Give it any name and description. For the redirect URI you can enter
https://localhost(it is not used by this scraper). - Open the app, then Settings. Copy the Client ID and Client Secret.
- Paste them into the
clientIdandclientSecretfields below.
The credentials are stored encrypted and used only to request a read-only catalogue token. No user login or personal data is involved.
Why this scraper?
Artist stats the official API can't give you
Turn on artist stats and every artist returns monthly listeners, world rank, follower count, top listener cities (with per-city listener numbers), top tracks with exact play counts, biography, verified status and related artists. These are the figures the Spotify app shows and the official Web API does not expose. No credentials needed — works in both modes.
Most fields on the platform
Popularity, genres, markets, ISRC/UPC, label, copyrights, followers, tracklists, cover art in every size, and audio previews — the full Spotify catalogue object, not a thin subset.
Real keyword search
Search the entire Spotify catalogue by keyword across four entity types in one run.
Full tracklists
Albums and playlists return every track with title, artists, duration, explicit flag, ISRC, popularity and preview URL.
Market-aware
Pick any Spotify market to get accurate availability and playability, and see every market an item is available in.
Pay only for results
Flat per-item pricing. You only pay for items actually returned. Filtered-out items and failed retries are never charged.
Input parameters
| Field | Type | Default | Description |
|---|---|---|---|
searchQuery | string | "" | Keyword(s) to search Spotify. Requires API credentials. |
entityTypes | array | ["album","track"] | What to search for: album, track, artist, playlist. |
startUrls | array | [] | Spotify URLs or URIs to scrape directly. Works in both modes. |
spotifyIds | array | [] | Spotify IDs or URIs. URIs (spotify:album:ID) are preferred over bare IDs. |
maxResults | integer | 10 | Maximum number of items to return. |
market | string | US | ISO market for availability and catalogue (API mode). |
includeTracklist | boolean | false | Fetch full tracklists for albums and playlists (API mode). |
expandArtistAlbums | boolean | false | Also scrape an artist's albums and singles (API mode). |
includeArtistStats | boolean | false | For artists, fetch monthly listeners, world rank, top cities, top tracks with play counts, biography and related artists. Both modes, no credentials. |
filterTypes | array | [] | Keep only these types in the output. |
explicitFilter | string | all | all, clean, or explicit. |
genres | array | [] | Filter by genre (substring match). |
minPopularity | integer | - | Only items with popularity (0-100) at least this value. |
releasedAfter | string | "" | Only items released on or after this date (YYYY-MM-DD). |
releasedBefore | string | "" | Only items released on or before this date (YYYY-MM-DD). |
includeMedia | boolean | true | Include cover art and audio preview URLs. |
clientId | string | "" | Spotify app Client ID (enables API mode). |
clientSecret | string (secret) | - | Spotify app Client Secret. Stored encrypted. |
useProxy | boolean | false | Route requests through Apify Proxy. |
Output schema
Fields vary by entity type and by mode. API mode returns the full set; embed mode returns the core subset. Every item carries type, id, uri, name, artistName, spotifyUrl, source (api or embed) and scrapedAt.
Album
albumType, artists[], releaseDate, releaseDatePrecision, totalTracks, label, genres[], popularity, upc, copyrights[], availableMarkets[], marketCount, images[], coverUrl, and tracks[] when tracklists are enabled.
Track
artists[], albumId, albumName, albumType, releaseDate, trackNumber, discNumber, durationMs, durationSec, explicit, popularity, isrc, previewUrl, isPlayable, availableMarkets[], marketCount, images[], coverUrl.
Artist
genres[], popularity, followers, images[], coverUrl. With includeArtistStats on, also: monthlyListeners, worldRank, verified, biography, topCities[] (city, country, region, listeners), topTracks[] (name, uri, playcount), relatedArtists[], albumCount, singleCount.
Playlist
description, owner, isPublic, collaborative, followers, totalTracks, images[], coverUrl, and tracks[] when tracklists are enabled.
Example track (API mode)
{"type": "track","id": "0VjIjW4GlUZAMYd2vXMi3b","uri": "spotify:track:0VjIjW4GlUZAMYd2vXMi3b","name": "Blinding Lights","artists": [{ "id": "1Xyo4u8uXC1ZmMpatF05PJ", "name": "The Weeknd" }],"artistName": "The Weeknd","albumName": "After Hours","trackNumber": 9,"durationSec": 200,"explicit": false,"popularity": 92,"isrc": "USUG11904206","previewUrl": "https://p.scdn.co/mp3-preview/...","marketCount": 184,"coverUrl": "https://i.scdn.co/image/...","spotifyUrl": "https://open.spotify.com/track/0VjIjW4GlUZAMYd2vXMi3b","source": "api"}
Examples
1. Search tracks by keyword (API mode)
{"searchQuery": "the weeknd","entityTypes": ["track"],"market": "US","maxResults": 20,"clientId": "your_client_id","clientSecret": "your_client_secret"}
2. Scrape an album with its full tracklist
{"startUrls": ["https://open.spotify.com/album/4yP0hdKOZPNshxUOjY0cZj"],"includeTracklist": true,"clientId": "your_client_id","clientSecret": "your_client_secret"}
3. Scrape any URL without credentials (embed mode)
{"startUrls": ["https://open.spotify.com/track/0VjIjW4GlUZAMYd2vXMi3b","https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M"]}
4. An artist's full discography
{"searchQuery": "daft punk","entityTypes": ["artist"],"expandArtistAlbums": true,"clientId": "your_client_id","clientSecret": "your_client_secret"}
5. Artist stats — monthly listeners, world rank, play counts (no credentials)
{"startUrls": ["https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4"],"includeArtistStats": true}
Pricing
$1.49 per 1,000 items — you only pay for items actually returned. Failed retries and filtered-out items are never charged.
| Items | Cost |
|---|---|
| 100 | ~$0.15 |
| 1,000 | ~$1.49 |
| 10,000 | ~$14.90 |
| 100,000 | ~$149.00 |
Subscribers pay less at every tier, down to $0.89 per 1,000 on the Diamond plan.
Use the Max results cap to control your spend exactly.
Notes and limitations
- Keyword search requires API credentials. Spotify has no public search endpoint without authentication. Credentials are free.
- Spotify is streaming-only — there are no purchase prices to scrape. The scraper returns popularity, availability and rich metadata instead.
- Audio previews are 30-second clips and are not available for every track.
- Embed mode resolves known URLs/URIs only; it returns a core metadata subset (name, artists, duration, explicit, release date, cover, preview, and tracklists for albums/playlists/artist top tracks).
- Respect Spotify's Developer Terms when using their API. This scraper extracts catalogue metadata only — no user data, no audio.
Technical details
- Auth: client-credentials OAuth (read-only catalogue) when credentials are supplied; token-free embed extraction otherwise.
- Memory: 512 MB.
- Retry: automatic retry with exponential backoff, honors Spotify
Retry-Afteron rate limits. - Output: every run writes an
OUTPUTsummary and aHEALTHstatus to the key-value store.
Need a custom scraper?
Unfenced Group builds Apify actors for any website — for free.
If the site you need isn't in our portfolio yet, just ask. We scope, build, and publish it at no cost to you. You only pay for results — we absorb the compute and proxy costs ourselves. Same pay-per-result pricing, same quality, same standards as every actor in this portfolio.
Get in touch: www.unfencedgroup.nl