YouTube Scraper: Videos, Channels, Comments & Shorts
Pricing
from $0.50 / 1,000 videos
YouTube Scraper: Videos, Channels, Comments & Shorts
Get YouTube videos from searches, channels, playlists and links with exact views, likes, comment counts, dates and tags, plus channel profiles and comments. Monitor channels for new videos.
Pricing
from $0.50 / 1,000 videos
Rating
0.0
(0)
Developer
Stratum ICS
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Share
YouTube Scraper collects videos from YouTube search results, channels, playlists and video links, with exact view counts, likes, comment counts, publish dates, durations, tags and descriptions. It also saves YouTube channel profiles (subscribers, total views, video count, join date, country, links) and YouTube comments with replies, and its monitoring mode returns only the videos a channel posted since your last run.
It works as a YouTube API alternative without an API key, quota or login: you get clean rows from YouTube in JSON, CSV or Excel, and you pay only for the results you keep.
Why use this YouTube Scraper?
- Four inputs in one tool. Search terms, channels (any link form or @handle), single videos and playlists, in the same run.
- Exact numbers. Search results come with exact view counts. Turn on video details to get exact likes, the exact comment count and the publish time to the second for every video.
- Channel profiles. One row per channel with subscribers, exact total views, exact video count, join date, country, description, external links, avatar and banner.
- Comments and replies. Top or newest first, with likes, reply counts, and pinned and hearted marks. Replies come right after their comment.
- Shorts and live streams. Read a channel's Videos, Shorts and Live tabs, or search for Shorts only.
- Monitoring. Run it on a schedule with "Only new videos" on, and each run returns only what the channels posted since the last one.
- Date cut-off that really stops. Set "Only videos newer than" and channels stop reading at the first older video, with dates near the cut-off checked exactly.
- YouTube's own filters. Upload date, type (videos, Shorts, channels, playlists), duration and view-count sort, in any language and country.
- No proxy needed. It reads YouTube's own JSON data directly. If YouTube starts refusing requests, it moves just those requests to Apify datacenter proxy (part of every Apify plan) by itself.
- Fair pricing. You pay per video, per comment and per channel profile, and video details are an option you pay for only when you turn them on.
Use it for influencer and competitor research, brand monitoring, content and SEO research, market studies, lead lists of creators, and training or evaluation datasets.
What data can you get from YouTube?
| Field | Example | Notes |
|---|---|---|
title, url, videoId | I'll Save You Time: Buy the iPhone 17 | Watch link, or a /shorts/ link for Shorts |
viewCount | 580392 | Exact in searches and with details |
likeCount | 10879 | With video details |
commentCount | 834 | With details or comments |
publishedAt | 2026-08-08T12:57:22.000Z | Exact with details, otherwise from "2 months ago" |
durationSeconds | 213 | Video length |
channelName, channelHandle, channelId, channelUrl | Andrew Clare, @andrewclare | Who posted it |
subscriberCount | 114000 | YouTube rounds this itself |
description, descriptionLinks, hashtags, tags, category | Education | Full description and links with details |
isShort, isLive, isUpcoming | false | Shorts, live now, scheduled |
thumbnailUrl | https://i.ytimg.com/vi/... | Largest thumbnail |
searchQuery, sourceType, sourceInput, position | iphone 17 review, search, 4 | Where the row came from and its rank |
Channel rows add videoCount, viewCount (total views), joinedDate, country, links, avatarUrl and bannerUrl. Comment rows have author, authorChannelId, text, likes, publishedAt, isReply, parentCommentId, replyCount, isPinned and isHearted. Every row has a type field (video, channel, comment or playlist) and a scrapedAt time.
How to scrape YouTube
- Open YouTube Scraper and click Try for free (an Apify account is free to create).
- Add one or more search terms, channels, video links or playlist links.
- Set Maximum results per input (50 by default).
- Optionally pick search filters, channel tabs, video details, comments or a date cut-off.
- Click Start and wait for the run to finish: 1,000 videos from searches and channels take under a minute, and about five minutes with full details.
- Download the results as JSON, CSV, Excel or HTML, or read them through the API.
How much does it cost to scrape YouTube?
You pay per result, and Apify bills it with your usage:
| What | Price |
|---|---|
| Video (from a search, channel tab, playlist or video link) | $0.50 per 1,000 |
| Video details on top (likes, comment count, exact date, full description, tags) | $1.00 per 1,000 |
| Comment or reply | $0.50 per 1,000 |
| Channel profile | $0.002 each |
Examples: 1,000 videos from a search cost about $0.50. The same 1,000 videos with full details cost $1.50. A channel profile plus its 200 newest videos costs $0.10, and 5,000 comments cost $2.50. Video links always include details, so 100 video links cost $0.15.
The Apify Free plan includes $5 of monthly credit, enough for about 10,000 search results. Each run also has a start fee of $0.0005. You can set a maximum cost per run in the run options; the scraper stops cleanly when it is reached and never charges past it.
Input
See the Input tab for every option. The main ones:
- Search terms, Channels, Video links, Playlist links: one per line. A copied YouTube search link keeps its filters, and a link to one channel tab (youtube.com/@name/shorts) reads only that tab.
- Maximum results per input: per search term, per channel tab and per playlist. Set 0 with channels to get only the channel profiles.
- Search filters: what to search for, upload date, duration and sort order.
- Channel tabs: Videos, Shorts and Live.
- Get full video details, Get comments, Maximum comments per video, Comment order, Include replies.
- Only videos newer than: a date (2026-10-01) or a relative value (7 days).
- Only new videos (monitoring) and Monitor name.
- Language and Country.
{"searchQueries": ["iphone 17 review"],"channels": ["@mkbhd"],"videoUrls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"maxResultsPerInput": 50,"includeVideoDetails": true,"includeComments": true,"maxCommentsPerVideo": 100}
Output
You can download the dataset in various formats such as JSON, HTML, CSV, or Excel. These rows come from a real run (long values trimmed).
A video from a search, with details:
{"type": "video","videoId": "wCEMOBUTL98","url": "https://www.youtube.com/watch?v=wCEMOBUTL98","title": "I'll Save You Time: Buy the iPhone 17","description": "Here's the wallpaper I used throughout the video: https://andrewjclare.gumroad.com/l/glass ...","channelName": "Andrew Clare","channelId": "UCK7xdFCloKoUGFMGAxRhjCA","channelHandle": "@andrewclare","channelUrl": "https://www.youtube.com/@andrewclare","channelIsVerified": true,"subscriberCount": 114000,"viewCount": 580392,"likeCount": 10879,"commentCount": 834,"publishedAt": "2026-08-08T12:57:22.000Z","publishedTimeText": "2 months ago","durationSeconds": 213,"isShort": false,"isLive": false,"isUpcoming": false,"thumbnailUrl": "https://i.ytimg.com/vi/wCEMOBUTL98/hq720.jpg","tags": null,"category": "Education","hashtags": [],"descriptionLinks": ["https://andrewjclare.gumroad.com/l/glass", "https://bit.ly/4dm3Ah0", "https://www.keychron.com/products/key"],"detailsFetched": true,"sourceType": "search","searchQuery": "iphone 17 review","sourceTab": null,"sourceInput": "iphone 17 review","position": 4,"scrapedAt": "2026-10-18T01:10:14.020Z"}
A channel profile:
{"type": "channel","channelId": "UCBJycsmduvYEL83R_U4JriQ","channelName": "Marques Brownlee","channelHandle": "@mkbhd","channelUrl": "https://www.youtube.com/@mkbhd","channelIsVerified": true,"subscriberCount": 21400000,"videoCount": 1859,"viewCount": 5784034004,"joinedDate": "2008-03-21","country": "United States","links": [{ "title": "Twitter", "url": "http://twitter.com/MKBHD" }, { "title": "Instagram", "url": "http://instagram.com/MKBHD" }],"avatarUrl": "https://yt3.googleusercontent.com/qu4TmIaYUlS41-dJ9gZ7DUR3nilvmB5_11i6OKSdvNnBNiyOusZP1bMN6ICnuxtjFBb6ioKgRQ=s900-c-k-c0x00ffffff-no-rj","sourceType": "channel","sourceInput": "@mkbhd","scrapedAt": "2026-10-18T01:10:11.201Z"}
A comment:
{"type": "comment","videoId": "jNQXAC9IVRw","commentId": "UgzuC3zzpRZkjc5Qzsd4AaABAg","parentCommentId": null,"author": "@SanDiegoZoo","authorChannelId": "UCC5NfQ6Mf0dq_eEwv4P_hWA","text": "We're so honored that the first ever YouTube video was filmed here!","likes": 4800000,"publishedAt": "2020-10-18T01:51:49.786Z","publishedTimeText": "6 years ago","isReply": false,"replyCount": 986,"isPinned": true,"isHearted": true}
The SUMMARY record in the run's key-value store lists every input with its row count and any problem, such as a removed video or a channel without a Shorts tab.
How to monitor YouTube channels for new videos
- Add your channels and turn on Only new videos (monitoring).
- Give the monitor a name, for example
daily-tech. - Run it once: it returns the newest videos up to your maximum, saves each channel profile, and remembers them.
- Schedule the same input (hourly or daily) in Apify. Each run returns only videos posted since the previous one and does not repeat the profiles, so a quiet day costs almost nothing.
Upcoming premieres are left out until they go live. Use one monitor name per schedule. To watch a search term, schedule it with Only videos newer than set to the schedule's interval (for example "1 day").
Tips
- Keep costs down: leave video details off when list data is enough; set Maximum comments per video; use Only videos newer than so channels stop early.
- Exact numbers: search results already have exact views. Channel and playlist lists show YouTube's rounded views ("6.9M") until you turn on details.
- Newest first: YouTube no longer sorts searches by upload date. "Newest first" reads the results and saves them newest first, so combine it with an upload-date filter.
- Most viewed Shorts: YouTube no longer sorts Shorts by view count. With Search type Shorts, "View count" reads the results (up to twice your limit) and saves the most viewed first.
- Big searches: YouTube stops a search at about 500 to 600 results. Split broad topics into several narrower terms.
- Other languages: titles come in the chosen language when the creator translated them. Each video then takes one extra small request to read its exact date and views.
Integrations
- API: start runs and read results over the Apify API; the API tab shows ready code.
- Python:
pip install apify-client, thenfrom apify_client import ApifyClientclient = ApifyClient("<YOUR_API_TOKEN>")run = client.actor("stratumics/youtube-scraper").call(run_input={"searchQueries": ["iphone 17 review"], "maxResultsPerInput": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["viewCount"]) - JavaScript:
npm install apify-client, thenimport { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: '<YOUR_API_TOKEN>' });const run = await client.actor('stratumics/youtube-scraper').call({ channels: ['@mkbhd'], maxResultsPerInput: 50 });const { items } = await client.dataset(run.defaultDatasetId).listItems(); - Zapier, Make, n8n: use the Apify app or node to run the scraper and pass new rows to Google Sheets, Slack, Airtable or your CRM.
- AI agents: connect your agent to this scraper through the Apify MCP server (mcp.apify.com) and let it search YouTube or read channels on demand.
- Webhooks and schedules: get notified when a run finishes, or run it every hour.
FAQ
Is it legal to scrape YouTube?
Our Actors are ethical and do not extract any private user data, such as email addresses, gender, or location. They only extract what the user has chosen to share publicly. We therefore believe that our Actors, when used for ethical purposes by Apify users, are safe. However, you should be aware that your results could contain personal data. Personal data is protected by the GDPR in the European Union and by other regulations around the world. You should not scrape personal data unless you have a legitimate reason to do so. If you're unsure whether your reason is legitimate, consult your lawyers.
Comment rows include each commenter's public handle and channel id. Turn comments on only when you need them.
Can it get video transcripts or subtitles?
Not this Actor. Use our YouTube Transcript Scraper for transcripts and captions as text, timed segments, SRT or WebVTT, from videos, channels and playlists.
Do I need a proxy?
No. The scraper talks to YouTube directly. If YouTube refuses some requests, it sends just those through Apify datacenter proxy on its own; that proxy is part of every Apify plan. You can also pick your own proxy in the input.
Why are some subscriber counts and views rounded?
YouTube shows subscriber counts rounded to three digits (21.4M) everywhere, so that is the most exact figure available. Channel tabs and playlists also round views; turn on video details for the exact count.
Can it get dislikes?
No. YouTube hides dislike counts.
What happens to removed or private videos?
They are skipped, not charged, and listed in the SUMMARY record.
Where can I report a problem?
Open an issue on the Issues tab with your run link and we will look at it.
Other tools from this developer
Other tools from Stratum ICS
- App Store Reviews Scraper: Get Apple App Store reviews with star ratings, titles, text, app versions, helpful votes and developer replies, well past Apple's 500-review limit, for any country, plus app ratings.
- Google Maps Scraper: Get the businesses on Google Maps for any search and area: name, address, phone, website, rating, review count, opening hours, plus emails and social profiles.
- Google News Scraper: Get Google News articles with real publisher URLs (not Google redirects), source, date, image, author and optional full text.
- Google Play Reviews Scraper: Get Google Play reviews with star ratings, text, app versions, thumbs-up counts, developer replies and feature ratings in any language, plus app details with installs and star histogram.
- Google Trends Scraper: Get Google Trends data as JSON, CSV or Excel: interest over time, interest by region and city, related queries, and trending searches by country.
- LinkedIn Jobs Scraper: Scrape LinkedIn jobs with full descriptions, salary ranges, seniority, job type and applicant counts.
- Telegram Channel Scraper: Get messages from public Telegram channels with views, dates, media, reactions, polls and forwards, plus channel info with exact subscriber counts.
- Website Contact Scraper: Turn a list of websites into one row per company with verified emails, formatted phone numbers, social profiles (LinkedIn, Facebook, Instagram, X), address and contact page.