YouTube Channel Finder With Contact Info Extraction avatar

YouTube Channel Finder With Contact Info Extraction

Pricing

$19.99/month + usage

Go to Apify Store
YouTube Channel Finder With Contact Info Extraction

YouTube Channel Finder With Contact Info Extraction

YouTube Channel Finder quickly discovers relevant YouTube channels based on keywords, niches, or topics. It scans search results, filters by metrics like subscribers and views, and returns structured data for research, outreach, or competitive analysis. Ideal for creators, marketers, and analysts.

Pricing

$19.99/month + usage

Rating

0.0

(0)

Developer

API Empire

API Empire

Maintained by Community

Actor stats

1

Bookmarked

25

Total users

0

Monthly active users

4 days ago

Last modified

Share

YouTube Channel Finder With Contact Info Extraction discovers YouTube channels by keyword or direct URL and returns each channel's profile stats, plain-text contact emails from the channel description, and every external link sorted by platform (Instagram, TikTok, X/Twitter, Facebook, LinkedIn, Discord, website). Every response is typed, normalized JSON — no HTML, no selectors, no parsing before you filter, dedupe, or load results into a CRM. After reading this page you'll know exactly which fields to expect and how to keep only channels with a real, usable contact signal.

What is YouTube Channel Finder With Contact Info Extraction?

YouTube Channel Finder With Contact Info Extraction is an Apify Actor that searches YouTube by keyword and/or accepts direct channel or video URLs, then fetches each channel's public /about page to build one contact-enriched row per channel. It runs fully anonymously — no YouTube login, Google account, or YouTube Data API key is required. It regex-extracts real emails from the channel's own description text and never fabricates YouTube's gated "Business email" button, which is not present anywhere in the public page.

  • Discover channels by niche keyword, with a configurable number of channels per keyword
  • Accept direct channel/video URLs to skip search entirely
  • Extract contactEmails — real, plain-text emails found in the description
  • Categorize every external link into socialLinks by platform (Instagram, TikTok, X/Twitter, Facebook, LinkedIn, Discord, website)
  • Filter to only channels with a usable contact signal via requireContactSignal
  • Export results as JSON, CSV, or any format the Apify dataset supports

What data does YouTube Channel Finder With Contact Info Extraction collect?

Each run returns three layers of data per channel: base profile/stats, contact emails, and categorized social links.

Data TypeKey FieldsJSON Field Names
Channel profile & statsname, handle, subscribers, views, videos, join date, countrychannelName, userName, channelId, subscriberCount, channel_views, videos_uploaded, joined_date, location
Contact emailsreal emails found in the description textcontactEmails
Social & website linkslinks grouped by platform, plus a contactable flagsocialLinks, links, hasContactSignal

Need more YouTube data?

If you also need comment-level engagement or video content, this account publishes other YouTube Actors worth pairing with this one. YouTube Comments Scraper: Comment Analytics & Keyword Search pulls comments and per-video engagement rollups from videos, channels, or playlists. YouTube Transcript Scraper With AI Insights fetches video transcripts and can distill them into AI-generated summaries and topic tags. Combine either with the channel/contact data here for a fuller picture of a creator's audience and content.

How does YouTube Channel Finder With Contact Info Extraction differ from the official YouTube API?

The YouTube Data API v3 is Google's official public API for channel and video metadata; it does not expose a public contact-email field, and every request is metered against a Google Cloud project's daily query quota. YouTube Channel Finder With Contact Info Extraction reads the same public /about page a browser sees and extracts what's actually written there, with no Google-side quota to manage.

FeatureYouTube Data API v3This Actor
Contact/business email fieldNot exposed publicly — a channel's "Business email" is only visible to the channel owner in YouTube StudioExtracts real, plain-text emails the creator wrote into the public description
SetupRequires a Google Cloud project and an API key or OAuth credentialsNo account, key, or credentials — run directly
Access limitsRequests are metered against a daily query quota managed in Google Cloud ConsoleBounded only by channelCount and the keywords/URLs you supply
Social link categorizationNot provided — the API returns raw channel metadata onlyReturns links pre-sorted into instagram, tiktok, twitter, facebook, linkedin, discord, website
Discovery inputKeyword search and channel lookups are separate endpointsAccepts keywords and direct URLs together in one run
Output shapeRequires you to map the API's nested response schema yourselfFlat, typed JSON row per channel, ready to filter or load

The official API is the right choice when you need Google-verified numeric metadata under Google's own terms and already maintain a Cloud project. This Actor is the fit when you need contact and social-link enrichment across many channels without quota management or API glue code.

Why do developers and teams scrape YouTube?

For influencer marketing and brand partnership teams

Brand and agency teams use this Actor to build a shortlist of creators in a niche and immediately see which ones are contactable. Instead of manually opening dozens of "About" pages, a single run with a niche keyword and requireContactSignal enabled returns only channels with a real contactEmails entry or a categorized social link. Pairing subscriberCount with socialLinks lets a partnerships team prioritize creators who also run an active Instagram or TikTok, then route the list straight into outreach tooling instead of a spreadsheet built by hand.

