If you pitch podcasts (as a guest, for a client, or to buy ad spots), the hardest part is often just finding who to email. Contact forms get ignored, and Instagram DMs get lost.
Here's what most people don't know: most podcasts publish a contact email in a public file, their RSS feed. It's there so Apple Podcasts and Spotify can verify who owns the show. Any podcast app reads that file, and so can you.
Step 1: find the show's RSS feed
Every show on Apple Podcasts has an id in its URL:
https://podcasts.apple.com/us/podcast/marketing-against-the-grain/id1616700934
^^^^^^^^^^
Apple's public lookup API turns that id into the feed URL. Open this in your browser (no key or login needed):
https://itunes.apple.com/lookup?id=1616700934&entity=podcast
In the JSON you get back, look for feedUrl. For this show it's https://feeds.megaphone.fm/marketingagainstthegrain.
Step 2: open the feed and look for the owner
Open the feed URL. It's an XML file that starts with the show's details and then lists every episode. Near the top you'll find a block like this:
<itunes:owner>
<itunes:name>Hubspot</itunes:name>
<itunes:email>podcasts@hubspot.com</itunes:email>
</itunes:owner>
That's the contact the show itself registered. If the feed is huge, search the page (Ctrl+F) for itunes:email.
From a terminal, the same thing in one line:
curl -s https://feeds.megaphone.fm/marketingagainstthegrain | grep -m1 -o '<itunes:email>[^<]*'
What to watch out for
I checked 713 feeds from Apple's charts and keyword searches. Here's what I found:
-
About 68% had a real contact email. Most were on a company domain (
ads@show.com,name@network.com), not Gmail. -
About 12% only had a forwarding address. Some hosts replace the owner's email with an address of their own, like
info+6267be62…@mg-eu.acast.com(Acast) orpodcasts60+3597446c@anchor.fm(Spotify for Creators). They may forward to the owner, but they look like spam, so don't build a list on them. -
About 20% had no email at all. For those, try the show's website (it's in the feed's
<link>tag), the host's LinkedIn, or the show notes. Many shows write "for sponsorships, email…" in the description.
Two more things matter as much as the email:
-
Is the show still alive? Check the date of the latest
<pubDate>in the feed. A surprising number of shows stopped publishing years ago, and pitching them is wasted effort. - How big is it? Podcasts don't publish download numbers, but the number of ratings on Apple Podcasts is a decent public signal. A show with 1,000+ ratings is in a different league from one with 5.
Doing it for 500 shows
By hand, all of this takes about two minutes per show. That's fine for ten, painful for a hundred.
I built a tool that does the whole process in bulk: Podcast Scraper on Apify. You give it keywords (b2b marketing, true crime…) or a category (it reads Apple's top 200 charts), in any country. It returns one row per show with:
- the owner's email, and whether it's a company or a free-provider address
- forwarding addresses kept in a separate column, so they don't end up in your outreach list
- Apple rating and number of ratings
- episodes per month over the last 90 days, and the date of the last episode
- website and social links when the show lists them
You can filter before you pay, for example only shows active in the last 30 days, with 50+ ratings and a company email. It costs $5 per 1,000 podcasts, and Apify's free plan includes $5 of monthly credit, so a first list of a few hundred shows costs nothing.
Example input, for active marketing shows in the US and UK:
{
"searchKeywords": ["b2b marketing", "saas founders"],
"categories": ["Marketing"],
"countries": ["US", "GB"],
"activeWithinDays": 30,
"minRatings": 50,
"emailTypes": ["company", "both"],
"maxResults": 300
}
A note on doing this responsibly
These emails are public, and shows publish them to be contacted, but that doesn't make every message welcome. Pitch shows that actually fit, personalize the first line (mention an episode), keep it short, and respect privacy laws like GDPR and CAN-SPAM. A good pitch to 30 shows beats a blast to 3,000.
Disclosure: I'm the developer of the Podcast Scraper mentioned above. The manual method works without it.
Top comments (0)