Youtube Channel Scraper
Pricing
Pay per event
Youtube Channel Scraper
[Fast + Cheap] YouTube Channel Scraper transforms public YouTube channels into growth-ready intelligence. The YouTube Channel scraper uncovers audience reach, content cadence, and partnership potential so your team can make confident creator decisions faster.
Pricing
Pay per event
Rating
5.0
(1)
Developer
Goldmine
Maintained by CommunityActor stats
1
Bookmarked
34
Total users
0
Monthly active users
2 days ago
Last modified
Categories
Share

Turn public YouTube channels into structured JSON. Give the scraper a list of channel URLs and get back the channel profile — description, subscriber count, video count, total views, join date, country and the external links the channel lists — together with the videos from the channel's Videos tab, each with its title, description, publish time, duration, view count, thumbnails and URL.
Key Features
- One item per channel URL: paste channel links and receive one clean record for each.
- Channel profile fields: description, join date, country and the outbound links on the About panel.
- Counts in two forms: the text YouTube renders (
21.3M subscribers) and a parsed numeric value you can sort on. - Video list per channel: the videos on the channel's Videos tab, capped by
maxVideos. - Flexible URL formats:
/@handle,/channel/UC...,/c/...and/user/...URLs are all accepted. - Run budget control:
maxItemsstops the run once enough channels have been stored. - No YouTube account required: only public channel pages are read.
- Optional proxy: runs without a proxy by default, and any Apify Proxy group can be enabled from the input.
Who Is This For
- Marketing and influencer teams building creator shortlists from channel size and activity.
- Analysts and researchers assembling datasets of channels by topic, country or audience size.
- Agencies and brands tracking the channels they sponsor or compete with.
- Developers who need YouTube channel data as JSON, CSV or Excel through the Apify API.
Common Use Cases
- Creator discovery: collect subscriber counts, view totals and upload volume for a list of candidate channels.
- Competitor monitoring: re-run on a schedule and watch how a channel's counts and recent uploads change.
- Contact research: read the external links a channel publishes on its About panel.
- Content analysis: pull recent video titles, durations and view counts for topic or format research.
- CRM and dashboard enrichment: push channel records into your own tooling through the Apify API.
Input
| Field | Type | Description | Default |
|---|---|---|---|
startUrls | array | YouTube channel URLs to scrape. Each channel produces one dataset item. | 3 example channels |
maxItems | integer | Stop after this many channels have been stored. Leave empty to scrape every start URL. | empty (no limit) |
maxVideos | integer | Maximum number of videos collected from each channel. | 50 when not set |
sortBy | string | Accepted for backwards compatibility. Videos are returned in the channel's default order on its Videos tab. | Latest |
proxyConfiguration | object | Proxy settings. Enable Apify Proxy if runs start getting blocked or you need a specific country. | no proxy |
Example input:
{"startUrls": [{ "url": "https://www.youtube.com/@MrBeast" },{ "url": "https://www.youtube.com/@mkbhd" }],"maxItems": 5,"maxVideos": 5,"proxyConfiguration": { "useApifyProxy": false }}
Output
Each dataset item describes one channel and the videos collected from it.
| Field | Type | Description |
|---|---|---|
channel.url | string | The channel URL you provided |
channel.description | string or null | Channel description |
channel.subscriberCount | string or null | Subscriber count as YouTube renders it |
channel.subscriberCountNumeric | integer or null | Subscriber count parsed into a number |
channel.videoCount | string or null | Video count as YouTube renders it |
channel.videoCountNumeric | integer or null | Video count parsed into a number |
channel.viewCount | string or null | Total view count as YouTube renders it |
channel.viewCountNumeric | integer or null | Total view count parsed into a number |
channel.joinedDate | string or null | Date the channel joined YouTube |
channel.country | string or null | Country shown on the About panel |
channel.links | array | External links with title and url |
videos | array | Videos collected from the channel |
scrapedAt | string | ISO timestamp of the run |
Each entry in videos has these fields:
| Field | Type | Description |
|---|---|---|
videoId | string | YouTube video id |
title | string | Video title |
description | string | Description snippet shown in the list |
publishedTime | string | Relative publish time, for example 2 weeks ago |
lengthText | string | Duration, for example 12:41 |
viewCount | string | View count as YouTube renders it |
thumbnails | array | Thumbnail objects with url, width and height |
url | string | Canonical video URL |
Example item, captured from a run of this Actor:
{"channel": {"url": "https://www.youtube.com/@mkbhd","links": [],"subscriberCount": "21.3M subscribers","videoCount": "1.8K videos","description": "","subscriberCountNumeric": 21300000,"videoCountNumeric": 1800},"videos": [],"scrapedAt": "2026-09-18T19:54:40.585Z"}
Pricing
This Actor is priced per result. The current price, and what counts as a result, is shown on the Pricing tab of the Actor page on the Apify Store.
FAQ
Do I need a YouTube account or API key? No. The scraper reads only public channel pages and never signs in.
Which URLs are accepted?
YouTube channel URLs in any of the usual formats: https://www.youtube.com/@MrBeast,
https://www.youtube.com/channel/UC..., /c/... and /user/.... A URL that is not a YouTube
channel URL is skipped with a warning in the run log.
How many videos do I get per channel?
As many as maxVideos allows. YouTube loads its video list in pages, so the scraper scrolls the
Videos tab until it has enough videos or the list stops growing.
Do I need a proxy? Not by default. If runs start getting blocked, or you need results as seen from a specific country, enable Apify Proxy in the input.
Why is a field null or empty?
YouTube does not show every field on every channel. When a value is not on the page it is left
empty rather than guessed.
How do I export the results? Open the run's dataset on Apify and download it as JSON, CSV, Excel or XML, or fetch it through the Apify API.
Is scraping YouTube channel pages legal? The scraper only collects publicly available channel information. You are responsible for using the data in line with applicable laws and YouTube's terms.
More Scrapers by Scraplib
- LinkedIn Company Scraper
- Google Maps Contact & Social Media Extractor
- Extract Emails from Websites
- Twitter User Timeline
- YouTube Channel Scraper
Contact & Support
Found a bug or need a new field? Open an issue on the Actor's Issues tab on the Apify Store. If this Actor saves you time, please leave a ⭐ rating on the Apify Store. Ratings keep it maintained.