YouTube Channel & Contact Scraper
Pricing
from $10.00 / 1,000 results
Go to Apify Store
YouTube Channel & Contact Scraper
Scrapes YouTube channels for public metadata and contact details (emails in description, social links, website).
Pricing
from $10.00 / 1,000 results
Rating
0.0
(0)
Developer
Jason Giang
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
10 days ago
Last modified
Categories
Share
Apify actor that scrapes a YouTube channel's public About page and returns:
- Channel metadata (handle, channel ID, country, join date, subscriber/view/video counts, avatar, banner, RSS feed)
- All public links the creator has listed (auto-classified by platform: twitter, instagram, tiktok, website, etc.)
- Email addresses found in the description and link list
- A best-effort guess at whether the channel is managed by an MCN, talent agency, or network, with confidence level and the signal that triggered the match
No YouTube Data API key required. Scrapes the public /@handle/about page and parses YouTube's embedded ytInitialData JSON.
Input
| Field | Type | Required | Default | Description |
|---|---|---|---|---|
channels | string[] | yes | — | Channel URLs, @handles, custom names, or channel IDs (UC…). All forms are accepted; see examples below. |
proxyConfiguration | object | no | { useApifyProxy: true } | Apify proxy config. Recommended for non-trivial volumes. |
maxConcurrency | integer | no | 5 | Number of channels fetched in parallel (1–50). |
Accepted channel formats:
{"channels": ["@MrBeast","https://youtube.com/@LinusTechTips","UCX6OQ3DkcsbYNE6H8uQQuVA","veritasium"]}
Output
One record per input channel pushed to the default dataset. Failed inputs produce { input, error, scrapedAt } records so nothing is silently dropped.
Sample successful record
{"sourceUrl": "https://www.youtube.com/@LinusTechTips/about","channelId": "UCXuqSBlHAE6Xw-yeJA0Tunw","handle": "@LinusTechTips","title": "Linus Tech Tips","description": "Tech can be complicated; we try to make it easy. …","canonicalUrl": "http://www.youtube.com/@LinusTechTips","country": "Canada","joinedDate": "Joined Nov 24, 2008","subscriberCount": "16.6M subscribers","videoCount": "6,729 videos","viewCount": "7,438,210,001 views","keywords": "linus tech tips ltt …","avatarUrl": "https://yt3.googleusercontent.com/…","bannerUrl": "https://yt3.googleusercontent.com/…","rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UCXuqSBlHAE6Xw-yeJA0Tunw","links": [{ "title": "LTT Store", "url": "https://www.lttstore.com/" },{ "title": "Floatplane", "url": "https://www.floatplane.com/" },{ "title": "Twitter", "url": "https://twitter.com/linustech" }],"socials": {"website": ["https://www.lttstore.com/", "https://www.floatplane.com/"],"twitter": ["https://twitter.com/linustech"],"facebook": ["https://www.facebook.com/LinusTech"],"instagram": ["https://www.instagram.com/linustech"],"tiktok": ["https://www.tiktok.com/@linustech"]},"emails": ["partnerships@linusmediagroup.com"],"network": {"name": "Linus Media Group","confidence": "high","signals": [{ "type": "email_domain", "evidence": "partnerships@linusmediagroup.com" },{ "type": "link_hostname", "evidence": "https://www.linusmediagroup.com/" }]},"otherNetworkMatches": [],"likelyAgencyManaged": true,"agencyEmailDomain": "linusmediagroup.com","scrapedAt": "2026-05-08T16:28:24.189Z"}
Output field reference
| Field | Type | Notes |
|---|---|---|
sourceUrl | string | The /about URL fetched. |
channelId | string | YouTube channel ID (UC…). |
handle | string | @handle. |
title | string | Channel display name. |
description | string | Full description text. |
canonicalUrl | string | YouTube's canonical channel URL. |
country | string | Reported country. |
joinedDate | string | Join date as displayed. |
subscriberCount / videoCount / viewCount | string | Display strings (e.g. "16.6M subscribers"); not parsed to numbers. |
keywords | string | Channel keywords. |
avatarUrl / bannerUrl | string | Largest available image URL. |
rssUrl | string | YouTube's RSS feed for the channel. |
links | { title, url }[] | All channel links, with YouTube redirect wrappers unwrapped to the real destination. |
socials | object | Links grouped by platform (twitter, instagram, tiktok, facebook, youtube, twitch, discord, patreon, website, …). |
emails | string[] | Emails found in description + link titles/URLs. Common false-positive domains (*.youtube.com, *.googleusercontent.com, …) are filtered out. |
network | object | null | Detected MCN/agency, see below. |
otherNetworkMatches | string[] | Other networks that also matched (rare). |
likelyAgencyManaged | boolean | True if a non-personal email domain is exposed and it doesn't match the channel's own brand. |
agencyEmailDomain | string | null | The email domain that triggered the heuristic. |
Limitations
- Recall is bounded by what creators publish. A channel managed by Spotter/Jellysmack/Night Media that only links its personal Twitter+Instagram will show as
unmanaged— there's no way to detect the relationship from public channel data alone. - The gated business email is unreachable. YouTube hides the channel's "view email address" behind a CAPTCHA. Emails surfaced by this actor come from the description and link metadata only.
description_phrasematches are intentionally rare. A bare mention like "I love Spotter's videos" won't match — the description must also contain a management phrase.- Network domains drift. When you find a hit that exposes a new domain (e.g. an agency rebrands), append it to the existing entry's
domainsarray.