# Spotify Podcast Tracker (`gochujang/spotify-podcast-tracker`) Actor

Track Spotify podcast shows and episodes: subscriber estimates, episode count, release frequency, ratings, categories, and language. Search by keyword or fetch specific show IDs using Spotify's public web API. No Spotify account required. Returns structured data for podcast market research.

- **URL**: https://apify.com/gochujang/spotify-podcast-tracker.md
- **Developed by:** [Hojun Lee](https://apify.com/gochujang) (community)
- **Categories:** Automation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.00 / 1,000 item trackeds

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does Spotify Podcast Tracker do?

**Spotify Podcast Tracker** extracts structured data on Spotify podcast shows — including **episode count, release frequency, latest episode date, activity score, and catalog maturity** — without requiring a Spotify developer account or API key. It uses Spotify's anonymous web access token, so you can search for podcasts by keyword or look up specific shows directly by their Spotify show ID. The Apify platform handles scheduling, retries, and data export so your podcast intelligence pipeline stays fresh automatically.

### Why use Spotify Podcast Tracker?

- **No Spotify account or API credentials needed** — the Actor obtains an anonymous token from Spotify's public web player endpoint, making setup instant and eliminating OAuth flows or app approval wait times.
- **Keyword search plus direct show ID lookup** — find podcasts matching a topic (e.g. `"crypto trading"`) or target specific shows by their Spotify ID; combine both modes in a single run to build curated watchlists.
- **Release cadence and activity scoring** — the Actor computes an average release frequency in days, classifies it as `daily`, `weekly`, `biweekly`, or `monthly`, and generates a 0–100 activity score combining episode volume, release rate, and recency — ideal for audience-building or competitive analysis.
- **Active/inactive detection** — automatically flags shows as active or inactive based on whether a new episode was published within the last 90 days, saving manual inspection time for large lists.
- **Multilingual and multi-market support** — specify any two-letter market code (US, GB, DE, KR, etc.) to retrieve localised search results and show metadata for international podcast research.

### How to use Spotify Podcast Tracker

1. Go to the [Apify Store](https://apify.com/store) and find **Spotify Podcast Tracker**.
2. Click **Try for free** to open the input configuration form.
3. Enter a **Search Keyword** to discover podcasts by topic (e.g. `"machine learning"`, `"personal finance"`), or paste one or more Spotify **Show IDs** directly into the Show IDs list field.
4. Set the **Market** to your target country code (default `US`).
5. Adjust **Max Results** (1–50) to control how many shows to return.
6. Click **Start** and wait a few seconds for results to appear.
7. Export your dataset as JSON, CSV, or Excel from the Dataset tab, or fetch it programmatically via the Apify API.

### Input

| Field | Type | Default | Description |
|-------|------|---------|-------------|
| `showIds` | array | \[] | Spotify show IDs to fetch directly (e.g. `4rOoJ6Egrf8K2IrywzwOMk`) |
| `keyword` | string | — | Search keyword to find matching podcast shows on Spotify |
| `market` | string | `US` | Two-letter country code for market localisation (e.g. `US`, `GB`, `KR`) |
| `maxResults` | integer | 20 | Maximum number of shows to return (1–50) |

### Output

```json
[
  {
    "show_id": "4rOoJ6Egrf8K2IrywzwOMk",
    "name": "The Lex Fridman Podcast",
    "publisher": "Lex Fridman",
    "description": "Conversations about science, technology, history, philosophy and the nature of intelligence...",
    "total_episodes": 418,
    "languages": ["en"],
    "explicit": false,
    "latest_episode_date": "2026-08-28",
    "release_frequency_days": 9.3,
    "categories": [],
    "external_url": "https://open.spotify.com/show/4rOoJ6Egrf8K2IrywzwOMk",
    "image_url": "https://i.scdn.co/image/ab6765630000ba8a1234abcd",
    "release_cadence": "biweekly",
    "catalog_maturity": "prolific",
    "days_since_last_episode": 5,
    "activity_score": 80,
    "is_multilingual": false,
    "is_active": true,
    "fetched_at": "2026-09-02T04:11:00Z"
  },
  {
    "show_id": "2MAi0BvDc6GTFvKFPXnkCL",
    "name": "My First Million",
    "publisher": "Hubspot Podcast Network",
    "description": "Sam Parr and Shaan Puri explore business ideas and opportunities each week...",
    "total_episodes": 671,
    "languages": ["en"],
    "explicit": false,
    "latest_episode_date": "2026-08-30",
    "release_frequency_days": 3.4,
    "categories": [],
    "external_url": "https://open.spotify.com/show/2MAi0BvDc6GTFvKFPXnkCL",
    "image_url": "https://i.scdn.co/image/ab6765630000ba8b5678efgh",
    "release_cadence": "biweekly-plus",
    "catalog_maturity": "prolific",
    "days_since_last_episode": 3,
    "activity_score": 90,
    "is_multilingual": false,
    "is_active": true,
    "fetched_at": "2026-09-02T04:11:05Z"
  }
]
```

### Data fields

| Field | Description |
|-------|-------------|
| `show_id` | Spotify's unique show identifier |
| `name` | Podcast show title |
| `publisher` | Publisher or creator name |
| `description` | Show description (truncated to 300 characters) |
| `total_episodes` | Total number of episodes published |
| `languages` | List of language codes the show is available in |
| `explicit` | Whether the show is marked as explicit |
| `latest_episode_date` | Release date of the most recent episode (YYYY-MM-DD) |
| `release_frequency_days` | Average gap in days between the last 10 episodes |
| `categories` | Spotify genre/category tags for the show |
| `external_url` | Direct Spotify URL to the show page |
| `image_url` | URL to the show's 640px cover image |
| `release_cadence` | Label: `daily`, `biweekly-plus`, `weekly`, `biweekly`, `monthly`, `infrequent` |
| `catalog_maturity` | Label: `new`, `early`, `growing`, `established`, `prolific` |
| `days_since_last_episode` | Number of days elapsed since the latest episode |
| `activity_score` | 0–100 composite score (episode count + release rate + recency) |
| `is_multilingual` | True if the show is available in more than one language |
| `is_active` | True if a new episode was published within the last 90 days |
| `fetched_at` | UTC timestamp of the data fetch |

### Cost estimation

Pricing is **Pay-Per-Event** at **$0.005 per podcast show returned**.

| Scenario | Shows | Estimated cost |
|----------|-------|----------------|
| Small — 5 shows | 5 | $0.03 |
| Medium — 20 shows (default) | 20 | $0.10 |
| Large — 50 shows | 50 | $0.25 |

Monitoring 50 podcasts daily for a month costs approximately $7.50. There are no upstream API costs since the Actor uses Spotify's anonymous public endpoint.

### FAQ

**Q: Do I need a Spotify Premium account?**
A: No. The Actor obtains an anonymous access token from Spotify's public web player. No login, no Spotify account, and no developer credentials are required.

**Q: What does the activity score measure?**
A: The activity score is a 0–100 composite that combines three signals: episode catalog size (up to 30 pts), release frequency — how often new episodes come out (up to 40 pts), and recency — days since the last episode (up to 30 pts). A score above 70 generally indicates an actively publishing show with a substantial back catalog.

**Q: Can I monitor competitor podcasts on a schedule?**
A: Yes. Set up a scheduled run on the Apify platform to re-fetch your target shows daily or weekly. The output includes `days_since_last_episode` and `is_active`, making it easy to detect when a competitor publishes or goes silent.

This Actor uses Spotify's publicly accessible web API endpoints. It does not log in to any Spotify account, access subscription data, or collect any personally identifiable listener information. Subscriber counts are not available through the public Spotify API and are not included in the output. Use responsibly and in accordance with Spotify's Terms of Service.

Keywords: Spotify podcast scraper, podcast data API, podcast analytics tool, Spotify show tracker, podcast release frequency, podcast market research, Spotify episode tracker, podcast monitoring automation, podcast competitive analysis, Spotify data extractor

***

### Related actors

- [YouTube Channel Stats](https://apify.com/gochujang/youtube-channel-stats) — YouTube creator analytics to compare cross-platform audio vs video podcast growth
- [Substack Posts Tracker](https://apify.com/gochujang/substack-posts-tracker) — Newsletter publishing frequency to compare with podcast release cadence for creator research
- [Reddit Subreddit Tracker](https://apify.com/gochujang/reddit-subreddit-tracker) — Community discussion in podcast subreddits alongside listener engagement metrics

### Feedback

If this actor helps your podcast research, a review helps others find it: [Leave a review on Apify Store](https://apify.com/gochujang/spotify-podcast-tracker#reviews)

***

**Keywords:** Spotify, podcast, podcast analytics, episode tracker, subscriber count, podcast market research, show ratings, podcast SEO, audio content, podcast growth, streaming, media research

# Actor input Schema

## `showIds` (type: `array`):

Spotify show IDs to fetch directly (e.g. \['4rOoJ6Egrf8K2IrywzwOMk'])

## `keyword` (type: `string`):

Search Spotify for matching podcast shows

## `market` (type: `string`):

Two-letter country code for market (e.g. US, GB, KR)

## `maxResults` (type: `integer`):

Maximum shows to return from search

## Actor input object example

```json
{
  "market": "US",
  "maxResults": 20
}
```

# Actor output Schema

## `results` (type: `string`):

No description

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {};

// Run the Actor and wait for it to finish
const run = await client.actor("gochujang/spotify-podcast-tracker").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {}

# Run the Actor and wait for it to finish
run = client.actor("gochujang/spotify-podcast-tracker").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{}' |
apify call gochujang/spotify-podcast-tracker --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,gochujang/spotify-podcast-tracker"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/KVIcWrgtexISxyxzw/builds/uyE7R3chvO8Kdqbeg/openapi.json
