YouTube Lead Scraper avatar

YouTube Lead Scraper

Pricing

from $2.65 / 1,000 public leads

Go to Apify Store
YouTube Lead Scraper

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é

Maxime Dupré

Maintained by Community

Actor stats

0

Bookmarked

6

Total users

1

Monthly active users

10 days ago

Last modified

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.

📦 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.

FieldWhat it means
emailNormalized public email address for the lead.
matchedInputSearch keyword or channel target that produced the row.
sourceUrlPublic URL where the email was found or evidenced.
sourceTitleChannel or page title when visible.
emailSourceProduct-level source surface where the email was found.
sourceTextShort public text excerpt for audit when available.
youtubeChannelChannel ID, handle, title, and canonical URL when known.
publicWebsiteUrlPublic website linked from the channel when visible.
socialLinksPublic social/profile links exposed by the channel.
channelContextDescription, 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.

  1. Open the Input tab.
  2. Fill exactly one target section: Search keywords or YouTube channels.
  3. For keyword runs, choose Discovery scope and set Max leads per search keyword.
  4. Optionally add a location, such as United States or London.
  5. Optionally add email domains, such as gmail.com or company.com, if you only want matching addresses.
  6. Keep Check linked websites on when you want the Actor to check public websites linked from channels.
  7. 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

FieldTypeWhat it does
discoveryMethodstringSelects searchKeywords or channelTargets for the run.
searchKeywordsarray of stringsSearches YouTube for leads from niches, roles, products, or places.
resultScopestringUses focused channelPages or broader allYouTubeResults discovery for keyword runs.
maxLeadsPerSearchinteger or emptySets an upper bound for accepted public email leads for each keyword. Leave it empty to return all available results until the source is exhausted.
locationstring or emptyAdds a city, country, or region to a keyword search.
channelTargetsarray of stringsChecks known YouTube channel URLs, @handles, or channel IDs.
minimumSubscribersinteger or emptyKeeps known channels with at least this many visible subscribers. Leave it empty to skip this filter.
categoryKeywordsarray of stringsFilters known channels by terms in their public channel descriptions. Leave it empty to skip this filter.
emailDomainsarray of stringsKeeps public leads from the listed email domains. Leave it empty to keep all domains.
includeLinkedSitesbooleanAlso checks public websites linked from a channel for contact emails.
includeVideoDescriptionsbooleanAlso 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

FieldTypeWhat it does
emailstringNormalized public email address for the lead.
matchedInputstringKeyword or channel target that led to the row.
sourceUrlstringPublic URL where the email was found or shown.
sourceTitlestring or nullTitle of the source page or channel, when shown.
emailSourcestringSays where the email was found: searchSnippet, youtubeChannel, linkedWebsite, or videoDescription.
sourceTextstring or nullShort public text that helps you check why the email was accepted.
youtubeChannelobjectPublic channel details, when known. See the dotted fields below.
youtubeChannel.idstring or nullStable YouTube channel ID, when known.
youtubeChannel.handlestring or nullPublic YouTube handle, when shown.
youtubeChannel.titlestring or nullPublic YouTube channel name, when shown.
youtubeChannel.urlstring or nullCanonical public YouTube channel URL, when known.
publicWebsiteUrlstring or nullPublic website linked from the channel, when shown.
socialLinksarray of stringsPublic social or profile links shown by the channel.
channelContextobjectPublic channel details, when shown. See the dotted fields below.
channelContext.descriptionstring or nullPublic channel description, when shown.
channelContext.locationstring or nullLocation given by the channel, when shown.
channelContext.subscriberCountinteger or nullVisible number of channel subscribers.
channelContext.videoCountinteger or nullVisible 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 🫡

Made with ❤️ by Maxime Dupré