YouTube Channel Scraper - Subscribers, Emails & Videos avatar

YouTube Channel Scraper - Subscribers, Emails & Videos

Pricing

from $1.40 / 1,000 channel profiles

Go to Apify Store
YouTube Channel Scraper - Subscribers, Emails & Videos

YouTube Channel Scraper - Subscribers, Emails & Videos

YouTube channel scraper for influencer lists. Paste URLs or @handles and get subscribers, video counts, descriptions, public emails from the About text, tags, avatars, banners and recent uploads. One row per channel. No API key. $2 per 1,000 channels.

Pricing

from $1.40 / 1,000 channel profiles

Rating

0.0

(0)

Developer

Group Oject

Group Oject

Maintained by Community

Actor stats

0

Bookmarked

4

Total users

0

Monthly active users

8 hours ago

Last modified

Share

YouTube Channel Scraper - Subscribers, Emails & Recent Videos

Turn a list of YouTube channels into a clean spreadsheet of creator profiles: name, handle, subscriber count, video count, description, public emails listed in the channel description, tags, avatar, banner, RSS feed and the latest uploads. Paste URLs, @handles or channel IDs. No YouTube API key, no login. $2 per 1,000 channels.

YouTube Channel Scraper output in Apify: channel, handle, subscribers, videos, emails, channel url, avatar

Real output from a default run of YouTube Channel Scraper in Apify Console.

What can YouTube Channel Scraper do?

  • Scrape channel profiles in bulk: up to 5,000 channels per run from URLs, @handles, or UC... IDs. Paste a list one per line.
  • Get audience size: subscriber count and video count as numbers, plus the text YouTube shows (for example 1.2M subscribers).
  • Find contact emails in the channel description: any email address written in the public "About" text is extracted into emails.
  • Collect channel metadata: description, keywords, tags, avatar, banner, canonical and vanity URLs, family-safe flag.
  • Attach recent uploads: up to 50 of the latest videos per channel from the public feed, with title, publish date, views and thumbnail.
  • One row per channel, so the output drops straight into a CRM, Airtable or Google Sheets.

Built for influencer marketing lists, sponsorship and creator outreach research, competitor channel benchmarking, and enriching lists of YouTube handles you already have.

What data can I extract from YouTube channels?

FieldDescription
channelId, title, handleChannel ID, name and @handle
channelUrl, vanityUrl, rssUrlCanonical URL, custom URL and RSS feed
subscriberCount, subscriberCountTextSubscribers as a number and as shown
videoCount, videoCountTextNumber of videos as a number and as shown
descriptionChannel description ("About" text)
emailsEmail addresses found in the description
tags, keywordsChannel tags and keywords
avatarUrl, bannerUrlHighest-resolution avatar and banner images
isFamilySafe, isUnlistedChannel flags
recentVideos, recentVideoCountLatest uploads: videoId, title, videoUrl, publishedAt, views, thumbnailUrl
input, scrapedAtThe input you supplied and collection time

How much does it cost to scrape YouTube channels?

  • $2.00 per 1,000 channels ($0.002 per channel profile, recent videos included)
  • $0.00005 per Actor start (per GB of memory)

100 channels cost about $0.20. 5,000 channels cost about $10. Failed or unresolvable channels are not charged. See the Pricing tab for current rates.

How to scrape YouTube channel data

  1. Paste channel URLs, @handles or channel IDs into Channel URLs, or one per line into the text box.
  2. Keep Include recent videos on and choose how many (maxRecentVideos, default 5), or turn it off for profiles only.
  3. Set maxChannels as a safety cap.
  4. Click Start. Download the results as CSV or Excel, or use the API.

Input example

{
"channelUrls": [
"https://www.youtube.com/@mkbhd",
"@veritasium",
"UCX6OQ3DkcsbYNE6H8uQQuVA"
],
"channelUrlsText": "https://www.youtube.com/@fireship\nhttps://www.youtube.com/@LinusTechTips",
"maxChannels": 50,
"includeRecentVideos": true,
"maxRecentVideos": 5
}

