Spotify Podcast Charts Scraper
Pricing
$0.01 / 1,000 podcast shows
Spotify Podcast Charts Scraper
Get current Spotify podcast chart rankings by market and chart. Each row includes the show name, rank, Spotify link, and observation time, plus movement, publisher, description, and artwork when supplied. Choose one or many markets and charts, then keep all available shows or set a per-pair limit.
Pricing
$0.01 / 1,000 podcast shows
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
6 days ago
Last modified
Categories
Share
🎙️ Track Spotify podcast charts by market
Podcast networks, media researchers, sponsorship teams, and data teams can collect current ranked podcast listings from Spotify's public charts. Choose markets and charts, then get one dataset row per show with its rank, Spotify identity, public link, chart details, and observation time. Publisher, description, artwork, Spotify movement, and numeric rank change are included when the source provides them.
This gives you a clean snapshot to compare shows across markets or use in your own data work.
Use it for
- Review Spotify Trending Podcasts for a current view of trending shows in a selected market.
- Collect Spotify Podcast Charts for a chosen market and chart.
- Check Podcast Rankings This Week when you need a fresh chart snapshot.
- Find Top 10 Podcasts On Spotify for a short ranked list.
- Compare Top Podcasts On Spotify across selected markets.
📈 Spotify podcast ranking rows
Each saved row represents one podcast listing from one selected market and chart. It keeps the name, stable Spotify ID, public show URL, chart rank, market, chart, observation time, and source chart URL together. Optional fields add Spotify's movement label, numeric rank change, publisher, description, and artwork.
▶️ Run a fresh Spotify chart snapshot
Pick one or more markets and charts. Each chart is used with every selected market, and the show limit applies to each pair.
Run steps
- Add one or more two-letter Spotify market codes, such as
USorGB. - Add
top,trending, or a supported genre chart ID. - Optionally enter a positive whole number for shows per market and chart.
- Leave the limit empty to return all available results until the source is exhausted.
- Start the run and open the
datasetlink in the output.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
markets | array of strings | Selects one or more supported Spotify market codes. Each market is used with every selected chart. |
charts | array of strings | Selects top, trending, or a supported genre chart ID. Each chart is used with every selected market. |
maxShowsPerCombination | integer | Limits shows saved for each market/chart pair. Leave it empty to return all available results until the source is exhausted. Spotify currently exposes up to 200 shows for universal charts and up to 50 for genre charts. |
Example input
Start with one market and the top chart:
{"markets": ["US"],"charts": ["top"]}
🧾 Output
The run output includes a dataset link to the default dataset. It contains one row shape for podcast chart listings.
Dataset row fields
| Field | Type | What it does |
|---|---|---|
podcastName | string | Name of the podcast on Spotify. |
spotifyId | string | Stable Spotify ID for the show. |
podcastUrl | URL string | Public Spotify page for the show. |
market | string | Spotify market code for this listing. |
chart | string | Spotify chart ID for this listing. |
rank | integer | Position in the selected chart. |
observedAt | ISO 8601 timestamp | UTC time when this listing was collected. |
sourceChartUrl | URL string | Public Spotify chart page for this market and chart. |
rankMovement | string, optional | Spotify's movement label, when supplied. |
rankChange | integer, optional | Numeric change from a comparable prior rank. Positive values mean the show moved up, and the field is omitted when no comparison is available. |
publisher | string, optional | Publisher or creator, when supplied. |
description | string, optional | Current podcast description, when supplied. |
artworkUrl | URL string, optional | Public artwork URL, when supplied. |
Example row
This is a real row from a successful run with one US market and the top chart:
{"podcastName": "Spotify Live","spotifyId": "2K5tDp2QRuZy16KTWoWq6B","podcastUrl": "https://open.spotify.com/show/2K5tDp2QRuZy16KTWoWq6B","market": "US","chart": "top","rank": 1,"observedAt": "2026-08-26T18:38:11.828Z","sourceChartUrl": "https://podcastcharts.byspotify.com/us/top-podcasts","rankMovement": "UNCHANGED","rankChange": 0,"publisher": "Spotify","description": "Spotify Live is a premium live music series built for fans featuring unforgettable performances from today’s most iconic artists.","artworkUrl": "https://i.scdn.co/image/ab67656300005f1f859c7317f65324c3b5bce785"}
Rankings and descriptions can change as Spotify updates its public charts.
💳 Pricing
How charges work
Pay-per-event pricing charges $0.00001 for each ranked podcast show saved to the dataset. The event is tied to the saved show, and the Apify Console shows the active price before a run. The number of charges depends on the rows saved by your selected market and chart pairs.
A lower per-pair limit can reduce the number of saved rows and charges.
🔌 Integrations
Dataset access
Use the dataset link from the run output to read rows through the Apify dataset API or export them in the formats Apify offers. Keep podcastUrl and sourceChartUrl when you need public links back to Spotify.
Video guide
See this Apify integrations video:
❓ FAQ
What happens when I select several markets and charts?
Every selected chart is used with every selected market. The show limit applies separately to each pair, so one run can contain rows from several combinations.
What does an empty show limit do?
Leaving maxShowsPerCombination empty returns all available results until the source is exhausted. Spotify currently exposes up to 200 shows for universal charts and up to 50 for genre charts.
Why is rankChange missing?
It is included only when a comparable prior observation is available. Spotify's rankMovement label can still be present without a numeric change.
Do I need a Spotify login or API key?
No. This Actor reads Spotify's public chart data and does not require buyer authentication to Spotify.
Does it return episodes or audio?
No. The scope is ranked podcast listings. It does not return episodes, reviews, audio, listening counts, downloads, revenue, demographics, or private audience data.
Is this historical ranking data?
No. Each run is a current snapshot at observation time. To compare dates, keep datasets from repeated runs and compare the same show's rank by market and chart.
Which charts can I choose?
Use top for Top Podcasts, trending for Trending Podcasts, or a supported genre chart ID. Genre charts are available only in the supported markets for that chart.
Can a chart return fewer shows than my limit?
Yes. The limit is a ceiling for each pair, and the available source rows may be fewer.
📝 Changelog
0.0: Initial release
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Spotify Podcast and Episode Search Scraper: Search public Spotify podcasts and episodes by keyword.
- Podchaser Podcast, Episode & Creator Scraper: Search Podchaser podcasts, episodes, and creator profiles by query or URL.
- Apple Podcast Scraper: Search Apple Podcasts, collect show details, reviews, episodes, or charts.
- Apple Podcasts + Listen Notes Scraper: Compare podcast and episode data from Apple Podcasts and Listen Notes.
- Podcast Scraper: Shows, Episodes & Top Charts: Collect Apple Podcasts shows, episodes, and top chart entries by country.
Made with ❤️ by Maxime Dupré