Podcast Contact Finder - Owner Emails, Pay Per Contact avatar

Podcast Contact Finder - Owner Emails, Pay Per Contact

Pricing

from $500.00 / 1,000 contact emails

Go to Apify Store
Podcast Contact Finder - Owner Emails, Pay Per Contact

Podcast Contact Finder - Owner Emails, Pay Per Contact

Owner e-mail addresses from podcast feeds, charged only when a contact is actually delivered. Search a topic or paste Apple Podcasts links; get the e-mail, category, episode count and how recently the show published.

Pricing

from $500.00 / 1,000 contact emails

Rating

0.0

(0)

Developer

Halil Erdogan

Halil Erdogan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

22 days ago

Last modified

Share

Podcast Contact Finder is a podcast email scraper for sponsorship and guest outreach. Type a topic such as marketing or paste a list of shows, press Start, and get back the contact e-mail each podcast owner has published in the show's RSS feed, with the owner's name, category, episode count and the date of the latest episode next to it.

What it does: returns the owner e-mail each podcast publishes in its RSS feed, by topic search on Apple Podcasts or from your own list of shows. Price: $0.50 per contact delivered ($500 per 1,000). A show without an e-mail costs nothing. A first run: the prefilled input checks 25 shows for one topic. At the rate we measured (eight shows in ten) that is about 20 contacts, roughly $10.00. What you get: one row per show: owner e-mail, any separate booking inbox, owner name, category, episode count and the date of the latest episode. Export as JSON, CSV or Excel. What it will not do: sign in anywhere, guess addresses, or return phone numbers.

What does Podcast Contact Finder do?

A podcast's RSS feed can carry an itunes:owner block with the e-mail address the owner entered there. The Actor finds shows on Apple Podcasts, reads each show's feed and returns that published address. It does not sign in anywhere and does not guess.

  • Two ways in. Search Apple Podcasts by topic with searchTerms, check shows you already have with podcasts, or use both in the same run.
  • Any show format. Apple Podcasts URLs, bare Apple IDs and direct RSS feed URLs can be mixed in one list.
  • One row per show checked. Owner e-mail, show name, owner name, category, episode count, latest episode date, website, Apple Podcasts link and feed URL.
  • Booking inboxes too. When a show lists a separate booking or sponsorship address, it goes into otherEmails.
  • Strict matching. Artwork filenames and the hosting service's own support addresses are filtered out rather than sold to you as leads.
  • Honest empty rows. A show without a published e-mail, or with a feed that cannot be read, keeps its row with the reason in error, so you can see what was checked.
  • Dead-show check. minEpisodes skips shows with only a handful of episodes, and lastEpisode tells you whether a show is still publishing.
  • A hard stop. maxPodcasts keeps a broad search from running away.

Because it runs on Apify, you can call it through the API, schedule it, save inputs as tasks, send results to Google Sheets through Make or Zapier, and export every run as JSON, CSV or Excel.

Who is it for?

  • Brands and agencies buying podcast sponsorships in a niche and looking for the person to write to.
  • Guests, authors and founders pitching themselves for interviews, and the PR teams who book them.
  • Companies that sell to podcasters: editing, hosting, ad sales, audio gear or guest-booking services.
  • Researchers mapping a topic: which shows exist, how many episodes they have and whether they are still active.

How to find podcast emails

  1. Open the Actor in Apify Console. Sign in or create a free Apify account.
  2. Search a topic on the Input tab: add one or more terms to Search a topic, for example marketing or indie games. Each term is expanded into shows from Apple Podcasts.
  3. Pick the storefront in Apple Podcasts storefront: a two-letter country code such as US, GB, DE or IT. The default is US.
  4. Or paste specific shows into Or paste specific shows: Apple Podcasts URLs, bare Apple IDs or RSS feed URLs, one per line.
  5. Set the size of the run. Shows per search term (default 25) decides how many shows each term brings in; Maximum shows in this run (default 200) is the hard stop.
  6. Skip small shows with Minimum episodes if a show with three episodes is not worth a pitch to you.
  7. Decide what you want to see. Leave Only output shows that have a contact e-mail off to see every show that was checked, or switch it on for a clean lead list. You are charged the same way in both cases: per delivered contact.
  8. Click Start, then open the Output tab. Click Export to download JSON, CSV or Excel.

Input

Field in ConsoleJSON keyTypeDefaultWhat it does
Search a topicsearchTermsarray["marketing"] prefilledTopics to search Apple Podcasts for; each term is expanded into shows, and each feed is read
Or paste specific showspodcastsarrayemptyApple Podcasts URLs, bare Apple IDs or direct RSS feed URLs, mixed formats allowed
Shows per search termmaxPerSearchTerminteger251 to 200. How many shows each search term contributes
Maximum shows in this runmaxPodcastsinteger2001 to 1,000. Hard stop for the whole run
Apple Podcasts storefrontcountrystringUSTwo-letter country code of the Apple Podcasts catalogue to search
Minimum episodesminEpisodesinteger0Skip shows with fewer episodes than this; 0 keeps everything
Only output shows that have a contact e-mailonlyShowsWithEmailbooleanfalseHide shows that publish no e-mail
Parallel feed readsconcurrencyinteger61 to 15. Higher is faster, lower is gentler on the feed hosts

