YouTube Channel Scraper - Videos, Streams & Channel Stats
Pricing
from $0.80 / 1,000 videos
YouTube Channel Scraper - Videos, Streams & Channel Stats
Get all videos of a YouTube channel with exact views, likes, comment count and publish date, plus live streams and channel stats: subscribers, total views, video count, country, joined date and links. By @handle or URL, no API key. $0.80 per 1,000 videos; failed inputs are free.
Pricing
from $0.80 / 1,000 videos
Rating
0.0
(0)
Developer
Tenfold Fleet
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
a day ago
Last modified
Categories
Share
What does YouTube Channel Scraper do?
YouTube Channel Scraper gets every video of a YouTube channel from YouTube with exact view counts, exact like counts, exact comment counts and the real publish date (for example 2026-10-03, not "6 days ago"). It also returns the channel's live streams (live now, upcoming and past) and one row of channel stats: subscribers, exact total views, exact video count, description, country, joined date, links, avatar and banner.
Give it channel @handles, channel URLs or channel IDs. It works like a YouTube channel API with no API key, no quota and no login, on plain HTTP requests (no browser). $0.80 per 1,000 videos, and channels that can't be found are free.
Why use this YouTube channel scraper?
- 🎯 Exact numbers, not rounded ones: most channel scrapers give only a relative date like "6 days ago" and no like or comment counts. This one returns
207578319views,3555568likes,131706comments and2026-10-03, so you can compute engagement rates and posting schedules. - 📈 Competitor and creator research: find a channel's most popular videos (sort by Popular), how often it uploads and how its views develop.
- 🤝 Influencer marketing: compare subscribers, total views, likes per view and comments per view across creators before you reach out.
- 🔴 Live stream tracking: list upcoming streams with their scheduled time, streams that are live now with concurrent viewers, and past streams with their views.
- 🧠 AI and data pipelines: feed titles, full descriptions and hashtags into an LLM, a dashboard or a spreadsheet.
- 🗓️ Monitoring: schedule a daily run with Published after set to "2 days" and collect only the new uploads.
Runs on the Apify platform, so you get an API, scheduling, webhooks and integrations with Make, Zapier, n8n and Google Sheets. It also works as an MCP tool for AI agents through the Apify MCP server.
What data can it extract?
Video and stream rows (type: video or stream):
| Field | Example |
|---|---|
videoId, url | plN7JMbadRg, https://www.youtube.com/watch?v=plN7JMbadRg |
title | Eat Everything In A Grocery Store, Win $1,000,000 |
viewCount, viewCountText | 207578319 (exact), 207M views |
likeCount, commentCount | 3555568, 131706 (null when comments are off) |
publishedAt, publishedTimeText | 2026-10-03, 6 days ago |
durationSec, durationText | 3479, 57:59 |
isLive, isUpcoming, concurrentViewers, scheduledStartText | live and scheduled streams |
isMembersOnly | true for members-only videos (YouTube hides their view count) |
description, hashtags | full description; hashtags from title and description |
thumbnailUrl | https://i.ytimg.com/vi/plN7JMbadRg/hqdefault.jpg |
channelId, channelName, channelHandle, channelSubscriberCountText | UCX6OQ3DkcsbYNE6H8uQQuVA, MrBeast, @MrBeast, 520M subscribers |
detailsFetched | true when the exact numbers were loaded |
Channel rows (type: channel):
| Field | Example |
|---|---|
channelId, channelName, channelHandle, url | UCX6OQ3DkcsbYNE6H8uQQuVA, MrBeast, @MrBeast, https://www.youtube.com/@MrBeast |
subscriberCount, subscriberCountText | 520000000, 520M subscribers (YouTube only shows a rounded count) |
viewCount | 142153736720 (exact total channel views) |
videoCount | 1006 (exact) |
description, country, joinedDate | full description, United States, 2012-02-19 |
links | [{"title": "Twitter", "url": "https://twitter.com/MrBeast"}] (real targets, not youtube.com/redirect links) |
isVerified, avatarUrl, bannerUrl, keywords | verified badge, images, channel keywords |
How to scrape a YouTube channel
- Click Try for free.
- Add channels:
@MrBeast,https://www.youtube.com/@NASA,/channel/UC...,/c/...or/user/...URLs, or channel IDs. - Set Max videos per channel (default 50) and, if you want live streams, Max live streams per channel.
- Pick Sort videos by: Newest, Most popular or Oldest first. Optionally set Published after (
2026-09-01or30 days). - Leave Fetch exact views, likes, comments and date on for exact numbers, or turn it off for a faster list with rounded values (same price).
- Click Start, then download the results as JSON, CSV, Excel or HTML, or read them through the API.
Call it from the API
curl -X POST "https://api.apify.com/v2/acts/tenfoldfleet~youtube-channel-scraper/run-sync-get-dataset-items" \-H "Authorization: Bearer $APIFY_TOKEN" \-H "Content-Type: application/json" \-d '{"channelUrls": ["@MrBeast"], "maxVideosPerChannel": 20, "sortBy": "popular"}'
How much does it cost to scrape a YouTube channel?
You pay per result: $0.80 per 1,000 videos or streams ($0.0008 each) and $0.0008 per channel stats row, plus a tiny $0.00005 per run start. Exact details cost the same as the quick list. A channel that doesn't exist, a channel without videos or a missing Live tab is not charged, and neither are videos dropped by Published after. Set Max results in total or a max cost per run and the scraper stops there.
Input
{"channelUrls": ["@MrBeast", "https://www.youtube.com/@NASA"],"maxVideosPerChannel": 50,"maxStreamsPerChannel": 5,"includeChannelInfo": true,"sortBy": "newest","publishedAfter": "2026-09-01","fetchExactDetails": true,"maxItems": 0}
Output
{"type": "video","videoId": "plN7JMbadRg","url": "https://www.youtube.com/watch?v=plN7JMbadRg","title": "Eat Everything In A Grocery Store, Win $1,000,000","viewCount": 207578319,"viewCountText": "207M views","likeCount": 3555568,"commentCount": 131706,"publishedAt": "2026-10-03","publishedTimeText": "6 days ago","durationSec": 3479,"durationText": "57:59","isLive": false,"isUpcoming": false,"isMembersOnly": false,"concurrentViewers": null,"scheduledStartText": null,"description": "I trapped 4 strangers in an entire supermarket ...","hashtags": [],"thumbnailUrl": "https://i.ytimg.com/vi/plN7JMbadRg/hqdefault.jpg","channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA","channelName": "MrBeast","channelHandle": "@MrBeast","channelSubscriberCountText": "520M subscribers","sourceInput": "@MrBeast","detailsFetched": true,"scrapedAt": "2026-10-10T03:37:09.112Z"}
Inputs that fail come back as free rows with input, reason (channel_not_found, no_videos_tab, no_videos, no_streams_tab, no_streams, invalid_input, blocked) and error. The dataset has two views: Videos and streams and Channels. Download everything as JSON, CSV, Excel or HTML.
Tips
- Shorts are not included. For a channel's Shorts with views, likes and hashtags, use our YouTube Shorts Scraper.
- For the comments of the videos you found, use our YouTube Comments Scraper; for their captions, our YouTube Transcript Scraper.
- Published after is exact when exact details are on. With them off, it relies on YouTube's rounded "2 months ago" text, so it can include videos up to one week, month or year older than your date. With Newest first the scraper stops at the cutoff; with other orders it skips older videos but still pages through the channel.
- Set Max videos per channel to 0 and keep Channel stats on to get channel stats only, for example for a list of influencers.
- The same video found through two inputs is returned (and charged) once.
- If an exact-details lookup fails after retries, you still get the video's title, rounded views, age and duration with
detailsFetched: false.
FAQ
Do I need a YouTube API key or account?
No. The scraper reads public YouTube pages. No login, cookies or API quota.
Are the view, like and comment counts exact?
Yes, with Fetch exact views, likes, comments and date on (the default). Subscriber counts are always rounded, because YouTube itself only shows 520M subscribers.
Can I get a channel's most popular videos?
Yes. Set Sort videos by to Most popular first. Oldest first gives a channel's first uploads.
Does it scrape live streams?
Yes. Set Max live streams per channel above 0 to read the channel's Live tab: streams that are live now (with concurrent viewers), upcoming streams (with their scheduled time) and past streams. Channels without a Live tab return a free no_streams_tab row.
How many videos can it get from one channel?
All of them: set Max videos per channel as high as you need (up to 100,000 per channel). With exact details on it saves about 3 videos per second, so 1,000 videos take about 5 minutes; for very large channels raise the run timeout (default 1 hour) or turn exact details off for a much faster list. A run that nears its timeout stops 2 minutes early and keeps everything collected so far.
Disclaimer
This scraper collects public data only. It does not access private videos, accounts or personal data beyond what channels publish themselves. Make sure your use of the data complies with YouTube's Terms of Service and the laws that apply to you, such as GDPR.