For sales and lead-generation teams

Sales teams selling into the creator economy use keywords plus channelCount to generate a volume list of prospects per niche, then filter with requireContactSignal to drop channels with nothing to contact. Because contactEmails and socialLinks are structured fields rather than free text, the output loads directly into a CRM or a cold-outreach sequencer without a manual extraction pass. channelId and canonicalChannelUrl give a stable key for deduping the same channel across repeated runs, and fromDate/toDate let a team target only recently joined or long-established channels within a niche before a single email is sent.

For researchers and market analysts

Researchers use direct URLs or niche keywords to map how many channels in a category maintain a public website, Instagram, or Discord alongside their YouTube presence, using only publicly visible /about page data. Combining location, joined_date, and subscriberCount across a batch of channels supports questions like how a niche's creator base has grown over time or which regions dominate a topic — all from data the channel owner has already chosen to publish. Because every row also carries channel_views and videos_uploaded, a batch of channels can be compared on output volume and reach without opening a single page by hand.

For developers building lead-gen and CRM data pipelines

Developers wire this Actor into a pipeline that runs on a schedule, pushes new rows to a database or CRM via the dataset API, and re-runs requireContactSignal filtering downstream. Because every row is typed JSON with stable field names (contactEmails, socialLinks, hasContactSignal), there's no HTML or selector logic to maintain in the pipeline itself — only the mapping from these fields to your own schema. A lead-gen product built on top can re-key results by channelId, merge new runs into an existing dataset, and expose hasContactSignal as a ready-made filter for end users.

How to scrape YouTube (step by step)

  1. Open YouTube Channel Finder With Contact Info Extraction on its Apify Store page and go to the Input tab.
  2. Add one or more entries to keywords (e.g. "cooking tutorials") and/or paste channel or video URLs into urls.
  3. Set channelCount (1-200 per keyword) and optionally turn on requireContactSignal to keep only channels with a real email or social link.
  4. Click Start — rows stream into the dataset live as each channel is processed.
  5. Download the results as JSON or CSV from the Dataset tab, or pull them via the Apify API.

What to do when YouTube changes its structure

This Actor is maintained, and its output schema is kept stable — field names and types don't change on your end even when YouTube's page markup does. No specific turnaround time is promised for any given fix.

⬇️ Input

ParameterRequiredTypeDescriptionExample Value
keywordsNoarraySearch terms to discover YouTube channels. One keyword per line.["cooking tutorials", "tech reviews"]
urlsNoarrayDirect channel or video URLs to extract contact data from, skipping search.["https://www.youtube.com/@apify"]
channelCountNointegerMax channels to extract per search keyword. Default 10, range 1-200.15
searchRegionNostring (enum)YouTube search region/country code. Default US."US"
languageNostring (enum)Interface and result language code. Default en."en"
fromDateNostringOnly include channels that joined on or after this date (YYYY-MM-DD)."2020-01-01"
toDateNostringOnly include channels that joined on or before this date (YYYY-MM-DD)."2024-12-31"
requireContactSignalNobooleanKeep only channels with an email or a categorized social/website link. Default false.true
proxyConfigurationNoobjectOptional Apify Proxy configuration. Runs with no proxy by default.{"useApifyProxy": false}

No parameter is required — leave both keywords and urls empty and the run simply produces no rows, so at least one of the two must be filled in.

Example JSON input:

{
"keywords": ["cooking tutorials", "tech reviews"],
"urls": ["https://www.youtube.com/@apify"],
"channelCount": 15,
"searchRegion": "US",
"language": "en",
"fromDate": "2020-01-01",
"toDate": "2024-12-31",
"requireContactSignal": true,
"proxyConfiguration": { "useApifyProxy": false }
}

The most common input mistake is expecting contactEmails to always be filled: it only contains an address when a creator has actually typed one into their description, so most channels will legitimately return an empty array — use requireContactSignal to filter those out automatically instead of treating an empty result as a bug.

⬆️ Output

Every run pushes one flat, typed JSON row per channel to the dataset (export as JSON, CSV, or any other format the Apify dataset supports). Each row bundles the channel's base profile and stats together with its contact emails and categorized social links in a single object — there is no separate lookup step.

Scraped Channel

{
"keyword": "python tutorials",
"channelName": "Example Dev Channel",
"userName": "@exampledevchannel",
"channelId": "UCxxxxxxxxxxxxxxxxxxxxxx",
"canonicalChannelUrl": "https://www.youtube.com/@exampledevchannel",
"subscriberCount": "128K subscribers",
"description": "Python and data science tutorials. For collaborations: partnership@example-dev.biz",
"contactEmails": ["partnership@example-dev.biz"],
"socialLinks": {
"website": [{ "title": "My site", "url": "https://example-dev.com" }],
"twitter": [{ "title": "Twitter", "url": "https://twitter.com/exampledevchannel" }],
"instagram": [],
"facebook": [],
"tiktok": [],
"discord": [],
"linkedin": [],
"other": []
},
"hasContactSignal": true,
"location": "United States",
"links": [
{ "title": "My site", "url": "https://example-dev.com" },
{ "title": "Twitter", "url": "https://twitter.com/exampledevchannel" }
],
"joined_date": "Joined Mar 5, 2018",
"channel_views": 15200000,
"videos_uploaded": 342,
"url": "https://www.youtube.com/@exampledevchannel",
"error": null,
"scrapedAt": "2026-07-11T12:00:00+00:00"
}