Example input:

{
"searchTerms": ["marketing", "indie games"],
"country": "US",
"maxPerSearchTerm": 25,
"maxPodcasts": 100,
"minEpisodes": 20,
"onlyShowsWithEmail": false
}

Output

One row per show checked. The field names are the ones the Actor writes; the values below are placeholders, not a real show.

[
{
"podcastName": "<show title>",
"ownerEmail": "hello@example-show.com",
"ownerName": "<owner name from the feed>",
"otherEmails": ["bookings@example-show.com"],
"author": "<author name from the feed>",
"applePodcastsUrl": "https://podcasts.apple.com/us/podcast/<show>/id<number>",
"feedUrl": "https://feeds.example-host.com/example-show.xml",
"website": "https://example-show.com",
"primaryCategory": "Marketing",
"categories": ["<categories listed in the feed>"],
"language": "<feed language>",
"episodeCount": 312,
"lastEpisode": "<date of the most recent episode>",
"explicit": "<the feed's explicit flag>",
"description": "<the show's description>",
"artwork": "<cover image URL>",
"error": null
}
]
FieldMeaning
ownerEmailThe e-mail the owner published in the feed's itunes:owner block. Empty when there is none
otherEmailsA separate booking or sponsorship inbox, when the show lists one
podcastName, ownerName, authorThe show and the names the feed gives for it
primaryCategory, categories, language, explicitHow the feed describes the show
episodeCount, lastEpisodeHow big the show is and whether it is still publishing. lastEpisode is passed through as the feed writes it, so the date format can differ from show to show
website, applePodcastsUrl, feedUrl, artworkWhere to find the show. website and description are empty text when the feed lists none
descriptionThe show's own description, useful for qualifying a lead
errorWhy a show produced no contact, instead of the show disappearing

lastEpisode and episodeCount are there for a reason. A show with 400 episodes and nothing new for years is not a lead, and you can filter it out before you write to anyone. The run also saves a RUN_STATS record in its key-value store: shows requested, feeds read, with a contact, without one, failed and charged.

How much does it cost to get podcast emails?

The Actor uses Apify's pay-per-event pricing:

EventPriceWhen it is charged
contact$0.50 ($500 per 1,000)Once per show whose owner e-mail is delivered
apify-actor-start$0.001When a run starts; one event per GB of memory, minimum one. At the default 1 GB that is one event

A show with no contact e-mail is free. A feed that cannot be read is free. The platform usage of the run is not billed on top.

What that means in practice, using the measured rate of eight shows in ten:

RunShows checkedContacts delivered (at 80%)You pay
One topic, default setting25about 20about $10.00 + $0.001
Four topics100about 80about $40.00 + $0.001
The largest possible run1,000about 800about $400.00 + $0.001

The rate comes from a small sample (see below), so treat these as estimates. The ceiling is fixed, though: a run can never cost more than $0.50 for each show it checks, plus the start fee.

Is it free to try?

Apify's free plan includes $5 of platform usage each month, and pay-per-event charges are paid from it. That covers about nine delivered contacts in one run.

Can I cap what a run costs?

Yes. Set a maximum cost for the run in Console, or pass maxTotalChargeUsd through the API. Apify's documentation states that the Actor stops gracefully at the limit and you are never charged for events beyond it. maxPodcasts gives you a second, simpler brake.

Honest expectations: how many podcasts publish an e-mail?

Most of the shows we checked did. On 13 September 2026 we ran a marketing search and read ten shows end to end: eight of the ten feeds carried an owner e-mail (80%). Ten shows from one topic is a small sample, and your rate will move with the topic and the storefront.

For comparison, the YouTube Channel Contact Finder from the same developer measured 23% across 96 channels. Both samples are small and come from different sources, so treat the gap as rough.

The empty rows have a few causes. Some network-produced shows route everything through the network and list nothing useful in the feed. Feed hosts go down, and some serve malformed XML; those shows are reported as unreadable rather than quietly dropped, and they are free.

That is why the charge is per delivered contact and not per show checked: you can point the Actor at a long speculative list and pay only for the shows that produce something usable.

Why pay per contact and not per show

Some podcast scrapers charge for every show they return, including shows whose feed carries no e-mail. This one charges only for shows that deliver a contact. You pay for a lead only when there is one.

lastEpisode matters as much as the address. A show that stopped publishing two years ago will not answer a sponsorship pitch, so filter on it before you write to anyone.

What it does not do

  • It does not guess addresses and does not try name permutations against a mail server.
  • It does not sign in to Apple Podcasts or any other service, and reads nothing behind a login.
  • It does not invent a contact when an owner has published none; the row says so instead.
  • It does not return phone numbers. There is no phone field in the output.

Public contact information only

