Pricing
from $5.00 / 1,000 artist scrapeds
Spotify Monthly Listeners Scraper
Get Spotify artist monthly listeners, followers, world rank, and top listener cities from an artist URL, ID, or name. HTTP-only, no API key, MCP-ready.
Pricing
from $5.00 / 1,000 artist scrapeds
Rating
0.0
(0)
Developer
Actor stats
0
Bookmarked
1
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Get any Spotify artist's monthly listeners, followers, world rank, and top listener cities β from an artist URL, ID, or just a name. No API key, no login, no Spotify app registration. Built for music marketers, A&R, playlist pluggers, distributors, and AI agents.
What it does
Give it a list of artists. For each one it returns the live popularity numbers Spotify shows on the artist page, as clean structured JSON:
- Monthly listeners β the headline artist KPI.
- Followers β total Spotify followers.
- World rank β global popularity position (when Spotify exposes it).
- Top listener cities β up to 5 cities with per-city listener counts (city, country, region).
- Artist identity β name, verified status, Spotify URL/URI, ID, avatar image.
You can mix input styles freely in one run:
| You paste | It does |
|---|---|
Taylor Swift (a name) | Searches Spotify, takes the top matching artist |
https://open.spotify.com/artist/06HL4z0CvFAxyc27GXpf02 | Uses that exact artist |
spotify:artist:06HL4z0CvFAxyc27GXpf02 | Uses that exact artist |
06HL4z0CvFAxyc27GXpf02 (bare 22-char ID) | Treats it as an artist ID |
Album, track, and playlist links are not artists β they are skipped with a clear hint so you don't get charged for the wrong thing.
When to use it
- Track artist momentum week over week for marketing or A&R.
- Benchmark a roster or a competitor set by monthly listeners.
- Find where an artist's audience actually lives (top cities) for tour routing or ad targeting.
- Feed an AI agent a name and get back structured popularity data in one tool call.
When not to use it: if you need albums, tracks, playlists, podcasts, play counts, or full discography, use the broader Spotify All-in-One Scraper. This actor is deliberately lean and focused on listener/popularity stats only.
Output
One flat record per artist:
{"query":"Taylor Swift","resolvedVia":"search","type":"artist","id":"06HL4z0CvFAxyc27GXpf02","uri":"spotify:artist:06HL4z0CvFAxyc27GXpf02","url":"https://open.spotify.com/artist/06HL4z0CvFAxyc27GXpf02","name":"Taylor Swift","verified":true,"monthlyListeners":84213765,"followers":132847901,"worldRank":3,"topCities":[{"city":"London","country":"GB","region":"England","listeners":1284551},{"city":"New York","country":"US","region":"New York","listeners":1102934}],"avatarImage":"https://i.scdn.co/image/...","scrapedAt":"2026-06-20T22:41:09.412Z"}
resolvedVia tells you how the input was matched: url, uri, id, or search. When matched by name, double-check name against what you intended β search returns the single most popular match.
Pricing
Pay-per-event, premium tier:
| Event | Price |
|---|---|
| Actor start | $0.00005 |
| Artist scraped | $0.005 per artist |
You are billed only for artists that successfully return data. Skipped inputs (non-artist links, blank lines) and failed lookups are not charged. A 100-artist run costs about $0.50. The run prints its maximum cost cap up front and the actual billed amount at the end.
Input
| Field | Type | Default | Notes |
|---|---|---|---|
artists | string[] | β | Artist URLs, URIs, IDs, or names. Mix freely. |
topCitiesLimit | integer | 5 | Top cities per artist (0β50). Set 0 to omit. Does not affect billing. |
maxResults | integer | 50 | Hard cap on artists processed and billed. |
proxyConfiguration | object | Apify Proxy (auto) | Datacenter US by default; works for Spotify. |
Example input
{"artists":["Taylor Swift","https://open.spotify.com/artist/4q3ewBCX7sLwd24euuV69X","Drake","spotify:artist:1Xyo4u8uXC1ZmMpatF05PJ"],"topCitiesLimit":5,"maxResults":50}
Run it from code
Node.js (apify-client)
import{ ApifyClient }from'apify-client';const client =newApifyClient({token:'YOUR_APIFY_TOKEN'});const run =await client.actor('khadinakbar/spotify-monthly-listeners-scraper').call({artists:['Taylor Swift','The Weeknd','Bad Bunny'],topCitiesLimit:5,});const{ items }=await client.dataset(run.defaultDatasetId).listItems();for(const a of items){console.log(`${a.name}: ${a.monthlyListeners?.toLocaleString()} monthly listeners (#${a.worldRank})`);}
Python (apify-client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_APIFY_TOKEN")run = client.actor("khadinakbar/spotify-monthly-listeners-scraper").call(run_input={"artists":["Taylor Swift","The Weeknd","Bad Bunny"],"topCitiesLimit":5,})for a in client.dataset(run["defaultDatasetId"]).iterate_items():print(a["name"], a["monthlyListeners"], a.get("worldRank"))
Use with AI agents (MCP)
This actor is MCP-ready. Connect via Apify's hosted MCP server and an agent can call it with a single artist name or URL and receive structured popularity data. Input is narrow (one artists list), output is flat and small (well under the per-item token budget), and errors are actionable.
How it works
The actor talks to the same endpoints Spotify's own web player uses. It extracts the current rotating auth token from the live web-player bundle (so it self-heals when Spotify rotates the secret), then calls the Partner API's queryArtistOverview operation for each artist. No browser is launched β it is pure HTTP, which keeps runs fast and cheap. Names are resolved to artists via Spotify's searchDesktop operation.
Reliability
- Self-healing auth β the token secret and operation hash are pulled live from Spotify's web player each run, so routine rotations don't break the actor.
- Honest failure β if Spotify blocks every request, the run fails clearly instead of silently returning an empty dataset.
- Soft input handling β bad or non-artist inputs are skipped with a reason, never crash the run.
- Cost guard β the run respects
maxResultsand never bills past the cap.
FAQ
Do I need a Spotify account or API key? No. Nothing to register, no login.
How fresh are the numbers? They are read live at run time β the same values shown on the public artist page.
Why was an album/playlist link skipped? Monthly listeners is an artist-level metric. Paste the artist's own page, ID, or name instead.
Can it return more than 5 cities? Spotify only exposes the top 5 listener cities publicly, so that is the ceiling.
A name matched the wrong artist β why? Name search returns the single most popular match. For exact control, paste the artist's Spotify URL or ID.
Does it work outside the US? The data is global. The default proxy is US datacenter; you can switch proxy region in the input.
Legal & compliance
This actor collects only publicly available data shown on Spotify's public artist pages. It does not log in, bypass authentication, or access private/account data. You are responsible for using the data in compliance with Spotify's Terms of Service, applicable laws, and any data-protection regulations (e.g. GDPR) that apply to your use case. Not affiliated with or endorsed by Spotify.
Related actors
- Spotify All-in-One Scraper β artists, albums, tracks, playlists, podcasts, episodes, search, play counts.
