YouTube Channel Email Scraper avatar

YouTube Channel Email Scraper

Pricing

from $12.00 / 1,000 email founds

Go to Apify Store
YouTube Channel Email Scraper

YouTube Channel Email Scraper

Extract contact emails and social links from YouTube channel About pages. Input channel URLs or @handles, get email addresses, subscriber counts, video counts, and all linked social profiles. No proxy needed.

Pricing

from $12.00 / 1,000 email founds

Rating

0.0

(0)

Developer

Stas Persiianenko

Stas Persiianenko

Maintained by Community

Actor stats

0

Bookmarked

224

Total users

42

Monthly active users

14 days ago

Last modified

Share

๐Ÿ“ง YouTube Channel Email Scraper

Extract contact emails and social links from YouTube channel About pages in bulk. Provide known channel URLs, @handles, or IDs, or use anonymous keyword discovery to build a creator list from a niche. Results include contact details, channel metadata, and source provenance โ€” with no proxy needed and no browser required.

๐ŸŽฏ What does it do?

YouTube Channel Email Scraper reads each channel's About page via the YouTube InnerTube API and extracts:

  • ๐Ÿ” Optional anonymous keyword-to-channel discovery from YouTube's initial search response
  • ๐Ÿ“ง Business contact email (the email listed in the channel's About section)
  • ๐Ÿ“‹ All emails found across description, links, and social profiles
  • ๐Ÿ“บ Channel name, @handle, and channel ID
  • ๐Ÿ‘ฅ Subscriber count and video count
  • ๐Ÿ“ Full channel description
  • ๐Ÿ”— All linked social profiles and external URLs
  • ๐ŸŒ Country / location
  • โœ… Verified channel status
  • ๐Ÿ“… Channel join date

It works by calling the official YouTube InnerTube JSON API (the same API YouTube uses internally) โ€” no browser automation, no proxy, just a fast HTTP request per channel.


๐Ÿ‘ฅ Who is it for?

Influencer marketers & brand managers โ€” Build a outreach list of YouTubers in your niche. Filter to only channels with emails so you can contact them directly without going through agents.

Talent agencies & MCNs โ€” Scout potential talent at scale. Download emails and social links for hundreds of channels in minutes instead of manually visiting each About page.

PR agencies โ€” Find journalists, reviewers, and content creators in specific niches for product seeding campaigns. Export directly to your CRM.

Recruiting / HR teams โ€” Identify and contact YouTube educators, trainers, or specialists in technical fields who may be open to consulting or full-time roles.

SaaS & tool builders โ€” Enrich your database of creator profiles with verified contact info for creator economy platforms, sponsor marketplaces, or outreach tools.

Researchers โ€” Collect channel metadata and contact info for academic studies on the creator economy, content strategy, or platform analysis.


๐Ÿ’ก Why use this actor?

  • โœ… No proxy needed โ€” YouTube About pages are fully public. No anti-bot, no captcha, no IP blocks.
  • โšก Fast โ€” Processes 100+ channels per minute using parallel requests.
  • ๐Ÿ’ฐ Low per-email pricing โ€” Many alternatives charge higher per-email rates. This actor charges $0.02/email on the Bronze tier, with lower unit prices on higher plans.
  • ๐Ÿ” Multiple email sources โ€” Scans description text, About section, and linked social profiles for all email addresses.
  • ๐ŸŽฏ Email-only filter โ€” Use onlyWithEmail: true to skip channels without emails and save only leads.
  • ๐Ÿงญ Auditable discovery โ€” sourceType and nullable sourceQuery show whether each channel came from direct input or keyword search.
  • ๐Ÿ“Š Structured output โ€” Contact and channel fields are ready for spreadsheet or API export.

๐Ÿ“Š What data does it extract?

FieldTypeDescription
channelIdStringYouTube channel ID (UCxxxxxxxxx)
sourceTypeStringdirect for supplied channels or search for discovered channels
sourceQueryString / nullSearch query that first discovered the channel; null for direct input
channelNameStringDisplay name of the channel
channelHandleString@handle (e.g. @mkbhd)
channelUrlStringFull channel URL
emailString / nullPrimary contact email found
emailsArrayAll emails found (may include multiple)
subscriberCountNumber / nullTotal subscriber count
videoCountNumber / nullTotal published videos
descriptionStringFull channel description text
socialLinksArrayList of {title, url} external links
avatarUrlStringChannel profile image URL
isVerifiedBooleanWhether channel has verified badge
countryStringChannel's listed country
joinedDateStringWhen the channel joined YouTube
scrapedAtStringISO 8601 timestamp of when data was collected

๐Ÿ’ต How much does it cost to scrape YouTube channel emails?

This actor uses pay-per-event (PPE) pricing โ€” you pay only for results:

EventPrice
Actor start$0.005 (one-time)
Per channel processed$0.002
Per email found$0.02

Keyword discovery adds no separate charge event. Each unique channel actually processed uses the existing per-channel event, and duplicates are charged only once.

Example costs:

  • Scrape 100 channels, 30 have emails: $0.005 + 100 ร— $0.002 + 30 ร— $0.02 = $0.805
  • Scrape 500 channels, 150 have emails: $0.005 + 500 ร— $0.002 + 150 ร— $0.02 = $4.005
  • Scrape 50 channels with onlyWithEmail=true, 20 emails found: $0.005 + 50 ร— $0.002 + 20 ร— $0.02 = $0.505

๐Ÿ’ก Competitor comparison: Many YouTube email scrapers charge higher per-email rates. This actor starts at $0.02 per email found on the Bronze tier, with volume discounts on higher plans.

Free plan estimate: The Apify free tier includes $5/month of compute credit. That's enough to find approximately 200+ emails per month at no cost.


๐Ÿš€ How to scrape YouTube channel emails โ€” step by step

  1. Create a free Apify account at apify.com
  2. Open the YouTube Channel Email Scraper actor page
  3. Add known channels, enter up to 10 searchQueries, or combine both
  4. Set maxChannelsPerQuery (1โ€“50, default 10) to bound discovery from each initial search response
  5. Optionally enable Only output channels with email to get a clean lead list
  6. Click Start, then download results as JSON, CSV, or Excel โ€” or push them to your CRM via the API

โš™๏ธ Input parameters

FieldTypeDefaultDescription
channelsArray of stringsOptionalKnown YouTube channels. Accepts URLs, @handles, or channel IDs.
searchQueriesArray of stringsOptionalUp to 10 trimmed, unique niche or keyword searches. Uses only each initial anonymous WEB InnerTube response.
maxChannelsPerQueryInteger10Channels collected per query (1โ€“50). Used only when searchQueries is non-empty.
onlyWithEmailBooleanfalseSkip channels without emails. Only saves channels where at least one email was found.
maxConcurrencyInteger5Max parallel requests (1โ€“20). Higher = faster but may rate-limit.

Supported input formats

At least one non-empty channels entry or searchQueries entry is required. Direct channels are processed first, followed by discovered channels; duplicate resolved channel IDs retain their first source and are processed once.

All of the following are valid entries in the channels list:

  • @mkbhd โ€” @handle
  • https://www.youtube.com/@mkbhd โ€” full channel URL
  • https://www.youtube.com/channel/UCBJycsmduvYEL83R_U4JriQ โ€” /channel/ URL
  • UCBJycsmduvYEL83R_U4JriQ โ€” raw channel ID

๐Ÿ“ฆ Output examples

Channel with email found

{
"channelId": "UCBJycsmduvYEL83R_U4JriQ",
"sourceType": "search",
"sourceQuery": "technology reviewers",
"channelName": "Marques Brownlee",
"channelHandle": "@mkbhd",
"channelUrl": "https://www.youtube.com/channel/UCBJycsmduvYEL83R_U4JriQ",
"email": "business@mkbhd.com",
"emails": ["business@mkbhd.com"],
"subscriberCount": 20900000,
"videoCount": 1800,
"description": "MKBHD: Quality Tech Videos | YouTuber | Geek | Consumer Electronics | Tech Head | Internet Personality!\n\nbusiness@MKBHD.com\n\nNYC",
"socialLinks": [
{ "title": "twitter.com/MKBHD", "url": "http://twitter.com/MKBHD" }
],
"avatarUrl": "https://yt3.googleusercontent.com/...",
"isVerified": false,
"country": "",
"joinedDate": "",
"scrapedAt": "2026-04-04T10:17:23.243Z"
}

Channel without email

{
"channelId": "UCVjgV3uCgdAbllTqnCgSb-g",
"sourceType": "direct",
"sourceQuery": null,
"channelName": "NASA",
"channelHandle": "@NASA",
"channelUrl": "https://www.youtube.com/channel/UCVjgV3uCgdAbllTqnCgSb-g",
"email": null,
"emails": [],
"subscriberCount": 13700000,
"videoCount": 2100,
"description": "Welcome to NASA's official YouTube channel...",
"socialLinks": [
{ "title": "nasa.gov", "url": "https://www.nasa.gov" }
],
"avatarUrl": "https://yt3.googleusercontent.com/...",
"isVerified": true,
"country": "United States",
"joinedDate": "Sep 19, 2005",
"scrapedAt": "2026-04-04T10:17:22.123Z"
}

๐Ÿ’ก Tips for best results

Building targeted lead lists

Start with searchQueries such as sustainable fashion creators or B2B SaaS reviews, then use onlyWithEmail: true for a clean list of actionable contacts. Discovery is anonymous, bounded by maxChannelsPerQuery, and does not paginate or crawl videos. You can also supply channels in the same run; direct entries keep priority when duplicates occur.

Finding emails that aren't in the About section

Some creators include their business email in the channel description text rather than the "contact" field. This actor scans both locations, so you don't miss those.

Bulk processing large lists

Set maxConcurrency to 10โ€“15 for faster processing of large channel lists. The default of 5 is conservative โ€” YouTube's InnerTube API has no strict rate limits for reasonable volumes.

Identifying channels to skip

Channels that have no email tend to be: large corporate brands, news channels, government accounts, and very large creators who route all business through management. Small to mid-size creators (1Kโ€“500K subscribers) have the highest rate of public business emails.

Exporting to Google Sheets

Use the Apify โ†’ Google Sheets integration or download as CSV. Each field maps cleanly to a column since all fields are flat primitives.


๐Ÿ”— Integrations

CRM enrichment

Push scraped emails directly into your CRM using the Apify โ†’ Zapier integration or Apify โ†’ Make (Integromat):

  1. Run this actor via the API with your channel list
  2. Use a Zap/scenario to watch for new dataset items
  3. Automatically create new contacts or update existing records in HubSpot, Salesforce, or Pipedrive

Email outreach automation

Connect with email platforms like Instantly.ai or Lemlist:

  1. Export results as CSV
  2. Import into your email sequences tool
  3. Filter on email != null to ensure all contacts are reachable

Influencer marketing platforms

Enrich your influencer database by running this actor on a list of channels from your existing database, then pushing the email data back via the Apify dataset API.

Google Sheets live dashboard

Use the Apify Google Sheets Actor to stream results directly into a spreadsheet as they're scraped. Great for team collaboration on influencer outreach.


๐Ÿ› ๏ธ API usage

Node.js (JavaScript)

import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });
const run = await client.actor('automation-lab/youtube-channel-email-scraper').call({
channels: ['@mkbhd'],
searchQueries: ['technology reviewers'],
maxChannelsPerQuery: 10,
onlyWithEmail: true,
maxConcurrency: 10,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(`Found ${items.filter(i => i.email).length} channels with emails`);
for (const item of items) {
if (item.email) console.log(`${item.channelName}: ${item.email}`);
}

Python

from apify_client import ApifyClient
client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("automation-lab/youtube-channel-email-scraper").call(run_input={
"channels": ["@mkbhd"],
"searchQueries": ["technology reviewers"],
"maxChannelsPerQuery": 10,
"onlyWithEmail": True,
"maxConcurrency": 10,
})
items = client.dataset(run["defaultDatasetId"]).list_items().items
for item in items:
if item.get("email"):
print(f"{item['channelName']}: {item['email']}")

cURL

curl -X POST "https://api.apify.com/v2/acts/automation-lab~youtube-channel-email-scraper/runs?token=YOUR_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channels": ["@mkbhd"],
"searchQueries": ["technology reviewers"],
"maxChannelsPerQuery": 10,
"onlyWithEmail": true,
"maxConcurrency": 10
}'

๐Ÿค– MCP โ€” Use with Claude AI

This actor works as an MCP (Model Context Protocol) server, letting you run it directly from Claude Code, Claude Desktop, or any MCP-compatible AI tool.

Setup โ€” Claude Code / Cursor / VS Code

$claude mcp add --transport http apify "https://mcp.apify.com?tools=automation-lab/youtube-channel-email-scraper"

Setup โ€” Claude Desktop / Cursor / VS Code

Add to your claude_desktop_config.json (or equivalent MCP config):

{
"mcpServers": {
"youtube-email-scraper": {
"type": "http",
"url": "https://mcp.apify.com?tools=automation-lab/youtube-channel-email-scraper",
"env": {
"APIFY_TOKEN": "YOUR_API_TOKEN"
}
}
}
}

Example prompts for Claude

  • "Scrape the contact emails for these 20 tech YouTube channels: [list]"
  • "Find business emails for fitness YouTubers with over 100K subscribers: [channel list]"
  • "Get contact info for all channels in this list and filter to only those with emails"
  • "What's the contact email for @mkbhd?"

Yes. The email addresses extracted by this actor are publicly posted by channel owners in their About section. They choose to make their contact information visible to anyone who visits their YouTube channel page. Collecting publicly available contact information for legitimate business outreach is lawful in most jurisdictions.

This actor only reads data that is publicly accessible โ€” it does not access private data, bypass authentication, or collect data from restricted sections. The YouTube Terms of Service permit automated access to public data for personal and non-commercial use. For commercial use at scale, review YouTube's API Terms of Service.

Important: Always use scraped contact data responsibly. Do not use it for spam. Comply with anti-spam laws (CAN-SPAM, GDPR, CASL) when sending commercial emails.


โ“ FAQ

Q: How does keyword discovery work? A: The actor sends each searchQueries value to YouTube's anonymous WEB InnerTube search endpoint and reads channel results from the initial response only. It does not paginate, scrape videos, log in, use cookies, solve CAPTCHAs, or crawl external sites. A failed query is skipped with a warning so other queries and direct channels can continue.

Q: Why is the email field null for some channels? A: Not all YouTube creators list a public business email. Large brands, news organizations, government channels, and many of the biggest creators don't expose an email on their About page. Creators in the 1Kโ€“500K subscriber range tend to have the highest rate of public emails (~30โ€“40%).

Q: How accurate are the emails? A: Very high โ€” the actor extracts emails exactly as written by the channel owner in their About section or description. It doesn't guess, generate, or construct emails. If an email is shown, it was posted by the creator.

Q: Can I scrape thousands of channels? A: Yes. The actor can process any number of channels. For very large lists (1000+), consider splitting into batches and running multiple times, or increase maxConcurrency to 15โ€“20.

Q: Will this work on channels with custom URLs like /c/channelname? A: Yes. The actor uses YouTube's URL resolution API, which handles all URL formats: /c/, /channel/, /@handle, and bare handles.

Q: The actor processed a channel but found no email โ€” could the email be there? A: If the creator has the "View email address" button on their About page (which requires a YouTube account login to see), the email is intentionally hidden from unauthenticated viewers and cannot be extracted without logging in. The actor only finds emails that are publicly visible without authentication.

Q: I'm getting fewer results than expected. What should I check? A: Verify your input handles/URLs are correct. Invalid or deleted channel handles will be silently skipped with a warning in the logs. You can view run logs in the Apify console under the Runs tab.