Spotify Scraper: Artists, Tracks, Playlists, Podcasts avatar

Spotify Scraper: Artists, Tracks, Playlists, Podcasts

Pricing

from $4.00 / 1,000 results

Go to Apify Store
Spotify Scraper: Artists, Tracks, Playlists, Podcasts

Spotify Scraper: Artists, Tracks, Playlists, Podcasts

Scrape Spotify artists, tracks, albums, playlists, podcasts and curator profiles by link, search or ISRC. Play counts, monthly listeners, followers, ISRC, UPC, credits, playlist followers, podcast ratings. $4 per 1,000 results.

Pricing

from $4.00 / 1,000 results

Rating

0.0

(0)

Developer

Epic Scrapers

Epic Scrapers

Maintained by Community

Actor stats

0

Bookmarked

17

Total users

15

Monthly active users

2 days ago

Last modified

Features

Limited permissions

Share

Spotify Scraper: artist stats, playlist analyzer, ISRC finder, podcasts and credits

Spotify Scraper turns any Spotify link, ISRC, UPC or search into clean data: exact play counts, monthly listeners, ISRC and UPC codes, songwriter credits, playlist curators and podcast ratings

Spotify Scraper turns any Spotify link, ISRC, UPC or search into clean JSON, CSV or Excel. One actor covers artists, tracks, albums, playlists, podcasts, episodes and user profiles, with the numbers music businesses work with: exact play counts, monthly listeners, world rank, top cities, playlist followers, curator contacts, podcast ratings, ISRCs, UPCs and songwriter credits. Schedule it and every run also gives you the change since the last one. It works as a Spotify API alternative for everything the official Web API leaves out.

  • Every track, not just the first 100. Playlists and albums come with their whole track list, each track with its exact play count and the date it was added. A 631-track playlist returns 631 tracks.
  • Built for playlist pitching. Search playlists by genre or mood, keep the ones between 1,000 and 100,000 followers that Spotify doesn't own, and get the curator's followers, the date they last added a track, and any email, Instagram or other @handle they list in the description (Spotify has no contact field, so many playlists have none).
  • Catalog data without the Web API. Paste ISRCs or UPCs and get the Spotify track or album with play counts, label, popularity and songwriter, producer and engineer credits. No developer app, no OAuth.
  • Growth tracking built in. Turn on Compare with previous run and schedule it: every row gets the change in play counts, monthly listeners, followers, world rank, playlist followers or podcast ratings.
  • Search everything Spotify searches. Tracks, artists, albums, playlists, podcasts, episodes and user profiles, with more than Spotify's ~200 results per query when you need them.
  • $4 per 1,000 results, no start fee. Track lists are included. ISRC/UPC lookups and credits are optional add-ons, so you only pay for them when you need them.

Who uses it, and how

You areWhat you runWhat you read
Playlist pitching agency or indie artist teamPlaylist searches for your genres, weeklyIndependent playlists in your follower range, with the curator's contacts and how recently they add tracks
Music marketer or promoterThe playlists your tracks are on, dailyfollowersChange and trackCountChange per playlist, and each track's play count and position
Label, A&R scout or managerHundreds of artist links, dailymonthlyListenersChange, worldRankChange, top cities and the latest release, to spot who is breaking out
Catalog, royalty or rights teamLists of ISRCs and UPCsThe matching Spotify track or album with play count, label, release date and credits
Publisher or songwriter repTracks or albums with Track credits onWho wrote and produced each track, to check registrations and find co-writers
Podcast advertiser or agencyPodcast searches by topicRating, number of ratings, episode count and the latest episode date, to shortlist shows to sponsor
Music data company or developerAny mix of links and searches through the APIOne schema for every Spotify object, ready for a database
AI agent builderThe actor as a tool through the Apify MCP serverStructured Spotify data the agent can reason about

How it compares with the Spotify Web API and other scrapers

What you needSpotify ScraperMost Spotify scrapers on ApifySpotify Web API (official)
Exact play countsEvery track, also in playlists and albumsTop tracks and albumsNo, only a 0–100 popularity
Playlist tracksAll, with play count and date addedOften the first 100, without play countsAll, without play counts
Playlist followers and ownerFollowers, owner's followers and playlist countOften not includedFollowers only
Curator contactsEmails, Instagram, @handles and links from the descriptionNoNo
ISRC and UPC lookupYes, also per track in playlists and albumsRarelyYes, with app registration
Songwriter and producer creditsYesRarelyNo
PodcastsSearch, ratings, topics, episodesOften links only, without ratingsNo ratings
Change since the last runBuilt inNo, compare exports yourselfNo
Price$4 per 1,000 results, no start fee$1 to $5 per 1,000, some with a start feeFree, with app registration and rate limits