How many results can you scrape with YouTube Channel Finder With Contact Info Extraction?

Each keyword returns up to channelCount channels, capped at 200 per keyword — the Actor makes one serial HTTP fetch per channel's /about page, so this range is what the engine can realistically deliver in a single run rather than an arbitrary cutoff. There is no separate global cap: total channels from keywords add up as channelCount × number of keywords, and every direct URL in urls is processed 1:1 in addition to that. requireContactSignal reduces the number of rows actually saved (channels without a usable contact signal are skipped), so set channelCount a bit higher than your target row count when that filter is on. There is no pagination to configure — results stream into the dataset live as each channel finishes processing.

Integrate YouTube Channel Finder With Contact Info Extraction and automate your workflow

YouTube Channel Finder With Contact Info Extraction works with any language or tool that can send an HTTP request, through the standard Apify API.

REST API integration

from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run = client.actor("API-Empire/youtube-channel-finder-with-contact-info-extraction").call(
run_input={
"keywords": ["cooking tutorials"],
"channelCount": 15,
"requireContactSignal": True,
}
)
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item["channelName"], item["contactEmails"])

Works in Python, Node.js, Go, Ruby, cURL — any client that can call the Apify API with your token.

Automation platforms (n8n, Make)

In n8n, the Apify node's "Run Actor" operation (with "Get Dataset Items" chained after it) can trigger this Actor and pull the resulting rows straight into a workflow — no custom HTTP node required. In Make, the Apify app's "Run an Actor" module does the same, letting you feed keywords or urls from an earlier module and route contactEmails/socialLinks into a CRM or spreadsheet module downstream.

Yes. YouTube Channel Finder With Contact Info Extraction only collects data that is already publicly visible on a channel's own /about page — no login, no bypassing of any access control, and no data from private or restricted channels. Because a channel's contact email and social links are personal data when they identify or can be linked to an individual, GDPR and CCPA (and equivalent regulations in your jurisdiction) govern how you may store, process, and use them — you need a lawful basis for outreach or storage, and recipients generally retain a right to object or request deletion. Consult legal counsel for commercial use cases involving bulk personal data.

Frequently asked questions

Does YouTube Channel Finder With Contact Info Extraction work without a YouTube account?

Yes. The Actor runs fully anonymously — no Google account, cookie, login, or YouTube Data API key is used or required at any point.

How often is the scraped data updated?

Every run performs a live fetch of each channel's public /about page at the moment it runs — nothing is served from a cache, so scrapedAt reflects the actual fetch time.

What happens if a channel's page can't be resolved, or a keyword returns no channels?

The row is still pushed, but with error set to a message such as "about page not resolvable" or "No channels found" instead of the run failing — check the error field rather than assuming every row succeeded.

Can I scrape private or restricted YouTube channels?

No. Only the public /about page is read. Channels with no public presence, or content gated behind a login, are outside what this Actor can access.

Does YouTube Channel Finder With Contact Info Extraction work for AI agent workflows and LLM pipelines?

Yes. It's callable as a standard HTTP endpoint by any agent framework via the Apify API, and every response is typed JSON with stable field names — no HTML or parsing step is needed before passing results to an LLM.

How does it handle YouTube's anti-bot measures?

Failed requests retry up to three times with a jittered exponential backoff. If a response looks like a block (403, 429, CAPTCHA, or similar), the Actor automatically switches to Apify's Residential proxy for the rest of the run — this escalation happens on a detected block even if you started the run with no proxy configured.

Does YouTube Channel Finder With Contact Info Extraction return data in a format LLMs can use directly?

Yes. Output is typed, normalized JSON with stable keys like contactEmails and socialLinks — pass it directly into an LLM context window, a vector store, or an agent tool without a parsing step.

Can I use this Actor without managing proxies?

Yes. By default it runs with no proxy at all, and if it detects a block partway through a run, it switches to Apify's Residential proxy automatically. You can also optionally enable Apify Proxy up front via proxyConfiguration.

Why is contactEmails sometimes empty?

Most channels simply don't put an email address in their public description — that's reported honestly as an empty array rather than guessed or padded. Turn on requireContactSignal to automatically skip channels with no email and no social link.

links is the flat, uncategorized list of every external link on the channel's about page. socialLinks is the same links re-organized into named buckets by platform (instagram, twitter, tiktok, facebook, linkedin, discord, website, other) so you can filter or read them at a glance.

What happens when YouTube changes its structure or blocks the scraper?

The Actor is maintained, and its output schema stays stable — field names and types don't change on your end. No specific numeric turnaround time is promised for any given fix.

Your feedback

Found a bug or missing a field? We want to know. Use the Issues tab on this Actor's Apify Store page, or reach out through Apify Console — reports like these are how the extraction logic and field coverage keep improving.