
YouTube Channel Scraper
hipersoft/youtube-channel-scraper
Scrape a YouTube channel's full video list plus channel stats: video title, URL, view count, published date, duration and thumbnail, with subscriber count, total videos and description. One clean row per video as JSON, CSV or Excel.
Total users
2Monthly users
0Total runs
47Per video scraped
$0.001Last rebuilt
Oct 26, 2026Overview
Export a YouTube channel's entire video catalog plus its channel stats. Paste one or more channel links (or @handles), pick Videos, Shorts or Live streams, and get one clean row per video — title, URL, view count, published date, duration and thumbnail — alongside a channel summary with subscriber count, total videos and description. Export to JSON, CSV or Excel, or pull straight from the API.
Perfect for creator and competitor analysis, influencer research, content tracking, media monitoring, trend analysis, and building video datasets for dashboards or LLMs.
What you get
A channel summary row (optional) and one row per video:
| Field | Description |
|---|---|
type |
channel or video |
channelName / channelId / channelUrl |
The channel |
subscriberCount / subscriberCountText |
Subscribers (number + label) |
videoCount |
Total videos on the channel |
description / avatar |
Channel about text and avatar (channel row) |
videoId / url |
The video and its watch link |
title |
Video title |
viewCount / viewCountText |
Views (number + label) |
publishedText |
When it was published (e.g. "3 days ago") |
durationText / durationSeconds |
Length |
thumbnail |
Thumbnail image URL |
collectedAt |
When the row was scraped |
How to use
1. Add channels
Paste channel URLs or bare @handles:
{
"channelUrls": [
"https://www.youtube.com/@MrBeast",
"@mkbhd"
],
"tab": "videos",
"includeChannelInfo": true,
"maxItems": 500
}
2. Choose what to scrape
- Which videos — the channel's long-form Videos, Shorts, or Live streams tab.
- Include channel info row — add a summary row per channel (subscribers, total videos, description, avatar).
- Max videos — cap the total per run (0 = no limit; scrape the whole channel).
Example output
{
"type": "video",
"channelName": "MrBeast",
"channelId": "UCX6OQ3DkcsbYNE6H8uQQuVA",
"subscriberCount": 516000000,
"videoId": "v9QtM6qnG50",
"title": "I Built A City To Save Kids",
"url": "https://www.youtube.com/watch?v=v9QtM6qnG50",
"viewCount": 21000000,
"viewCountText": "21M views",
"publishedText": "13 hours ago",
"durationText": "19:03",
"durationSeconds": 1143,
"thumbnail": "https://i.ytimg.com/vi/v9QtM6qnG50/hq720.jpg",
"collectedAt": "2026-09-20T05:20:00.000Z"
}
Common use cases
- Competitor & creator analysis — compare upload cadence, view counts and top videos across channels.
- Influencer research — qualify creators by subscriber count, catalog size and average views.
- Content tracking — snapshot a channel's videos over time to measure growth.
- Trend analysis — find a niche's best-performing videos and topics.
- Datasets — build clean, structured video catalogs for analysis or model training.
Frequently asked questions
Do I need any login, account or key? No. Just paste channel links and run.
How many videos can I get? Set Max videos to whatever you need (0 = no limit) — the scraper pages through the channel's entire catalog.
Can I scrape Shorts or live streams? Yes — switch the Which videos option.
Can I scrape several channels at once? Yes — list multiple channels and they're all scraped in one run.
What format is the data? A flat table you can export as JSON, CSV or Excel, or fetch from the Apify API.
Related scrapers
Building a YouTube toolkit? Pair this with our YouTube comments scraper and YouTube video downloader, plus our other social media scrapers on Apify Store — all with the same clean, one-row-per-item output.
Input
| Field | Type | Description |
|---|---|---|
channelUrlsYouTube channels | array | One or more YouTube channels to scrape. Paste channel URLs (https://www.youtube.com/@MrBeast, /channel/UC…, /c/… or /user/…) or bare @handles. |
tabWhich videos | string · videos, shorts, streams | Scrape the channel's long-form Videos, Shorts, or Live streams tab. Default: "videos" |
includeChannelInfoInclude channel info row | boolean | Add one summary row per channel with subscriber count, total videos, description and avatar. Default: true |
maxItemsMax videos | integer | Maximum number of videos to collect per run across all channels (0 = no limit; scrape the whole channel). Default: 100 |
API
curl -X POST "https://api.apify.com/v2/acts/hipersoft~youtube-channel-scraper/run-sync-get-dataset-items?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channelUrls": [
"https://www.youtube.com/@MrBeast"
]
}'from apify_client import ApifyClient
client = ApifyClient("YOUR_APIFY_TOKEN")
run = client.actor("hipersoft/youtube-channel-scraper").call(run_input={
"channelUrls": [
"https://www.youtube.com/@MrBeast"
]
})
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
print(item)import { ApifyClient } from 'apify-client';
const client = new ApifyClient({ token: 'YOUR_APIFY_TOKEN' });
const run = await client.actor('hipersoft/youtube-channel-scraper').call({
"channelUrls": [
"https://www.youtube.com/@MrBeast"
]
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);Pricing
| Event | Price | Paid plans from |
|---|---|---|
| Video scraped Charged for each video or channel record returned. | $0.001 | $0.0005 |
You pay only for what the run returns. Set a maximum cost per run and it stops cleanly at that limit.
Related scrapers
Dribbble Shots Scraper
Scrape public design shots from Dribbble: title, high-res image, tags, likes, views and designer credit. Filter by category or sort, export JSON, CSV or Excel.
359 runs · 5 users · $0.003 / shot scrapedComputrabajo Scraper
Scrape Computrabajo job listings across Latin America (Mexico, Colombia, Argentina, Chile, Peru and more): title, company, location, salary, posted date and apply URL. Filter by country and keyword. No setup.
206 runs · 4 users · $0.002 / listing scrapedKraken Market Data Scraper
Fetch Kraken spot market data in bulk: ticker stats (ask, bid, last, 24h high/low/volume/vwap), OHLC candles for any interval, order book depth (top bids/asks), and tradable pair metadata. Fast, clean and cheap.
165 runs · 4 users · $0.001 / pair scrapedBayt Scraper
Scrape Bayt.com job listings across the Middle East (UAE, Saudi Arabia, Egypt, Qatar and more): title, company, location, posted date and apply URL. Filter by country and keyword.
134 runs · 4 users · $0.003 / job scrapedGitHub Scraper
Search GitHub and scrape repositories (stars, forks, language, topics, license, dates) or user profiles (name, company, location, bio, followers, public email, repos). Uses the GitHub REST API; optional token for higher rate limits. For developer lead generation, OSS research and recruiting.
131 runs · 7 users · $0.0008 / item scrapedHacker News Scraper
Scrape Hacker News stories, comments, Ask HN, Show HN, jobs and polls by keyword, points, comments and date range. Sort by relevance or newest. Title, URL, author, points, comment count, text and HN link. Fast clean HTTP via the HN Algolia API, no setup.
130 runs · 2 users · $0.004 / item scrapedSend the site and the fields. We build it and you get it first.