YouTube Channel Videos Scraper - Exact Views, $0.50/1K
Pricing
from $0.28 / 1,000 videos
YouTube Channel Videos Scraper - Exact Views, $0.50/1K
YouTube channel scraper: up to 5,000 videos, 2,000 Shorts and 1,000 live streams per channel with exact views, likes, comment counts, dates, description, hashtags and thumbnail, plus the channel's subscribers, country, links and join date. No API key. API and MCP. $0.50 per 1,000 videos.
Pricing
from $0.28 / 1,000 videos
Rating
0.0
(0)
Developer
Khandji Omar
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
0
Monthly active users
3 days ago
Last modified
Categories
Features
Share
YouTube Channel Videos Scraper — Exact Views, $0.50/1K
YouTube channel scraper: up to 5,000 videos, 2,000 Shorts and 1,000 live streams per channel with exact views, likes, comment counts, dates, description, hashtags and thumbnail, plus the channel's subscribers, country, links and join date. No API key. API and MCP.
Price: $0.50 per 1,000 videos ($0.0005 per video). The first 10 results of every run are free.
In short: what you give, what you get, what it costs
| You give | YouTube channels |
| We do | Read the channel's videos, Shorts and live streams, newest first |
| You get | One row per video: exact views, likes, comments, date, length, description, hashtags and thumbnail, plus the channel's subscribers, country, links and join date |
| It costs | $0.50 per 1,000 videos, no start fee. From 16 November 2026: +$0.001 per run. The first 10 results of every run are free. No supplier fee |
| It does not | Need a YouTube API key, download videos, or give transcripts (for those, use our YouTube Transcript Scraper) |
A real result row is shown further down this page.
Free tier — 10 results free on every run
The first 10 results of every run are free, on every run you ever make — not a one-off trial. One guard: the free allowance never covers more than half of a run, so the offer stays sustainable.
What you get
A real row from this Actor's latest run on Apify (2026-10-24; long texts are cut and people's names hidden here, your dataset has them in full):
{"type": "video","channel_subscribers": 523000000,"channel_handle": "(hidden here)","description": "I can't believe they actually agreed to this\n\nDownload PUBG MOBILE and enjoy the most popular mobile game with multiple gameplays. Happy...","hashtags": ["1"],"thumbnail_url": "https://i.ytimg.com/vi/AoN1K4c7VKE/hqdefault.jpg","channel_id": "UCX6OQ3DkcsbYNE6H8uQQuVA","channel_title": "MrBeast","channel_url": "http://www.youtube.com/@MrBeast","channel_description": "SUBSCRIBE FOR A COOKIE!\nNew MrBeast or MrBeast Gaming video every single Saturday at noon eastern time!\nAccomplishments:\n- Raised $20,000...","channel_links": ["https://instagram.com/mrbeast","https://twitter.com/MrBeast"],"channel_country": "United States","channel_joined_at": "2012-02-19","channel_total_views": 144353642443,"channel_video_count": 1009,"channel_avatar_url": "(hidden here)","channel_banner_url": "https://yt3.googleusercontent.com/mHMO_eEMp0dPvh0ADwXhPXNYb_GnjSVsLI8biqF1CpxT8OPl7izhNQsDPD3JHhd5y5Mg9GrP=w2560-fcrop64=1,00005a57ffffa5...","channel_is_verified": true,"video_id": "AoN1K4c7VKE","channel": "@MrBeast","title": "Survive 30 Days Stranded With Your Ex, Win $250,000","view_count": 141185423,"like_count": 2577519,"comment_count": 152000,"like_count_rounded": false,"published_at": "2026-03-07T00:00:00+00:00","url": "https://www.youtube.com/watch?v=AoN1K4c7VKE","record_id": "AoN1K4c7VKE","change_type": "new","why_it_matters": "A tracked item changed."}
Each video contains: video_id, title, view_count (exact), like_count (exact), comment_count, published_at, url, type (video, short or stream), channel, channel_handle, channel_subscribers, and on scheduled runs the view change since the last check and a flag for videos gaining views fast.
How much does it cost?
$0.0005 per video — $0.50 per 1,000. You pay only for results actually delivered.
| Videos | Cost |
|---|---|
| 1,000 | $0.50 |
| 10,000 | $5.00 |
| 100,000 | $50.00 |
- No per-run fee and no check fee.
- Failed inputs are never charged, and
maxTotalChargeUsdcan cap any run. - The first 10 results of every run are free (never more than half of a run).
- Larger Apify plans pay less per result automatically.
Input
| Field | What it does |
|---|---|
channels | Channel handles (@mkbhd), channel URLs or channel IDs. |
maxVideos | Videos per channel, 0 to 5,000. Default 30. |
maxShorts | Shorts per channel, 0 to 2,000. Default 0. |
maxStreams | Live streams per channel, 0 to 1,000. Default 0. |
sortBy | newest (default), popular or oldest: YouTube's own order on the channel page. |
oldestVideoDate | YYYY-MM-DD. Keep only what was published from this day on. |
includeChannelInfo | Add the channel's profile to every row (see below). Default off. |
maxTotalChargeUsd | Optional hard cost cap for the run. |
{"channels": ["@mkbhd"],"maxVideos": 100,"maxShorts": 50,"sortBy": "popular","includeChannelInfo": true}
Output
One row per video. Real example:
{"video_id": "rayrrXot17M","title": "Nothing Headphone 1 Pro: They Copied the Wrong Thing!","channel": "@mkbhd","view_count": 3489265,"like_count": 49433,"comment_count": 2300,"like_count_rounded": false,"published_at": "2026-09-29T01:01:35+00:00","url": "https://www.youtube.com/watch?v=rayrrXot17M","type": "video","channel_handle": "@mkbhd","channel_subscribers": 20900000}
With includeChannelInfo, every row also carries channel_id, channel_title, channel_url, channel_description, channel_links (the links on the About panel), channel_country, channel_joined_at, channel_subscribers, channel_total_views, channel_video_count, channel_avatar_url, channel_banner_url and channel_is_verified.
A channel that has no Shorts or no live streams simply returns none for that part; nothing is billed for it.
like_count_rounded is true only when YouTube shows a rounded figure (for example "12K") instead of the exact number.
Every field
| Field | What it holds |
|---|---|
type | type |
channel_subscribers | channel subscribers |
channel_handle | channel handle |
description | description |
hashtags | hashtags |
thumbnail_url | thumbnail URL |
duration | length as shown on the channel's Videos tab, 23:48 (empty for Shorts: YouTube shows none) |
duration_seconds | length in seconds |
description_links | every link written in the description, in order |
channel_id | channel ID |
channel_title | channel title |
channel_url | channel URL |
channel_description | channel description |
channel_links | channel links |
channel_country | channel country |
channel_joined_at | channel joined at |
channel_total_views | channel total views |
channel_video_count | channel video count |
channel_avatar_url | channel avatar URL |
channel_banner_url | channel banner URL |
channel_is_verified | channel is verified |
video_id | video ID |
channel | channel |
title | title |
view_count | view count |
like_count | like count |
comment_count | comment count |
like_count_rounded | like count rounded |
published_at | published at |
url | URL |
record_id | stable ID of the row (used for new-only delivery) |
change_type | new / changed / removed since your last run |
why_it_matters | one-line reason this row deserves attention |
Tips and limits
- Videos are returned newest first;
maxVideosstops at the channel's oldest upload if it has fewer. - Schedule it daily with
monitorEnabledto get only new uploads and a signal when a video's views take off.
Compared with grow_media/youtube-channel-video-scraper
Read on the Store on 2026-10-23 (Youtube Channel Video Scraper). Where it does better, this section says so.
- Built on the site's own data, not a resold scraper: no second Actor between you and the source.
- Only here (fields its Store page does not list):
change_type(new or changed since your last scheduled run);why_it_matters(one-line reading of the row). - Its fields, here too (since 2026-10-29): duration (
23:48and in seconds), links found in the description, likes, comment count, channel join date, country, subscribers, verified badge. - Also here: Shorts and live streams in the same run, channel banner, channel total views and channel links on every row.
- Where it does better: it lists the video tags; YouTube shows them to this Actor only behind a sign-in check, which it does not try to get around.
- Free results on every run and a hard cost cap (
maxTotalChargeUsd). - Price: $0.5 per 1,000 here, $1 there.
Use cases
- Creator research — how a channel's recent uploads perform.
- Competitor tracking — new videos from competitor channels.
- Influencer vetting — real, exact view counts, not rounded ones.
- Viral detection — schedule it to spot videos taking off.
Why this one
- First-party data. It reads YouTube's own public endpoints directly, with no resold scraper in between: fast, fresh and cheap.
- Clean, normalized rows plus a
RUN_SUMMARY.jsonwith counts and signals. - Hard cost cap with
maxTotalChargeUsd.
Related tools
- Want the comments on a video this channel just posted? → YouTube Comments Scraper - Likes, Replies, Date, $0.40/1K
- Don't know the channel yet? Search by topic instead. → YouTube Search Scraper - Videos, Views, $0.50/1K
How to use it in 3 steps
- Click Try for free and fill in YouTube channel handles to track (
channels). - Optional: adjust the other fields; every one has a description and a sensible default.
- Click Start and download the results as JSON, CSV or Excel, or read them from the API.
Use it from code (API)
Every Apify Actor is an API. Start a run and read the results with one call.
Python
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")run = client.actor("om_kh/youtube-channel-videos-scraper").call(run_input={"channels": ["@MrBeast", "@mkbhd"]})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
JavaScript
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_APIFY_TOKEN>' });const run = await client.actor('om_kh/youtube-channel-videos-scraper').call({"channels": ["@MrBeast","@mkbhd"]});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
One HTTP call (cURL) — runs the Actor and returns the dataset in the same response:
curl -X POST "https://api.apify.com/v2/acts/om_kh~youtube-channel-videos-scraper/run-sync-get-dataset-items?token=<YOUR_APIFY_TOKEN>" \-H "Content-Type: application/json" \-d '{"channels": ["@MrBeast", "@mkbhd"]}'
Integrations: n8n, Make, Zapier, Google Sheets
- n8n — the official Apify node, operation Run Actor and get dataset, Actor
om_kh/youtube-channel-videos-scraper. - Make — Apify › Run an Actor, then Apify › Get Dataset Items.
- Zapier — Apify › Run Actor; map the dataset items into your next step.
- Google Sheets, webhooks, Slack — add an integration from the Integrations tab of this Actor.
- Schedules — run it every hour or day from Schedules in Apify Console.
Use it from an AI agent (MCP and x402)
Connect Claude Desktop, Cursor, VS Code or any MCP client to Apify's MCP server
at https://mcp.apify.com and add this Actor, om_kh/youtube-channel-videos-scraper, as a tool — the
agent passes the same JSON as the run input and gets the dataset back.
AI agents that pay with x402 can run it too, without an Apify account: the Actor charges only per result delivered, so an agent pays exactly for what it gets.
FAQ
How many videos can I get per channel?
Up to 5,000 videos per channel with maxVideos, plus up to 2,000 Shorts (maxShorts) and 1,000 live streams (maxStreams). The default is 30 videos.
Are like counts exact?
Yes, read from each video's own page. When YouTube only shows a rounded number, like_count_rounded is true.
Is it legal to scrape YouTube? This Actor collects only publicly available YouTube data and never logs in. You are responsible for how you use it; check YouTube's terms and your local law (GDPR, CCPA) if you store personal data, and ask a lawyer if unsure.
Do I need an account, cookies or an API key? No. You only need an Apify account to run it.
What data do I get? Videos with title, views, likes and publish date. Download it as JSON, CSV, Excel, HTML or XML, or read it from the API.
Am I charged when something fails? No. An input that fails is listed with its reason in the run summary and is never charged.
Can I run it on a schedule? Yes. Create a schedule in Apify Console (hourly, daily, weekly) and connect webhooks, Google Sheets, Slack, n8n, Make or Zapier.
Can I use it from Python, JavaScript or an AI agent?
Yes: see the code samples above, or connect AI agents through MCP with the youtube_channel_videos_check tool.
All input fields
The main fields are described above; these are the others the form accepts:
currentVideos(Bring your own videos (optional)) — Optional: pass video data you already have instead of fetching it from YouTube.previousVideos(Previous videos (non-monitor mode)) — Videos from the prior run; used to identify changes when not using persistent monitor mode.sources(Declared upstream sources and estimated costs) — Declare every upstream source before this run. Each item needs name, authorization, and estimated_cost_usd.
Your feedback
Did this Actor save you time? A short review on the Reviews tab helps other people find it, and every review is read. Something missing or broken? Open an issue on the Issues tab: it is answered and fixed fast.