# Podcast Guest Leads: Find Podcasts That Book Guests (`precious_bathmat/podcast-guest-leads`) Actor

Find active podcasts that interview guests in any niche, with the host's contact email, how often they publish, how many episodes feature a guest, and an Apple Podcasts link. Built for PR teams, authors, founders and coaches booking podcast tours.

- **URL**: https://apify.com/precious\_bathmat/podcast-guest-leads.md
- **Developed by:** [Mariam Ahmed](https://apify.com/precious_bathmat) (community)
- **Categories:** Lead generation, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

$20.00 / 1,000 podcast leads

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

## Podcast Guest Leads: Find Podcasts That Book Guests

Find **podcasts to pitch yourself or your client to**, in any niche, with the **host's contact email** already attached. Enter a topic and get a ranked list of shows that are still publishing, actually interview guests, and can be reached.

No API key, no account and no login needed.

### What does this do?

Building a podcast tour normally means searching Apple Podcasts by hand, opening each show, guessing whether it is still alive, and hunting for an email address. Most of that work is wasted. Across the searches used to build this Actor, 17% to 32% of shows published no contact address at all, and of those that did, between 10% and 46% had already stopped releasing episodes.

This Actor does the whole pass for you and returns only the shows worth an email.

```mermaid
flowchart LR
    A[Your topics] --> B[Apple Podcasts<br/>directory]
    B --> C[Each show's RSS feed:<br/>contact, episodes, dates]
    C --> D[Active? Books guests?<br/>Reachable?]
    D --> E[Ranked list with<br/>host emails]
```

### Who is it for?

| You are | You use it to |
|---|---|
| **PR and publicity agencies** | Build a targeted show list for every client campaign in minutes |
| **Authors and book marketers** | Find interview shows in your subject before a launch |
| **Founders and executives** | Get on podcasts your buyers already listen to |
| **Coaches and consultants** | Fill a podcast tour with shows that take guests every week |
| **Podcast guest booking agencies** | Replace manual directory research with a repeatable run |
| **Podcasters** | Find peer shows for swaps and cross-promotion |

### What data do you get?

One row per podcast:

| Field | Meaning |
|---|---|
| `podcastName`, `hostName`, `publisher` | The show and who publishes it |
| `contactEmail` | The address the show publishes for contact, taken from its feed |
| `website`, `applePodcastsUrl`, `feedUrl` | Where to research the show before pitching |
| `leadScore` | 0 to 100, how worthwhile this show is to pitch (see below) |
| `booksGuests`, `guestEpisodeSharePercent` | Whether it interviews guests, and in what share of recent episodes |
| `lastEpisodeAt`, `daysSinceLastEpisode`, `isActive` | Whether the show is still running |
| `episodesPerMonth` | Median publishing pace from the recent episodes |
| `totalEpisodes`, `averageEpisodeMinutes` | Track record and typical episode length |
| `category`, `categories`, `language`, `explicit` | How Apple classifies the show |
| `recentEpisodeTitles` | The three newest episodes, handy for a personalised opening line |
| `foundVia` | Which of your topics matched this show |

Turn on **Also return recent episode titles as rows** for a second table of the latest episodes per show.

#### How the lead score works

Every point is explainable, so you can sort and filter with confidence:

| Points | For |
|---|---|
| 25 | A contact email exists |
| 25 / 15 / 5 | Newest episode within 30 / 90 / 180 days |
| up to 20 | Recent episodes name guests, or the show describes itself as doing interviews |
| 15 / 10 / 5 | Publishes 4+ / 2+ / 1+ episodes a month |
| 15 / 10 / 5 | 100+ / 50+ / 20+ episodes published |

### Example: real estate investing

One run, topic `real estate investing`, US catalogue, September 2026:

**58 podcasts found → 57 feeds read → 23 worth pitching.** Filtered out: 10 with no contact address, 6 that had stopped publishing, 18 that never have guests.

| Podcast | Contact | Guest episodes | Per month | Last episode | Episodes | Score |
|---|---|---|---|---|---|---|
| The Real Estate Investing Club | gabe@therealestateinvestingclub.com | 92% | 7.3 | today | 666 | 100 |
| Zen and the Art of Real Estate Investing | jonathan@trustgreene.com | 68% | 7.5 | today | 373 | 100 |
| The Smart Real Estate Coach Podcast | chrisprefontainepodcast@gmail.com | 84% | 4.3 | today | 575 | 100 |
| Rental Income Podcast With Dan Lane | dan@rentalincomepodcast.com | 80% | 4.3 | 1 day | 608 | 100 |
| Real Wealth Show | rw@realwealth.com | 56% | 14.5 | 1 day | 500 | 100 |
| PassivePockets: The Passive Real Estate Investing Show | podcast@biggerpockets.com | 44% | 4.3 | 1 day | 339 | 100 |

Every one of the 23 leads came out with a contact address, because shows without one are filtered by default. The whole run took about 6 seconds.

#### Sample output (JSON)

```json
{
  "podcastName": "Rental Income Podcast With Dan Lane",
  "hostName": "Dan Lane",
  "contactEmail": "dan@rentalincomepodcast.com",
  "website": "https://rentalincomepodcast.com",
  "applePodcastsUrl": "https://podcasts.apple.com/us/podcast/id1058275711",
  "leadScore": 100,
  "booksGuests": true,
  "guestEpisodeSharePercent": 80,
  "lastEpisodeAt": "2026-09-15T07:00:00.000Z",
  "daysSinceLastEpisode": 1,
  "isActive": true,
  "episodesPerMonth": 4.3,
  "totalEpisodes": 608,
  "averageEpisodeMinutes": 24,
  "category": "Investing",
  "recentEpisodeTitles": ["Buying 40 Rentals While Working Full Time With Marcus Reed"],
  "foundVia": ["real estate investing"]
}
```

### How to use it

1. Add your **topics**, one per line. Use the words a listener would search: `b2b marketing`, `women in tech`, `plant based nutrition`.
2. Pick the **Apple Podcasts country** for the market you want.
3. Leave the filters on to get only reachable, active, guest booking shows, or turn them off to see everything that was checked.
4. Run it, then export to CSV, Excel, JSON or straight into your CRM.

Add several related topics in one run. Results are combined and de-duplicated, and `foundVia` tells you which topic matched each show.

### Popular searches

Ready to run examples, each one a real podcast outreach list:

- [Real Estate Investing Podcasts That Book Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/real-estate-investing-podcasts)
- [B2B Marketing Podcasts Accepting Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/b2b-marketing-podcasts)
- [Startup and Founder Podcasts That Interview Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/startup-founder-podcasts)
- [Personal Finance Podcasts That Book Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/personal-finance-podcasts)
- [Health and Wellness Podcasts Accepting Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/health-and-wellness-podcasts)
- [Fitness Podcasts That Interview Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/fitness-podcasts)
- [Women in Business Podcasts That Book Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/women-in-business-podcasts)
- [Tech and AI Podcasts That Interview Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/tech-and-ai-podcasts)
- [Mental Health Podcasts Accepting Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/mental-health-podcasts)
- [Leadership Podcasts That Book Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/leadership-podcasts)
- [Career Advice Podcasts That Interview Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/career-advice-podcasts)
- [Sales and Ecommerce Podcasts That Book Guests](https://apify.com/precious_bathmat/podcast-guest-leads/examples/sales-podcasts)
- [Find Podcasts to Pitch: Guest Shows With Host Emails](https://apify.com/precious_bathmat/podcast-guest-leads/examples/find-podcasts-to-pitch)

### Pricing

Pay per result: **$0.02 per podcast lead**. You are charged only for the rows you receive, after the filters have run, so dormant and unreachable shows cost nothing. Use **Maximum leads to return** to cap what a run can cost.

### Where the data comes from

- The **Apple Podcasts directory**, through Apple's public iTunes Search API.
- Each show's own **RSS feed**, which is how podcasts publish themselves to every app.

Contact addresses come from the `<itunes:owner>` tag that Apple requires a podcast to publish in order to be listed, so these are the addresses shows put out for people to reach them. Platform mailboxes such as `feeds@soundcloud.com` and `noreply@` addresses are discarded rather than passed off as contacts.

### FAQ

**Do I need an Apple account or an API key?**
No. Both the directory and the feeds are public.

**How accurate is "books guests"?**
It reads the recent episode titles for a named guest and the show description for interview wording. Shows that clearly name guests are caught reliably; a show that has guests but never names them in titles or its description can be missed. `guestEpisodeSharePercent` shows the evidence so you can judge for yourself.

**How many shows can I get per topic?**
Apple returns at most 200 per topic, so use several related topics to go wider.

**Are audience numbers included?**
No. Apple does not publish download or listener counts, and neither does any RSS feed, so nothing here pretends to. Publishing pace, episode count and how long a show has run are the honest proxies for reach.

**Why do some shows have no contact email?**
Roughly a fifth to a third of feeds leave the owner email out, depending on the topic. Those shows are filtered out by default; turn off **Only shows with a contact email** to see them.

**Can I use these addresses for cold outreach?**
They are the contact addresses shows publish for exactly that reason. Sending relevant, personal pitches is normal practice; bulk unsolicited mail is not, and your own local rules on electronic mail still apply.

# Actor input Schema

## `topics` (type: `array`):

What the podcasts are about. Use the words a listener would search for, one topic per line. Each topic is searched separately and the results are combined and de-duplicated.

## `country` (type: `string`):

Which country's Apple Podcasts catalogue to search. Shows are listed per country, so pick the market you want to appear in.

## `maxPodcastsPerTopic` (type: `integer`):

How many shows to pull from Apple for each topic before filtering. Apple returns at most 200 per topic.

## `onlyWithEmail` (type: `boolean`):

Keep only podcasts that publish a contact address in their feed. About 8 in 10 do.

## `onlyActive` (type: `boolean`):

Drop podcasts whose newest episode is older than the window below. Roughly a quarter of shows in any search are dormant.

## `activeWithinDays` (type: `integer`):

Days since the most recent episode.

## `onlyGuestShows` (type: `boolean`):

Keep shows where recent episode titles name a guest, or the show describes itself as doing interviews. Solo and news shows are dropped.

## `minEpisodes` (type: `integer`):

Filters out brand new shows with almost no audience.

## `maxLeads` (type: `integer`):

A hard cap on the results, and therefore on what the run costs.

## `includeRecentEpisodes` (type: `boolean`):

Adds a second table with the latest episode titles per show, useful when writing a personalised pitch.

## Actor input object example

```json
{
  "topics": [
    "b2b marketing",
    "saas founder"
  ],
  "country": "us",
  "maxPodcastsPerTopic": 50,
  "onlyWithEmail": true,
  "onlyActive": true,
  "activeWithinDays": 90,
  "onlyGuestShows": true,
  "minEpisodes": 10,
  "maxLeads": 200,
  "includeRecentEpisodes": false
}
```

# Actor output Schema

## `leads` (type: `string`):

Podcasts that book guests, with contact email, cadence and lead score.

## `episodes` (type: `string`):

Latest episode titles per show, when that option is on.

## `summary` (type: `string`):

How many podcasts were found per topic and why shows were filtered out.

# 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 = {
    "topics": [
        "real estate investing",
        "personal finance"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("precious_bathmat/podcast-guest-leads").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 = { "topics": [
        "real estate investing",
        "personal finance",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("precious_bathmat/podcast-guest-leads").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 '{
  "topics": [
    "real estate investing",
    "personal finance"
  ]
}' |
apify call precious_bathmat/podcast-guest-leads --silent --output-dataset

```

## MCP server setup

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

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/gNCe6CDDAwUabIfpn/builds/FJ34ovshdxcHKpdk2/openapi.json