Quick start

  1. Click Try for free and sign in to Apify. The free plan's monthly credit covers more than 1,000 results.
  2. Paste Spotify links, ISRCs or UPCs into Spotify links, IDs, ISRCs or UPCs, or type keywords into Search terms and pick what to search for. In the Spotify app, use Share → Copy link.
  3. Turn on the add-ons you need: ISRC, UPC and label and Track credits.
  4. Click Start. When the run finishes, open the Output tab and export a view (Artists, Tracks, Playlists, Podcasts or Changes since last run) to CSV, Excel or JSON.
{
"startUrls": [
"https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4",
"https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M",
"USUG11904206"
],
"includeIsrc": true,
"includeCredits": true
}

Ready-to-run workflows

Spotify playlist search: find curators for playlist submission

{
"searchTerms": ["lofi study", "chillhop", "jazzhop", "lofi sleep"],
"searchType": "playlists",
"maxResultsPerSearch": 500,
"minFollowers": 1000,
"maxFollowers": 100000,
"excludeSpotifyPlaylists": true,
"maxItemsPerResult": 0
}

Every playlist that matches, with followers, ownerName, ownerFollowers, ownerPlaylistCount, lastTrackAddedAt and contacts (emails, Instagram, other @handles and links from the description). Sort the Playlists view by lastTrackAddedAt to pitch curators who are still active. Playlists removed by the filters are free.

About contacts: Spotify has no contact field, so contacts only holds what curators write in their playlist description. Search terms decide how many you get. In our tests, terms with "submissions" ("indie submissions", "lofi submissions", "chill submissions") gave 150 playlists, 92 (61%) with a contact and 31 (21%) with an email (November 2026). Plain genres ("indie", "lofi", "chill") gave contacts on 37 of 300 (12%) and emails on 4. Treat contacts as a bonus and use the follower and activity data to choose who to pitch.

To find the curators themselves, search User profiles (curators) with the same keywords: each profile comes with its followers, public playlist count and its playlists with their followers.

Spotify playlist analyzer: followers, curator and your placements

{
"startUrls": [
"https://open.spotify.com/playlist/6zCID88oNjNv9zx6puDHKj",
"https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M"
],
"compareWithPreviousRun": true
}

Each playlist row shows followers, the curator and their followers, isSpotifyOwned, totalPlayCount and when the last track was added: enough to tell an active, real playlist from a dead or botted one before you pitch it. Schedule it daily and each row also has followersChange and trackCountChange, and its tracks list shows every track's position, play count and addedAt, so you can see when your track was added, moved or removed.

Spotify artist stats and A&R watchlist

{
"startUrls": [
"https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4",
"https://open.spotify.com/artist/1Xyo4u8uXC1ZmMpatF05PJ"
],
"compareWithPreviousRun": true
}

Add hundreds of artists and schedule it daily. Sort the Changes since last run view by monthlyListenersChange, check topCities for where the growth comes from and latestRelease for what drives it. relatedArtists (20 per artist) is a ready list of artists to add next.

ISRC finder and UPC finder, in both directions

{
"startUrls": ["USUG11904206", "GBKQU2184377", "00602508924224"],
"includeCredits": true
}

Each ISRC returns the most-played Spotify release of that recording, with isrc, playCount, label, releaseDate, songwriters, producers and the full credits list. Each UPC returns the album; turn on ISRC, UPC and label to also get every track's ISRC. Codes Spotify doesn't have are listed in the run's OUTPUT record and are free. It works the other way too: paste Spotify track or album links with ISRC, UPC and label on to get their ISRC or UPC. Ready-made pages: Spotify ISRC finder and Spotify UPC finder.

Spotify popularity score and song credits

{
"startUrls": [
"https://open.spotify.com/track/0VjIjW4GlUZAMYd2vXMi3b",
"https://open.spotify.com/track/2qSkIjg1o9h3YT9RAgYN75"
],
"includeIsrc": true,
"includeCredits": true
}