Output example

{
"channelId": "UCBJycsmduvYEL83R_U4JriQ",
"title": "Example Tech Channel",
"handle": "@exampletech",
"description": "Gadget reviews every week. Business inquiries: partnerships@example.com",
"channelUrl": "https://www.youtube.com/channel/UCBJycsmduvYEL83R_U4JriQ",
"vanityUrl": "http://www.youtube.com/@exampletech",
"rssUrl": "https://www.youtube.com/feeds/videos.xml?channel_id=UCBJycsmduvYEL83R_U4JriQ",
"subscriberCount": 1240000,
"subscriberCountText": "1.24M subscribers",
"videoCount": 812,
"videoCountText": "812 videos",
"emails": ["partnerships@example.com"],
"tags": ["tech", "reviews", "smartphones"],
"avatarUrl": "https://yt3.googleusercontent.com/example=s900-c-k",
"bannerUrl": "https://yt3.googleusercontent.com/example-banner=w2560",
"isFamilySafe": true,
"recentVideoCount": 1,
"recentVideos": [
{
"videoId": "dQw4w9WgXcQ",
"title": "The best phone of 2026?",
"videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"publishedAt": "2026-10-22T16:00:01+00:00",
"views": 853120,
"thumbnailUrl": "https://i.ytimg.com/vi/dQw4w9WgXcQ/hqdefault.jpg"
}
],
"input": "@exampletech",
"scrapedAt": "2026-10-25T12:58:47.330Z"
}

Input reference

FieldDefaultNotes
channelUrls[]Channel URLs, @handles, or UC... IDs
channelUrlsText""Same, one per line or comma-separated
maxChannels50Up to 5,000 per run
includeRecentVideostrueAdd the latest uploads to each row
maxRecentVideos50 to 50 per channel (the public feed lists up to 15)
language / countryen / USLocale for requests

Use cases: influencer lists, outreach and benchmarking

  • Influencer shortlists: paste 500 candidate handles, sort by subscriberCount, check recentVideos to see who is active.
  • Creator outreach: filter rows with a non-empty emails field to find creators who publish a business contact.
  • Competitor benchmarking: schedule a weekly run on competitor channels and track subscriber and video counts over time.
  • Lead enrichment: enrich YouTube handles from your CRM with audience size and channel description.
import os
from apify_client import ApifyClient
client = ApifyClient(os.environ["APIFY_TOKEN"])
run = client.actor("groupoject/youtube-channel-scraper-api").call(run_input={
"channelUrlsText": "@mkbhd\n@veritasium\n@fireship",
"maxRecentVideos": 3,
})
for ch in client.dataset(run["defaultDatasetId"]).iterate_items():
print(ch["title"], ch["subscriberCount"], ch["emails"])

Works with Make, Zapier, n8n and Google Sheets through the Apify integration, and with AI agents through MCP: https://mcp.apify.com?tools=groupoject/youtube-channel-scraper-api.

FAQ

Do I need a YouTube API key? No. No API key, no quota, no login.

Does it get the hidden "business email" behind YouTube's "View email address" button? No. That email is only shown to signed-in users after a CAPTCHA. This Actor extracts emails that creators write publicly in their channel description, which many creators do.

Why is subscriberCount null for some channels? Some channels hide their subscriber count. In that case YouTube does not show it publicly.

Can I search for channels by keyword? Not in this Actor. Find channels first (for example with YouTube Scraper API search results), then paste their channel URLs here.

How many recent videos can I get? Up to 15 from the public channel feed, even if maxRecentVideos is set higher.

Is scraping YouTube channels legal? The Actor collects public channel information only. Emails and names are personal data in many jurisdictions, so make sure your outreach complies with GDPR, CAN-SPAM and YouTube's terms.