The Actor returns addresses that podcast owners have placed in their own public RSS feeds, plus the show details that sit next to them. Nothing else about a person is collected.

A published address can still be personal data, for example in the EU and the UK. Use the output in line with the rules that apply to you, including the GDPR and the CAN-SPAM Act: keep each message relevant to the show, identify yourself, and honour opt-out requests. You are responsible for how you use the data and for following the terms of the services it comes from. If you are unsure, ask a lawyer before a campaign.

Limits

  • Shows per search term: up to 200 (maxPerSearchTerm).
  • Shows per run: up to 1,000 (maxPodcasts).
  • Parallel feed reads: 1 to 15 (concurrency, default 6).
  • One storefront per run. country takes a single code; run the Actor once per country to cover several.
  • Run length: the default run timeout is 300 seconds with 1 GB of memory. For large lists, raise the timeout in the run options in Console, or split the list into several runs.
  • What an owner publishes can change. An address found today may be gone next month; re-run a list before a campaign rather than relying on an old export.

Use the podcast email scraper through the API

Start a run and receive the rows in one HTTP call:

curl -X POST \
"https://api.apify.com/v2/actors/hllerdgn80~podcast-contact-finder/run-sync-get-dataset-items" \
-H "Authorization: Bearer <YOUR_APIFY_TOKEN>" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["marketing"], "maxPodcasts": 25, "onlyShowsWithEmail": true}'

The synchronous endpoint returns HTTP 408 if the run takes more than 300 seconds. For longer runs, start the Actor asynchronously and read the dataset afterwards, for example with the Python client:

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("hllerdgn80/podcast-contact-finder").call(
run_input={"searchTerms": ["true crime", "personal finance"], "maxPodcasts": 200, "minEpisodes": 20}
)
for row in client.dataset(run.default_dataset_id).iterate_items():
if row.get("ownerEmail"):
print(row["podcastName"], row["ownerEmail"], row.get("lastEpisode"))

The API tab on this page has JavaScript, Python and CLI examples and the OpenAPI definition. Your token is in Console under Settings > API & Integrations; send it in the Authorization header.

Integrations: Google Sheets, CRM, Make, Zapier, n8n and MCP

  • Make: the Apify Run an Actor module, then Get Dataset Items, then a Google Sheets module that adds rows, gives you a pitch list that fills itself.
  • Zapier: use the Finished Actor run trigger or the Run Actor action, followed by Fetch dataset items, to pass each row to a CRM or a spreadsheet. Zapier stops synchronous runs after 30 seconds, so start bigger runs asynchronously and let the trigger pick up the result.
  • n8n: add the Apify node (@apify/n8n-nodes-apify under Settings > Community Nodes on self-hosted n8n, or straight from the canvas on n8n Cloud).
  • AI agents: connect an MCP client to https://mcp.apify.com/?tools=fetch-actor-details,hllerdgn80/podcast-contact-finder.
  • Schedules: re-check the same list of shows every month and compare it with your last export.

FAQ

The Actor collects only addresses that owners publish in their show's public RSS feed. In some jurisdictions such an address is still personal data. Use the output in line with the rules that apply to you, including the GDPR and the CAN-SPAM Act, send relevant messages only, and honour opt-out requests. If you are unsure, ask a lawyer before a campaign.

Why did a show come back without an e-mail?

Either the owner did not publish one in the feed, or the feed could not be read (host down, malformed XML). The error field says which.

Am I charged for shows without an e-mail?

No. The contact event is charged only when an owner e-mail is delivered. Shows without one, and feeds that cannot be read, are free.

Yes. An Apple Podcasts URL, a bare Apple ID and a direct RSS feed URL can all sit in the same list.

How do I skip shows that stopped publishing?

Set Minimum episodes to drop very small shows, then sort or filter the output by lastEpisode to keep only shows that published recently.

Can I search podcasts in other countries?

Yes. Set Apple Podcasts storefront to the two-letter code of the country, for example GB or DE. Each run searches one storefront.

Is the e-mail always the host's own address?

Not always. It is whatever address the owner entered in the feed, which may belong to the host, a producer, a network or an agency. ownerName shows who registered the show.

Does it find phone numbers or social profiles?

No. It returns the owner e-mail, any separate booking inbox, the show's website and its description. There is no phone or social-profile field.

Can I export straight to Google Sheets or my CRM?

Yes, through Make, Zapier or n8n (see Integrations), or download the dataset as CSV or Excel from the Output tab.

Other Actors from the same developer

Support and feedback

If a feed shows an owner e-mail but the Actor missed it, or a row's error message is unclear, open a thread in the Issues tab and include the show's Apple Podcasts URL or feed URL and the input you used. Threads are public, so the answer helps others with the same question. Ideas for new fields are welcome there too.

Changelog

  • October 2026: summary box at the top, pricing comparison section.
  • September 2026: README rewritten with a step-by-step guide, output example, pricing examples, limits, API and integration notes, and FAQ.
  • 13 September 2026: Actor created and published (build 0.1.1); owner e-mail rate measured on ten shows from a marketing search.