YouTube Lead Scraper
Pricing
from $2.65 / 1,000 public leads
YouTube Lead Scraper
YouTube Lead Scraper finds public creator emails from keywords or known channels. Export source evidence, channel identity, websites, social links, and visible channel context.
Pricing
from $2.65 / 1,000 public leads
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
6
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
🔎 YouTube email scraper for creator leads
For marketers, agencies, and creator researchers, YouTube Lead Scraper finds public creator and business email leads from YouTube keywords or known channels. Each saved row includes a contact email, source evidence, channel identity, linked website, social links, and visible channel context, so you can review contactable leads before outreach.
- Use a YouTube channel email scraper to check known channel URLs, @handles, or channel IDs for public contact emails.
- Run YouTube lead scraper keyword discovery to discover contactable creator leads from niche keywords and location-focused searches.
- Build YouTube creator outreach lists with email, source URL, channel title, website, social links, and public evidence text.
- Research Influencer partnership research by exporting source-backed channel context before creator or sponsorship outreach.
- Create YouTube B2B lead generation datasets from public YouTube channels and linked public websites without a YouTube API key.
📦 YouTube leads you can export
Each dataset row is the first eligible occurrence of one unique channel-and-email lead. The Actor saves a row only when it finds at least one public email address, so the dataset stays focused on contactable leads.
| Field | What it means |
|---|---|
email | Normalized public email address for the lead. |
matchedInput | Search keyword or channel target that produced the row. |
sourceUrl | Public URL where the email was found or evidenced. |
sourceTitle | Channel or page title when visible. |
emailSource | Product-level source surface where the email was found. |
sourceText | Short public text excerpt for audit when available. |
youtubeChannel | Channel ID, handle, title, and canonical URL when known. |
publicWebsiteUrl | Public website linked from the channel when visible. |
socialLinks | Public social/profile links exposed by the channel. |
channelContext | Description, location, subscriber count, and video count when visible. |
You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML, or read the same rows through the Apify API.
▶️ Run a YouTube lead search
- Open the Input tab.
- Fill exactly one target section: Search keywords or YouTube channels.
- For keyword runs, choose Discovery scope and set Max leads per search keyword.
- Optionally add a location, such as
United StatesorLondon. - Optionally add email domains, such as
gmail.comorcompany.com, if you only want matching addresses. - Keep Check linked websites on when you want the Actor to check public websites linked from channels.
- Start the run and open the dataset.
Use Search keywords when you want the Actor to discover channels from a niche. Use YouTube channels when you already know the channels you want to check. If you want both workflows, make two runs so each run has one clear target type.
Known-channel input
{"discoveryMethod": "channelTargets","channelTargets": ["@mkbhd","https://www.youtube.com/@veritasium"],"includeLinkedSites": true}
Keyword input from a successful default run
{"searchKeywords": ["fitness coach","real estate investing"],"resultScope": "channelPages","maxLeadsPerSearch": 25,"emailDomains": [],"includeLinkedSites": true}
⚙️ Input
Choose Search keywords or Known channels for each run. Use another run when you want to use the other workflow.
Input fields
| Field | Type | What it does |
|---|---|---|
discoveryMethod | string | Selects searchKeywords or channelTargets for the run. |
searchKeywords | array of strings | Searches YouTube for leads from niches, roles, products, or places. |
resultScope | string | Uses focused channelPages or broader allYouTubeResults discovery for keyword runs. |
maxLeadsPerSearch | integer or empty | Sets an upper bound for accepted public email leads for each keyword. Leave it empty to return all available results until the source is exhausted. |
location | string or empty | Adds a city, country, or region to a keyword search. |
channelTargets | array of strings | Checks known YouTube channel URLs, @handles, or channel IDs. |
minimumSubscribers | integer or empty | Keeps known channels with at least this many visible subscribers. Leave it empty to skip this filter. |
categoryKeywords | array of strings | Filters known channels by terms in their public channel descriptions. Leave it empty to skip this filter. |
emailDomains | array of strings | Keeps public leads from the listed email domains. Leave it empty to keep all domains. |
includeLinkedSites | boolean | Also checks public websites linked from a channel for contact emails. |
includeVideoDescriptions | boolean | Also checks relevant public YouTube video descriptions for contact emails. |
Lead limit
maxLeadsPerSearch is an upper bound, not a guarantee. Leave it empty to return all available results until the source is exhausted. Public email availability can still produce fewer rows.
🧾 Output
Dataset link
Open the results link in the Output tab to view the default dataset. Each row has the same lead shape. Optional values can be null or empty when YouTube or a linked website does not expose them publicly.
Output fields
| Field | Type | What it does |
|---|---|---|
email | string | Normalized public email address for the lead. |
matchedInput | string | Keyword or channel target that led to the row. |
sourceUrl | string | Public URL where the email was found or shown. |
sourceTitle | string or null | Title of the source page or channel, when shown. |
emailSource | string | Says where the email was found: searchSnippet, youtubeChannel, linkedWebsite, or videoDescription. |
sourceText | string or null | Short public text that helps you check why the email was accepted. |
youtubeChannel | object | Public channel details, when known. See the dotted fields below. |
youtubeChannel.id | string or null | Stable YouTube channel ID, when known. |
youtubeChannel.handle | string or null | Public YouTube handle, when shown. |
youtubeChannel.title | string or null | Public YouTube channel name, when shown. |
youtubeChannel.url | string or null | Canonical public YouTube channel URL, when known. |
publicWebsiteUrl | string or null | Public website linked from the channel, when shown. |
socialLinks | array of strings | Public social or profile links shown by the channel. |
channelContext | object | Public channel details, when shown. See the dotted fields below. |
channelContext.description | string or null | Public channel description, when shown. |
channelContext.location | string or null | Location given by the channel, when shown. |
channelContext.subscriberCount | integer or null | Visible number of channel subscribers. |
channelContext.videoCount | integer or null | Visible number of channel videos. |
Example lead row
This complete row comes from a successful run:
{"email": "maggie@wmt.digital","matchedInput": "Streaming Highlights","sourceUrl": "https://www.theufl.com/tickets","sourceTitle": "United Football League (UFL)","emailSource": "linkedWebsite","sourceText": "...t\":17,\"mainImage\":10,\"categories\":18,\"contentBlocks\":19},955,\"Tickets\",\"page\",\"https:\\u002F\\u002Fwww.theufl.com\\u002Ftickets\",null,false,{\"id\":13,\"firstName\":14,\"lastName\":14},34,\"maggie@wmt.digital\",[],\"2025-01-21T21:23:00.000000Z\",\"2025-02-27T17:37:45.000000Z\",[],[20,41,98,104],{\"id\":21,\"data\":22,\"component\":40},14653,{\"anchor\":10,\"title\":23,\"description\":10,\"image\":24,\"mob...","youtubeChannel": {"id": "UCLe5jAObhLYJqFHEI4aPi4g","handle": "@theUFL","title": "United Football League (UFL)","url": "https://www.youtube.com/channel/UCLe5jAObhLYJqFHEI4aPi4g"},"publicWebsiteUrl": "https://www.theufl.com/tickets","socialLinks": ["https://www.facebook.com/ufl","https://www.instagram.com/ufl/","https://www.tiktok.com/@ufl","https://x.com/TheUFL","https://www.threads.net/@ufl"],"channelContext": {"description": "The United Football League (the \"UFL\"), is the professional Spring Football league, forging the future of the game and fueling football-hungry fans with More...","location": "United States","subscriberCount": 203000,"videoCount": 9000}}
💳 Pricing
This Actor uses pay-per-event pricing. One event covers one unique creator or business lead saved with a public contact email. Search work and repeated matches do not create this event. The Store shows the event price for your plan.
🔌 Integrations
Ways to use the data
- Use the Apify API to send YouTube lead rows into your own app, database, or enrichment pipeline.
- Export finished datasets as CSV, Excel, JSON, XML, RSS, or HTML for spreadsheets and CRM imports.
- Schedule repeat runs for saved keyword lists or channel lists.
- Trigger webhooks after a run to pass new public leads into downstream tools.
❓ FAQ
Can I check emails from a list of YouTube channels?
Yes. Add channel URLs, @handles, or channel IDs in YouTube channels and leave Search keywords empty.
Can I discover leads from several keywords in one run?
Yes. Add one or more phrases in Search keywords, such as fitness coach, wedding planner, or tech reviewer contact email. The Actor uses one shared keyword workflow for the run and saves only contactable rows.
Can it find emails on websites linked from YouTube channels?
Yes, when Check linked websites is enabled. The Actor checks a relevant public website linked from the channel and saves emails found there.
What happens when I leave the lead limit empty?
The Actor returns all available results until the source is exhausted. This does not promise that every result has a public email.
Why did my run return fewer leads than the limit?
The limit is a cap, not a guarantee. The Actor saves only channels or linked websites where it finds a public email, and many channels do not publish one.
How are duplicate leads handled?
The first eligible occurrence of a channel-and-email lead is saved. Later matches of the same lead are ignored. The saved row keeps the first matched input and source evidence.
Does it need a YouTube login or API key?
No. The Actor uses public YouTube pages and public linked websites. It does not need YouTube cookies, a private account, or a Google API key.
What can I use for other YouTube data?
For channel metadata without email discovery, use a YouTube channel scraper. For broader creator discovery across several platforms, use an influencer scraper. For website-only contact discovery, use a website email scraper.
📝 Changelog
v0.1 (01-09-2026)
- Progress logs now show the number of leads saved so far instead of the requested capacity.
- Keyword runs can leave the lead limit empty to return available results until the source is exhausted.
- Known-channel runs can filter channels by minimum subscribers and category keywords.
- Optional video-description checking can find public contact emails in relevant YouTube videos.
- Linked-site checks focus on likely channel-owned websites, avoiding unrelated sponsor and affiliate pages.
v0.0
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- YouTube Channel Search Scraper - Find public channels by keyword before checking them for contact emails.
- YouTube Channel Scraper - Export channel profiles and recent video rows when you need metadata beyond lead contacts.
- Website Emails Scraper - Check known public websites for contact emails after channel discovery.
- YouTube Channel Statistics Scraper - Collect public subscriber, view, and video counts for channel research.
- YouTube Description Extractor - Read full public video descriptions when contact details may be in video text.
Made with ❤️ by Maxime Dupré