๐๏ธ Podcast Directory Scraper โ Host Contacts & Emails
Pricing
from $25.00 / 1,000 results
๐๏ธ Podcast Directory Scraper โ Host Contacts & Emails
Turn Apple Podcasts searches, charts, or links into podcast host emails, websites, and social contacts. No API key needed. Get RSS-enriched leads with confidence-scored emails and an outreach lead score for podcast outreach and PR pitching.
Pricing
from $25.00 / 1,000 results
Rating
0.0
(0)
Developer
Data Minds
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
Podcast Directory Scraper โ Host Contacts & Emails
Turn any Apple Podcasts search, chart or link into a scored, enrichable list of podcast host emails, websites and social contacts โ streamed straight to your Apify dataset.
๐ View this Actor on Apify Store
๐ Table of Contents
- Introduction
- What data can you extract from Apple Podcasts?
- How the podcast scraper works
- Input parameters reference
- Output example
- FAQ
- Support
๐ Introduction
๐ What is Podcast Directory Scraper?
Podcast Directory Scraper is an Apify Actor โ a podcast scraper and podcast host email finder in one โ that turns Apple Podcasts into a workable podcast host contact database. Point it at a keyword, a chart, or a list of show links, and it discovers matching shows, opens each one's RSS feed and website, and returns a clean dataset row per podcast. Each row carries the host's email address, owner name, social profiles, ratings, real publishing cadence, and a computed outreach lead score. It is built specifically for podcast outreach leads, not general podcast metadata โ email quality and reachability are the whole point.
Unlike scraping the Apple Podcasts website by hand, this Actor talks to the same private amp-api the Apple Podcasts web app itself uses, backed by the public iTunes Search/Lookup API for feed URLs โ no login, no API key, and no Apple Developer account required.
Main features:
- ๐ Bulk keyword search โ one topic or a hundred, each searched separately and merged.
- ๐ง Episode-level keyword search โ finds shows that talked about your topic even when the show title never mentions it.
- ๐ Bulk direct input โ Apple Podcasts links, bare show IDs, or RSS feed URLs, mixed freely.
- ๐ Top-chart harvesting โ sweep a category's rankings with chart position preserved.
- ๐ง Typed, confidence-scored email extraction โ every address comes with a source, a type, and a 0โ100 confidence score, not just a yes/no.
- ๐ Website contact fallback โ checks the show's homepage and contact/about pages when the RSS feed has no address.
- ๐ Real publishing cadence โ computed from the actual gaps between episode dates, not the show's self-reported frequency.
- ๐ฏ 0โ100 outreach lead score โ ranks shows by how reachable and how active they actually are.
- ๐ธ Quality filters that cut cost โ filtered-out shows are never saved and never billed.
Running this on Apify also means you get the platform's built-in advantages for free: scheduling recurring refreshes of a niche, monitoring and email alerts if a run's yield drops, instant API and webhook access to every dataset, and automatic proxy rotation if Apple's directory ever pushes back โ none of which you get running a local script.
๐ What data can you extract from Apple Podcasts?
In plain terms, every row this podcast scraper returns groups into six kinds of information:
- ๐ท๏ธ Who the show is โ title, host/author name, description, categories, language, artwork, and country of origin.
- ๐ง How to reach them โ host email (typed and confidence-scored), owner name, website, social profiles (X/Twitter, LinkedIn, Instagram, YouTube, Facebook, TikTok), and a funding/support link.
- ๐ How active they are โ first and last episode dates, days since the last episode, real publishing frequency, and whether the show has ended.
- โญ How big the audience is โ star rating, rating count, the full star-by-star breakdown, and a popularity tier.
- ๐ฏ How good a lead it is โ a 0โ100 outreach lead score, a reachability verdict, and a data-quality flag.
- ๐ Where it came from โ the RSS feed URL, the Apple Podcasts link, which keyword or chart matched, and when the row was collected.
The full technical field list, with exact names and types, is in the output example below.
๐ง How the podcast scraper works
- You choose a discovery mode. Keyword search matches show titles and authors; episode keyword search matches what was actually said inside episodes; top charts pulls a category's rankings; direct links/IDs/RSS scrapes exactly the shows you paste.
- The Actor queries Apple's own amp-api and the public iTunes API, merging and deduplicating results by show ID.
- Each show's profile is filled in โ ratings, categories, episode counts, artwork, ended-show flag โ from batched Apple lookups.
- The show's RSS feed is opened to pull the host email, owner name, real website, credited hosts, funding link, and the full episode list โ this is where nearly all contact data comes from.
- If the feed has no usable address, the show's own website (homepage plus contact/about pages) is checked as a fallback.
- Every candidate email is scored and typed, the best one becomes
ownerEmail, and up to three runners-up are kept asalternateEmails. - Cadence is computed from the real gaps between episode dates, and a 0โ100 lead score is calculated from reachability, activity, cadence and audience size.
- Your quality filters are applied, and every show that passes is pushed to your dataset immediately โ nothing waits for the run to finish.
๐ Input parameters reference
๐ Start here โ what to find
| Parameter | Type | Description | Default |
|---|---|---|---|
searchTerms | array | Topics, niches or show names to search โ for example b2b saas marketing, true crime. One keyword per line, bulk supported. | [] |
urls | array | Apple Podcasts links, bare show IDs, or direct RSS feed URLs to scrape exact shows. Bulk paste or file upload. | [] |
podcastIds | array | Bare Apple Podcasts show IDs, one per line. Processed together with urls. | [] |
maxResultsPerTerm | integer | How many shows to collect per keyword. | 50 (prefill 25) |
country | string | Which Apple Podcasts store to search (two-letter code, 175 supported). | "us" |
๐ฏ How to discover shows
| Parameter | Type | Description | Default |
|---|---|---|---|
mode | string | Discovery mode: search (title/author match), episodes (episode-level topic search), charts (top-charts harvest), ids (direct links/IDs/RSS only). | "search" |
episodeSearchTerms | array | Phrases to look for inside episode titles and notes, used only in episodes mode. Falls back to searchTerms if left empty. | [] |
chart | string | Which chart to use in charts mode: top-series, top, top-subscriber. | "top-series" |
chartGenres | array | Category names to sweep in charts mode. Empty sweeps every top-level category. | [] |
maxPodcasts | integer | Hard cap on total podcasts saved across the whole run. 0 = no limit. | 0 |
๐ง Contact enrichment
| Parameter | Type | Description | Default |
|---|---|---|---|
fetchRss | boolean | Read each show's RSS feed for host email, owner name, website, cadence and episodes. | true |
scrapeWebsite | boolean | Check the show's own website when the feed has no email. | true |
websiteMaxPages | integer | Extra contact/about pages to check beyond the homepage. | 2 |
includeSocialLinks | boolean | Collect X/Twitter, LinkedIn, Instagram, YouTube, Facebook and TikTok profiles. | true |
๐ง Output options
| Parameter | Type | Description | Default |
|---|---|---|---|
includeEpisodes | boolean | Add recent episode listings (title, notes, date, duration, audio URL, guests) to every row. | false |
maxEpisodesPerShow | integer | Episodes to include per show. 0 = every episode in the feed. Cadence is always computed from the full feed regardless of this cap. | 10 |
includeRatingHistogram | boolean | Add the 1โ โ5โ vote-count breakdown. | false |
๐๏ธ Quality filters
Filtered shows are never saved โ and never charged.
| Parameter | Type | Description | Default |
|---|---|---|---|
activeOnly | boolean | Keep only shows with an episode in the last 90 days. | false |
activeWithinDays | integer | Custom activity window in days; overrides activeOnly. 0 disables it. | 0 |
excludeCompleted | boolean | Drop shows Apple flags as completed/ended. | false |
requireEmail | boolean | Keep only shows with a usable host email. | false |
requireWebsite | boolean | Keep only shows with their own website. | false |
excludeExplicit | boolean | Drop shows marked explicit. | false |
minLeadScore | integer | Minimum 0โ100 lead score to keep. | 0 |
minEpisodes | integer | Minimum episode count. | 0 |
minRatingCount | integer | Minimum number of listener ratings. | 0 |
minRating | number | Minimum star rating (0โ5). A minimum rating count of 1 is applied automatically. | 0 |
emailTypes | array | Keep only these email types: role, personal, generic, platform. | [] |
frequencies | array | Keep only these cadences: daily, multiple-per-week, weekly, biweekly, monthly, irregular, infrequent. | [] |
languages | array | Keep only these two-letter language codes. | [] |
categoryFilter | array | Keep only categories matching these keywords (partial match). | [] |
๐ Network
| Parameter | Type | Description | Default |
|---|---|---|---|
proxyConfiguration | object | Proxy route override. By default the run starts direct and escalates automatically to datacenter, then residential, if the directory pushes back. | {"useApifyProxy": false} |
โก Speed & limits
| Parameter | Type | Description | Default |
|---|---|---|---|
concurrency | integer | Podcasts processed in parallel. | 8 |
requestDelaySeconds | number | Pause between requests, in seconds. | 0 |
maxRetries | integer | Retries per request before escalating the network route. | 3 |
maxScanned | integer | Safety valve: stop after examining this many shows, even if filters rejected all of them. 0 = no limit. | 20000 |
maxRunSeconds | integer | Stop cleanly after this many seconds, keeping everything already saved. 0 = no limit. | 0 |
๐ฆ Output example
Each podcast this scraper finds is pushed to the dataset as one JSON object, in this shape:
{"podcastId": "1496516404","title": "Breaking B2B - SaaS Marketing and B2B Marketing Podcast","author": "Sam Dunning","description": "Break free from sh*t SaaS and b2b marketing. Join 1000s of legends tuning in weekly.","categories": ["Business", "Marketing", "Entrepreneurship", "Careers"],"language": "en","storefront": "us","countryOfOrigin": "USA","episodeCount": 499,"seasonCount": null,"firstPublishedDate": "2020-01-25","lastEpisodeDate": "2026-08-27","daysSinceLastEpisode": 2,"episodeFrequency": "weekly","medianGapDays": 4.1,"appleReleaseFrequency": "Updated Biweekly","isActive": true,"isCompleted": false,"showType": "episodic","mediaKinds": ["audio"],"contentRating": "clean","accessType": "free","hasPaidSubscription": false,"ratingAverage": 4.8,"ratingCount": 23,"ratingHistogram": [0, 1, 0, 2, 20],"popularityTier": "low","applePodcastsUrl": "https://podcasts.apple.com/us/podcast/breaking-b2b/id1496516404","feedUrl": "https://feeds.simplecast.com/WtYkR7bN","feedGuid": null,"feedError": null,"websiteUrl": "https://www.breakingb2b.com/blog","artworkUrl": "https://is1-ssl.mzstatic.com/image/thumb/โฆ/600x600bb.jpg","ownerName": "Sam Dunning","ownerEmail": "samuelmdunning@gmail.com","emailSource": "rss_owner","emailType": "personal","emailScore": 65,"alternateEmails": null,"people": null,"socialLinks": {"linkedin": "https://linkedin.com/in/samdunning","youtube": "https://youtube.com/channel/UC7OhjYB9-p0b6ZNnXMOzjLQ"},"fundingUrl": null,"isLockedFeed": false,"leadScore": 83,"dataQuality": "high","hasEmail": true,"hasWebsite": true,"hasSocial": true,"contactability": "probable","source": "apple","discoveryMode": "search","searchTerm": "b2b saas marketing","chartRank": null,"matchedEpisodes": null,"episodes": [{"title": "#498 Copy This AI SEO Strategy, It Will Blow Up Your SaaS","description": "This week, Sam gives you the exact 3-page AI SEO frameworkโฆ","publishDate": "2026-08-27","duration": "00:24:11","audioUrl": "https://cdn.simplecast.com/audio/โฆ/episode.mp3","episodeNumber": 498,"seasonNumber": null,"guid": "b0f4e2c1-โฆ","transcriptUrl": null,"guests": null}],"scrapedAt": "2026-08-29T10:12:44+00:00"}
๐ Fields worth explaining
| Field | Meaning |
|---|---|
emailSource | Exactly where the address was found: rss_owner, rss_googleplay, rss_locked, rss_editor, rss_webmaster, rss_description, website_contact, or website_home. Feed-published addresses always outrank scraped ones. |
emailType | role (booking@, press@, hello@), personal (a named human), generic (support@, admin@), or platform (a hosting provider's shared inbox, scored down hard). |
emailScore | 0โ100 email confidence score โ how likely this address is to be the show's real, checked inbox, based on where it was found and its shape. |
alternateEmails | Up to three runner-up addresses, in case the best one bounces. |
contactability | Plain-English reachability verdict: direct, probable, weak, website-only, or none. |
leadScore | 0โ100 outreach lead score โ weighted toward a real inbox, an active show, a healthy cadence and a real audience; ended shows and hosting-platform inboxes are penalised. |
dataQuality | high / medium / low, based on whether both an email and a website were found. |
medianGapDays | The median number of days between episodes โ used instead of the average so one long hiatus doesn't misclassify a weekly show as infrequent. |
appleReleaseFrequency | What Apple's own directory claims the cadence is, kept alongside the computed episodeFrequency for comparison. |
source | Always "apple" โ the discovery API that produced the row. |
discoveryMode | Which mode found this show: search, episodes, charts, or ids. |
matchedEpisodes | In episode-keyword-search mode, the specific episodes that matched your topic. |
โ FAQ
โ๏ธ Is it legal to scrape Apple Podcasts and podcast RSS feeds?
Yes, within normal limits. This Actor reads publicly available Apple Podcasts listings and publicly published RSS feeds โ the same data any podcast app or listener can access without logging in. RSS feeds exist specifically to be read by software. You are still responsible for how you use any personal data (a host's name or email) โ follow GDPR, CCPA and CAN-SPAM/CASL rules if you use the data for outreach. See Apify's guide on the legality of web scraping for background. This isn't legal advice.
๐ How is this different from just searching Apple Podcasts manually?
Manually searching Apple Podcasts gets you a title, artwork and a description โ no host email, no real publishing cadence, and no way to search inside episode content. This Actor opens every show's RSS feed and website for you, extracts and types the actual host email with a confidence score, computes real cadence from episode dates instead of trusting Apple's own label, and supports episode-level keyword search โ finding shows that discussed your topic even when it never appears in the title, which manual search on Apple Podcasts simply cannot do.
๐ค How do I find podcasts looking for guests?
Run a keyword search for your topic or niche, turn on requireEmail, and sort the results by leadScore. High-scoring, currently active shows with a direct or probable contact channel are your best guest-pitch candidates โ most independent podcasts are actively looking for guests even if they don't say so explicitly.
๐ง How do I find a podcast host's contact email address?
Point the Actor at the show (by keyword, chart, or a direct Apple Podcasts link/RSS feed URL) with fetchRss and scrapeWebsite both on. It reads the RSS feed's owner tag first โ the address creators publish specifically for this purpose โ and falls back to the show's contact or about page if the feed carries none. The result lands in ownerEmail, already typed and scored.
๐ฏ How do I pitch a podcast for a guest appearance?
Start from a lead list, not a cold search: filter for emailType of role or personal (skip platform inboxes, which are shared hosting addresses), a contactability of direct or probable, and an active episodeFrequency. Pitch shows that are still publishing regularly โ a show with isCompleted: true or no episode in 180+ days is unlikely to book anyone.
๐ Does this use the official Apple Podcasts API or the iTunes API?
Neither is a public, documented "Apple Podcasts API" in the traditional sense. This Actor combines two real Apple endpoints: the private amp-api that powers the Apple Podcasts web app itself, and the public iTunes Search/Lookup API, mainly for resolving each show's RSS feedUrl. No login or API key is required for either.
๐ก๏ธ Why doesn't this scraper break when Apple changes something?
Most Apple Podcasts scrapers hardcode an API token and endpoint list that Apple periodically rotates, which is why they silently stop working. This Actor is self-healing: at the start of every run it fetches Apple's own current web-app JavaScript bundle and extracts the live amp-api token, hosts and endpoint contract straight out of it โ the same values the real Apple Podcasts website is using that day โ rather than trusting a value baked in months earlier.
๐ญ Why does a show have no email address?
Not every podcast publishes one. Hobbyist and personal shows omit a contact address far more often than professionally produced business, marketing, technology and health shows. Turn on requireEmail so you're never billed for a show you can't actually reach.
๐ Can I search several countries or use it as a podcast RSS feed API?
Each run searches one Apple Podcasts store, since charts and rankings are country-specific โ run it again with a different country code, or schedule separate tasks. You can also skip discovery entirely and feed it RSS feed URLs directly through the urls field to use it purely as a podcast RSS feed API for enrichment.
๐ฐ How much does it cost to scrape podcast data with this Actor?
This Actor runs on Apify's pay-per-event pricing, billed per podcast-scraped event โ one charge for each podcast row actually saved to your dataset, after your quality filters run. Shows removed by filters like requireEmail and minLeadScore are never saved and never billed, so you only pay for qualified podcast outreach leads, not raw listings.
๐ค Can I use the results with an AI agent or automation pipeline?
Yes. As a pay-per-event Actor it's callable as a single tool step from Make, Zapier, n8n, or any MCP-compatible AI agent โ "find active B2B podcasts with a booking email and 100+ ratings" becomes one Actor call, and results are available immediately via the Apify API in JSON, CSV, Excel or XML.
๐ฌ Support
Found a bug, need a field this Actor doesn't expose, or want a custom outreach pipeline built around it? Open an issue on the Actor's Issues tab in Apify Console, or reach out directly at hello.dataminds@gmail.com. If this Actor saved you time, a review on the Store page helps other users find it.