Each track row gets popularity (Spotify's 0–100 score, weighted to recent plays) next to the all-time playCount, plus songwriters, producers and the full credits list. Compare scores across your releases and competitors, or check publishing registrations against the credits.

Spotify podcast rankings: shortlist shows to sponsor

{
"searchTerms": ["personal finance", "investing"],
"searchType": "podcasts",
"maxResultsPerSearch": 200,
"maxItemsPerResult": 5
}

Sort the Podcasts view by ratingCount (a good proxy for audience size) and check latestEpisodeDate to skip shows that stopped publishing. Each row has the publisher, topics, episode count and the latest episodes; contacts collects emails and links from the show description.

Full artist catalogs

{
"startUrls": ["https://open.spotify.com/artist/1Xyo4u8uXC1ZmMpatF05PJ"],
"includeDiscography": true
}

The artist row gets releases: every album, single and compilation with its date, label and link. Feed the album links back in to get every track with its play count.

Schedule it and track changes

  1. Save your input as a task. Open the actor, set your input, turn on Compare with previous run and click Save as a new task. Make one task per purpose, for example one for your placements and one for your A&R watchlist.
  2. Schedule the task. In Apify Console, go to Schedules, click Create new, pick a time (for example daily at 07:00 in your time zone) and add your task. See Schedules.
  3. Send the results somewhere. The task's Integrations tab connects Google Sheets, Slack, email, Make, Zapier, n8n and webhooks. With Google Sheets, each run's rows land below the previous ones and build a history you can chart.

What each row type compares with the previous run:

RowFields with previous… and …Change
ArtistmonthlyListeners, followers, worldRank
TrackplayCount, popularity
AlbumtotalPlayCount
Playlistfollowers, trackCount
PodcastratingCount, episodeCount
User profilefollowers

Every row also has previousScrapedAt. The first run of an object has empty previous… fields; changes start from the second run. Values are remembered in your Apify account and shared by all your tasks.

What data can you extract?

RowFields
ArtistmonthlyListeners, followers, worldRank, popularity, topCities (city, country, listeners), verified, biography, externalLinks, albumCount, singleCount, compilationCount, appearsOnCount, latestRelease, topTracks (10, with play counts), relatedArtists (20), artistPlaylists, upcomingConcerts, imageUrl, headerImageUrl; with Artist discography: releases
TrackplayCount, artistName, artists, albumName, albumType, releaseDate, trackNumber, discNumber, durationMs, explicit, playable; with ISRC, UPC and label: isrc, label, languages, popularity; with Track credits: songwriters, producers, credits (name, role, group)
AlbumalbumType, artistName, releaseDate, label, copyright, phonographicCopyright, trackCount, totalPlayCount, tracks (each with playCount); with ISRC, UPC and label: upc, popularity, and isrc and popularity on every track
Playlistfollowers, trackCount, description, ownerName, ownerUrl, ownerFollowers, ownerPlaylistCount, isSpotifyOwned, collaborative, lastTrackAddedAt, firstTrackAddedAt, totalPlayCount, contacts, tracks (each with playCount and addedAt; with the add-on also isrc and popularity)
Podcastpublisher, description, rating, ratingCount, topics, episodeCount, latestEpisodeDate, mediaType, explicit, contacts, episodes (newest first, with release date, duration, video flag and description)
Episodeshow, release date, duration, video or audio, description, audio preview
User profilefollowers, following, publicPlaylistCount, verified, playlists (each with its followers)

Every row also has type, id, name, url, scrapedAt, and input or searchTerm with searchRank, so you can trace it back to what you asked for.

Output examples

Real rows from October 2026, shortened.

Artist

{
"type": "artist",
"id": "3TVXtAsR1Inumwj472S9r4",
"name": "Drake",
"url": "https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4",
"verified": true,
"monthlyListeners": 94687381,
"followers": 117837479,
"worldRank": 8,
"popularity": 100,
"topCities": [{ "city": "London", "region": "ENG", "country": "GB", "listeners": 2018639 }],
"albumCount": 22,
"singleCount": 65,
"appearsOnCount": 911,
"latestRelease": {
"name": "HABIBTI (FOMO)",
"type": "album",
"releaseDate": "2026-10-02",
"label": "OVO/Republic",
"trackCount": 15
},
"topTracks": [{ "position": 1, "name": "One Dance", "playCount": 4504086419, "artistName": "Drake, Wizkid, Kyla" }],
"relatedArtists": [{ "id": "1RyvyyTE3xzB2ZywiAwp0i", "name": "Future" }],
"scrapedAt": "2026-10-08T14:12:43.285Z"
}

Track from an ISRC, with credits

{
"type": "track",
"name": "Blinding Lights",
"url": "https://open.spotify.com/track/0VjIjW4GlUZAMYd2vXMi3b",
"playCount": 5623655578,
"popularity": 91,
"isrc": "USUG11904206",
"artistName": "The Weeknd",
"albumName": "After Hours",
"albumType": "album",
"releaseDate": "2020-03-20",
"label": "Republic Records",
"trackNumber": 9,
"discNumber": 1,
"languages": ["en"],
"songwriters": "Max Martin, Oscar Holter, Abel Tesfaye, Ahmad Balshe, Jason \"DaHeala\" Quenneville",
"producers": "Max Martin, Oscar Holter, The Weeknd",
"credits": [{ "name": "Max Martin", "role": "Composer", "group": "Composition & Lyrics" }],
"input": "USUG11904206"
}
{
"type": "playlist",
"name": "Lofi Study 2026",
"url": "https://open.spotify.com/playlist/6zCID88oNjNv9zx6puDHKj",
"followers": 624612,
"trackCount": 237,
"ownerName": "Lofi Girl",
"ownerUrl": "https://open.spotify.com/user/chilledcow",
"ownerFollowers": 1871428,
"ownerPlaylistCount": 82,
"isSpotifyOwned": false,
"lastTrackAddedAt": "2026-09-29T11:52:01Z",
"contacts": { "emails": [], "instagram": [], "handles": [], "links": ["https://bit.ly/lofi-sleep-spotify"] },
"tracks": [
{
"position": 1,
"name": "94",
"artistName": "Mavine",
"playCount": 3262855,
"addedAt": "2026-09-29T11:52:01Z"
}
],
"searchTerm": "lofi study",
"searchRank": 2
}

Podcast

{
"type": "show",
"name": "Lex Fridman Podcast",
"publisher": "Lex Fridman",
"rating": 4.75,
"ratingCount": 83182,
"topics": ["Technology"],
"episodeCount": 503,
"latestEpisodeDate": "2026-09-17",
"episodes": [
{
"position": 1,
"name": "#502 – Psychiatry, Insane Asylums, Mental Illness, ECT, Lobotomies, Freud & Jung",
"releaseDate": "2026-09-17",
"durationMs": 13409643,
"video": true
}
]
}

With Compare with previous run, rows from the second run on also have the previous… and …Change fields listed above. The run's key-value store has an OUTPUT record with the status of every link and search term.

For AI agents

Call epicscrapers/spotify-scraper with links, IDs, ISRCs or UPCs:

{ "startUrls": ["https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4", "USUG11904206"], "includeIsrc": true }

or with a search: { "searchTerms": ["lofi"], "searchType": "playlists", "maxResultsPerSearch": 50 } (searchType: tracks, artists, albums, playlists, podcasts, episodes, users).

One row per Spotify object, with type, id, name, url, scrapedAt. Key fields: artist monthlyListeners, followers, worldRank, topCities, topTracks; track playCount, isrc, popularity, songwriters; album upc, tracks; playlist followers, ownerName, lastTrackAddedAt, contacts, tracks; show rating, ratingCount, episodeCount. Inputs that aren't found are skipped, free, and listed in the OUTPUT record.

Spotify API alternative: use it from code or a Spotify MCP server

Through the Apify API or the JavaScript and Python clients:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_API_TOKEN>")
run = client.actor("epicscrapers/spotify-scraper").call(run_input={
"startUrls": ["https://open.spotify.com/artist/3TVXtAsR1Inumwj472S9r4", "USUG11904206"],
"includeIsrc": True,
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["type"], item["name"], item.get("playCount") or item.get("monthlyListeners"))

As a Spotify MCP server for Claude, Cursor and other AI agents, through the Apify MCP server limited to this actor:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=epicscrapers/spotify-scraper"

Then ask, for example: "Find 50 independent lofi playlists with 5,000 to 50,000 followers that added a track this month, and list their curators' contacts."

Analyze the results with ChatGPT or Claude

Export a view as CSV and attach it to a chat. Some prompts to start with:

  • Pitch list. "These are Spotify playlists from a search. Keep the ones with lastTrackAddedAt in the last 30 days and at least one email or Instagram in contacts. Rank them by followers and write one line per playlist on why it fits a chill lofi single."
  • Breakouts. "These are artist rows from a daily run. Rank the artists by monthlyListenersChange relative to monthlyListeners and list their top cities. Who grows fastest from a small base?"
  • Catalog check. "These are tracks matched from our ISRC list. Group them by label and list the tracks whose songwriters don't include any of our writers: [names]."

Cost

Pay per event, with no subscription and no start fee. Platform usage and proxies are included.

EventPriceWhen
Result$4 per 1,000 ($0.004 each)Each row: an artist, track, album, playlist, podcast, episode or user profile, with its full track or episode list
ISRC or UPC lookup$1 per 1,000 ($0.001 each)Each track or album that gets its ISRC or UPC, including each track listed in an album or playlist. With ISRC, UPC and label on, and for ISRC and UPC inputs
Track credits$2 per 1,000 ($0.002 each)With Track credits on: each track row with its credits

Links that aren't found, and search results removed by the playlist filters, are free.

ExampleCost
300 curator playlists for one keyword$1.20
One 631-track playlist with every play count$0.004
The same playlist with every track's ISRC$0.635
50 placement playlists, daily for 30 days$6 a month
A&R watchlist of 200 artists, daily for 30 days$24 a month
1,000 ISRCs → track with ISRC, label and play count$5
1,000 ISRCs → the same with credits$7
500 podcasts from a topic search$2

Set Maximum cost per run in the run options to cap a run. The actor checks each result's full price, add-ons included, before saving it, and stops cleanly at the limit.

Tips

  • Need a quick list? Turn off Open every search result to get names and links fast, then scrape the ones you need.
  • Only need playlist metadata? Set Max tracks or episodes per result to 0.
  • Very large playlists? Raise Max tracks or episodes per result above the default 1,000.
  • Many links? Put them all in one run; up to 10 are read at once.
  • Need one row per track with daily streams for whole discographies? Use Spotify Play Count Scraper, our play count specialist.

Limitations

  • Lyrics, audio features (tempo, key, danceability) and genres aren't public without a Spotify login, so they aren't included.
  • Spotify returns about 200 results per search query. For more, the actor adds related queries (e.g. "lofi playlist", "best lofi", "lofi 2026"), so later results can drift from the exact keyword.
  • An ISRC can belong to several Spotify releases (single and album); the actor returns the most-played one.
  • lastTrackAddedAt and firstTrackAddedAt come from the listed tracks and the playlist's last 100 tracks.
  • Search results depend on the country of the proxy IP, as on Spotify.

FAQ

Do I need a Spotify account, API key or proxies?

No. The actor uses Spotify's public web player data, doesn't log in and handles connections and retries itself.

Does the official Spotify API give play counts?

No. The Spotify Web API only has a 0–100 popularity score, and no monthly listeners, world rank, top cities, credits or podcast ratings. This actor returns the numbers Spotify shows in its app.

What is the Spotify popularity score?

A 0–100 score Spotify computes for every track and artist, weighted to recent plays. An old hit can have billions of plays and a lower score than a new viral song. Turn on ISRC, UPC and label to get it for tracks; artists always have it.

How do I find the ISRC of a Spotify song?

Paste the song link with ISRC, UPC and label on; the isrc field holds the code. To go the other way, paste the ISRC itself and get the Spotify track. The same works for albums and UPCs.

Can I export a Spotify playlist to CSV or Excel?

Yes. Paste the playlist link, then export the run from the Output tab. Each playlist comes with every track, its play count and the date it was added. For one row per track, use Spotify Play Count Scraper.

How fresh is the data?

Every run reads Spotify live, so you get the numbers Spotify shows at that moment. Every row has a scrapedAt timestamp.

It was deleted, isn't available, or the ID is wrong. The log names it, the OUTPUT record shows its status, and you aren't charged for it.

Why did my run stop early?

The run reached its maximum cost or your account's spending limit. Everything collected before that is saved. Raise the limit in the run options to collect more.

The actor reads only public data that Spotify shows to every visitor. Playlist and podcast descriptions can contain personal data such as emails; use it only with a legitimate reason and in line with GDPR and similar laws. You are responsible for how you use the data, including Spotify's terms.

Support

Report problems or request features in the Issues tab. Include the run ID, the input and what you expected. We read every issue.

This actor is not affiliated with or endorsed by Spotify AB. "Spotify" is a trademark of Spotify AB.