YouTube Scraper: Channels, Search, Playlists & Shorts
Pricing
from $1.40 / 1,000 videos
YouTube Scraper: Channels, Search, Playlists & Shorts
Scrape YouTube channels, search results, playlists and Shorts. Get view and like counts, publish dates, duration, category and channel subscribers. No YouTube API key required; pay per successfully stored video result.
Pricing
from $1.40 / 1,000 videos
Rating
0.0
(0)
Developer
KO HYEONSEUNG
Maintained by CommunityActor stats
0
Bookmarked
3
Total users
1
Monthly active users
2 months ago
Last modified
Categories
Security
Limited permissionsShare
YouTube Scraper: Channels, Search & Playlists
Scrape YouTube channels, search results and playlists. Every video comes with the numbers people actually need: exact views, exact likes, publish date, category, duration, type (video, Short or live) and the channel's subscriber count.
No YouTube Data API key or Google Cloud project is required. You pay per successfully stored video result; YouTube throttling and availability can still limit a run.
Start with 10 videos
- Keep the prefilled channel, or replace it with your channel's handle. Leave Max videos at 10 for a first check.
- Review the live price and set a maximum run cost. Ten successful videos cost $0.02 at the Free-plan event rate, plus the small run-start fee described below.
- Start the run, then open Dataset → Overview. Export JSON or CSV to use the results in a spreadsheet or application.
Prefer to inspect the input first? Paste this into the Input → JSON editor:
{"channels": ["@3blue1brown"],"maxVideos": 10,"contentType": "videos","includeDescription": false}
This is a small working example, not a promise of complete channel coverage. Prices depend on your Apify plan; check the pricing table before increasing the batch.
Already have two exports? Compare them in Video Delta, our free browser-only viewer. No login or API token is needed; selected files stay in your browser. Collecting fresh data with this Actor is paid separately.
YouTube channel, search and playlist scraper: use cases
- Competitor and niche research: see a channel's latest uploads with views and likes side by side, and spot which topics outperform.
- Content strategy: search a topic and compare the top videos by views, likes, age and length before you film.
- Influencer and partner discovery: find channels that rank for a keyword, with subscriber counts and recent performance.
- Tracking: schedule a daily run on your own or rival channels and chart the views and likes over time.
- Data for AI agents: give Claude, ChatGPT or Cursor fresh YouTube stats through the Apify MCP server (see below).
YouTube video stats you get: views, likes, subscribers
| Field | Example |
|---|---|
title, url, videoId | But what is a neural network? |
viewCount | 24,223,498 (exact, not "24M") |
likeCount | 560,285 (exact) |
publishDate, uploadDate | 2017-10-05T08:11:25-07:00 |
category | Education |
durationSeconds, type | 1120, video / short / live |
channelName, channelHandle, channelUrl | 3Blue1Brown, @3blue1brown |
channelSubscribers, channelVideoCount | 8,610,000, 242 |
keywords, thumbnailUrl, description* | description when enabled |
source, position | which channel, search or playlist it came from, and its rank there |
How to scrape YouTube channel videos, search results and playlists
{"channels": ["@3blue1brown", "https://www.youtube.com/@veritasium"],"searchQueries": ["neural network explained"],"urls": ["https://www.youtube.com/playlist?list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi"],"maxVideos": 50,"contentType": "videos","includeDescription": false}
- Channels:
@handle, a channel URL,/channel/UC…,/c/…or/user/…. Uploads come newest first. - Channel content: long videos, Shorts, live streams, or everything.
- Search terms: videos in YouTube's own ranking order.
positionis the rank. - Playlists or videos: playlist URLs are expanded, and single video or Shorts URLs are taken as they are.
- Max videos: applies to each channel, search and playlist separately.
- Duplicated video IDs are processed once within a run. If the same video appears in several sources,
sourceandpositiondescribe its first occurrence, not every matching source.
Track YouTube views and likes over time
Start with a manual run and confirm that the output has the fields you need. For repeated checks, save the input as an Apify Task; you can then create a schedule yourself. Every scheduled run may incur a new charge, so set a maximum cost per run and review the schedule frequency. This Actor does not create schedules for you.
Choose the input that matches the question:
- Which new uploads are doing well? Use
channelswithmaxVideos: 10. This samples the newest uploads each time; older videos can leave the sample. - How are the same videos changing? Use a fixed
urlslist. Save each dataset before its platform retention period ends, then compare the samevideoIdacrossscrapedAttimestamps.
{"channels": [],"searchQueries": [],"urls": ["https://www.youtube.com/watch?v=aircAruvnKk","https://www.youtube.com/watch?v=IHZwWFHWa-w"],"includeDescription": false}
An explicit URL is one video; maxVideos does not truncate a list of explicit video URLs. Missing/private videos produce error rows, not zero views. Exclude error rows and missing counters from growth calculations. A lower view count can also reflect a YouTube correction, not a scraping failure. Saving a task alone does not start a run; compare costs before enabling its schedule.
Open Dataset → Video stats snapshots to export the video ID, full UTC measurement timestamp, views, likes and errors together. For a spreadsheet comparison, match videoId across two saved exports and subtract the earlier count from the later one only when both counts are present and both rows are error-free. The Actor returns snapshots; it does not calculate growth or preserve a cross-run history for you.
For a fixed-video task, clear Channels and Search terms before adding your video URLs, so the prefilled channel does not add unrelated results. The two-video example costs $0.004 at the Free-plan event rate if both videos succeed, plus the run-start fee. Replace the sample URLs with videos relevant to your work and check the live price before each run.
Compare two runs without a spreadsheet
- Use the two-video snapshot example, review its input and cost limit, and collect your first snapshot. Save its dataset export as JSON, for example
before.json. - When you want a new measurement, run the same fixed video list again and save
after.json. Two runs with two successful videos each cost $0.008 at the Free-plan event rate, plus two run-start fees. Existing exports can be compared without running or paying again. - In each run's Output tab, choose Video stats snapshots and export JSON. Keep
videoId,scrapedAt,viewCount,likeCountanderror; include every row, not just rows that succeeded. A full JSON dataset export also works. Do not use CSV, JSONL or a run-metadata response. - Open Video Delta and choose the earlier file under Before and the later file under After. Review view changes, like changes and views per elapsed day, then download the comparison as CSV if useful.
Video Delta is an optional, free companion maintained by this Actor's author, not an Apify or YouTube service. It accepts a JSON array of up to 10,000 rows and 10 MB per file. It reads the selected files locally without uploading them, connecting to your Apify account or starting a run. Its demo data is fictional. Missing counters, errors, duplicate IDs and invalid time order are flagged rather than turned into growth; decreases are preserved. It does not backfill past measurements or forecast future views. Keep your original exports: the viewer does not save them for you.
Output example (JSON)
{"videoId": "aircAruvnKk","url": "https://www.youtube.com/watch?v=aircAruvnKk","title": "But what is a neural network? | Deep learning chapter 1","type": "video","channelName": "3Blue1Brown","channelHandle": "@3blue1brown","channelId": "UCYO_jab_esuFRV4b17AJtAw","channelSubscribers": 8610000,"channelSubscribersText": "8.61M","channelVideoCount": 242,"viewCount": 24223498,"likeCount": 560285,"publishDate": "2017-10-05T08:11:25-07:00","uploadDate": "2017-10-05T08:11:25-07:00","publishedText": "8 years ago","durationSeconds": 1120,"category": "Education","keywords": [],"thumbnailUrl": "https://i.ytimg.com/vi/aircAruvnKk/hqdefault.jpg","source": "search: neural network explained","position": 1}
The dataset has Overview, Video stats snapshots and Channel stats views. You can export to JSON, CSV, Excel or HTML, or read it through the API.
Pricing: one event is one video
You pay per video scraped: one event is one video row with its stats, including exact likes (when the channel shows them), publish date, category and channel subscribers. There is no platform usage charge on top.
| Videos scraped | Free plan | Starter | Scale | Business |
|---|---|---|---|---|
| 10 (the prefilled channel) | $0.02 | $0.018 | $0.016 | $0.014 |
| 1,000 | $2.00 | $1.80 | $1.60 | $1.40 |
| 10,000 | $20 | $18 | $16 | $14 |
- Videos YouTube returns no details for (such as deleted ones) and bad links still get a row with an
error, and you are not charged for them. - A bad source does not prevent other valid sources from being processed. The final status message counts source failures. If there are errors and no successfully stored video rows, the run ends as Failed; the error rows remain available for inspection. The run-start fee can still apply.
- Each run also has a start fee of $0.00005 per GB of memory, at least $0.00005.
- Apify's Free plan includes $5 of usage a month, enough for about 2,500 videos here.
- Apify Proxy traffic, including the residential fallback, is not billed to you. If you enter your own proxy URLs, your proxy provider bills you.
- You can cap the cost of each run. Video-result writes are serialized and check the remaining video-event budget before storing a paid result. Work already in flight can still finish, but results skipped at the cost limit are not counted as successfully stored videos. The start fee can still apply, even when no video result fits within the remaining budget.
YouTube Data API alternative: no YouTube API key
This Actor does not use your YouTube Data API quota or require a Google Cloud project. It is not unlimited: YouTube rate limits, unavailable content, run timeouts and your spending limit can reduce the results returned.
YouTube scraper API and integrations
- API: start a run with your channels, search terms or playlists and read the dataset. The API tab has ready-made snippets.
- Integrations: Make, Zapier, n8n and Google Sheets through Apify integrations, and Apify schedules for daily runs.
Use it with AI agents (MCP)
AI assistants such as Claude, ChatGPT and Cursor can find and run this Actor through the Apify MCP server: they search the Store with search-actors, read the input with fetch-actor-details and start a run with call-actor. To give an agent only this tool, connect it to https://mcp.apify.com?tools=hxckya/youtube-scraper-channels-search-playlists. Because the Actor is priced per event, agents can also pay for runs with the MCP server's agentic payments.
Example prompt:
Search YouTube for "home espresso machine review", take the top 20 videos, and give me a table of title, channel, subscribers, views, likes and publish date, sorted by likes per view.
Good to know
- Only public data is collected. The Actor never logs in, and it does not collect comments or anything about viewers.
- Subscriber counts are YouTube's rounded display (for example 8.61M becomes 8,610,000), because YouTube does not show exact figures publicly.
- If a creator hides likes,
likeCountis empty. - Requests go directly to YouTube first. If YouTube asks to confirm they are not from a bot, which is common from cloud servers, the run switches to a residential proxy automatically.
- This Actor is an independent tool. It is not affiliated with, endorsed by or sponsored by YouTube or Google.
FAQ
Does it work without a YouTube Data API key?
Yes. No YouTube API key, OAuth or Google Cloud project is needed. Apify API access still uses your Apify credentials, and upstream limits can affect a run.
Can I scrape YouTube Shorts and live streams?
Yes. For channels, set Channel content to Shorts, Live streams or Everything; each row's type says video, short or live. Single Shorts URLs work too.
Can I get all videos of a channel?
Yes. Set Max videos high enough. Long videos, Shorts and live streams each come from their own list.
Does it scrape comments?
No. It returns public video and channel statistics only, without comments or anything about the people who watch.
Can I track views over time?
Yes. Create a schedule in Apify and export each run, or send it to Google Sheets.
Do I get transcripts?
Use YouTube Transcript & Subtitles Scraper for transcripts, translation and SRT/VTT.
Changelog
- 2026-09-15: Malformed encoded channel URLs no longer stop a mixed batch. Relative channel paths and international handles are accepted. Source errors are included in the final summary; all-error runs finish as Failed without charging video events. Added first-run and repeat-tracking recipes. Pricing and existing input defaults are unchanged.
- 1.0: First release. Channels (videos, Shorts, live), search and playlists; exact views, likes, publish date and category per video; channel subscribers. No charge for unavailable videos.