๐ฌ YouTube Comments Scraper
Pricing
from $1.40 / 1,000 results
๐ฌ YouTube Comments Scraper
YouTube Comments Scraper: pull video comments and replies in real time โ author, text, likes, pinned, hearted, verified & publish date. Ideal for sentiment analysis, brand monitoring & NLP. No YouTube API key or quota. Stream results to your Apify dataset.
Pricing
from $1.40 / 1,000 results
Rating
0.0
(0)
Developer
Data Minds
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
19 hours ago
Last modified
Categories
Share
YouTube Comments Scraper is an Apify Actor and YouTube comments scraper that extracts comments and replies from public YouTube videos, including Shorts links. Paste video links and get one dataset row per comment with author, text, likes, reply count, pinned and creator-heart flags and an estimated post date. No API key, cookies or login needed. Pay per saved item: from $1.40 per 1,000 on the Gold plan, $2.00 per 1,000 on the Free plan. ๐ฌ Try it free
What can YouTube Comments Scraper do?
- ๐ฌ Scrape YouTube comments and replies from many videos in a single run, saved one item per comment or reply.
- ๐ Sort by top or newest comments, filter by minimum likes or a keyword, and set an optional cutoff date.
- ๐ No API key needed to get YouTube comments: you only paste video links.
- ๐ Six ready-made dataset views: Overview, Comments, Authors, Engagement, Video source and Errors.
- ๐ Language and region options if you want the YouTube interface served in a specific language or country.
- ๐ฅ Download YouTube comments with a YouTube comments downloader and exporter: JSON, CSV, Excel, API, schedules and webhooks.
- ๐งฐ An online YouTube comments scraper tool and bulk YouTube comment scraper: many videos in one run.
- ๐งฒ A YouTube comment extractor and YouTube comment data extractor for threads, authors and engagement.
What data can I extract from YouTube?
Each saved comment or reply is one row with these fields. Rows for videos that could not be processed carry the error fields at the bottom of the table instead.
| Field | Description |
|---|---|
๐ cid, replyToCid, type | Comment ID, the parent comment ID for replies, and whether the row is a comment or a reply. |
๐ฌ comment | Full text of the comment or reply. |
๐ค author, authorChannelId, authorChannelUrl, authorAvatarUrl | Display name, channel ID, channel link and avatar link of the commenter. |
โ
authorIsChannelOwner, authorIsVerified | Whether the commenter is the video owner and whether the channel is verified. |
๐ publishedTimeText | Post time as YouTube shows it, for example "3 weeks ago". |
๐
publishedTimeEstimate, publishedTimePrecision, isEdited | Estimated post date, the unit the estimate is rounded to, and whether the comment was edited. |
๐ voteCount, voteCountText | Likes as a number and as YouTube shows them (for example "1.3K"). |
๐ replyCount | Number of replies under the comment. |
๐ isPinned, hasCreatorHeart | Whether the comment is pinned and whether the creator hearted it. |
๐ฌ videoId, pageUrl, title, commentsCount | Video ID, video link, video title and the total comment count shown on the video. |
โ isError, error, note | Present on failed-video rows: an error flag, an error code and a plain reason. |
Use it as a YouTube comments scraper for analysis, or for a YouTube comments spreadsheet export. Only public data is collected. Private videos and videos with comments turned off return no comment rows.
What can you do with the data from YouTube?
๐ฏ Run YouTube comment sentiment analysis and engagement analysis
- Add your video links to
urlsand setmaxCommentsfor the sample size you need. - Keep
includeReplieson to capture the full conversation, then use the Engagement view for likes, replies and creator hearts. - Export the
commentcolumn to CSV or Excel and feed it into your sentiment tools.
๐ฃ Set up YouTube brand monitoring and social listening
- Choose
NEWEST_FIRSTfor newest YouTube comments only, or setoldestCommentDateto7 daysfor YouTube comments after a date. - Schedule YouTube comment collection on Apify and list every video you track in
urls, so one run gets YouTube comments for a list of videos. - Send the results onward with a webhook or integration.
๐ Do YouTube audience research and ad campaign comment feedback
- Put a product or campaign term in
keywordto get YouTube comments by keyword. - Set
minLikesto filter YouTube comments by likes and surface the top comments for a YouTube export. - Review the feedback for YouTube community management, comment moderation research or product ideas.
๐ Compare competitors and creators
- List competitor or creator videos in
urls. - Export every row and group by
videoIdandauthor. - Compare pinned comments,
voteCountandreplyCountfor YouTube competitor analysis of comments and YouTube influencer comment analysis.
๐ค Build text datasets for AI and research
- Collect comments from many videos with a high
maxComments. - Keep
authorChannelIdto separate commenters, or drop author columns before use. - Export JSON as NLP training data from YouTube comments or as an LLM dataset from YouTube comments, or for academic research.
How do I use YouTube Comments Scraper?
- Open YouTube Comments Scraper on Apify and click Try for free.
- Paste one or more video links into YouTube Video URLs.
- Set Max comments per video and choose how to sort comments.
- Turn replies on or off and set Max replies per comment.
- Add optional filters: minimum likes, a keyword or an oldest comment date.
- Click Start and wait for the run to finish.
- Open the Output or Dataset tab and export as JSON, CSV or Excel.
How much does it cost to scrape YouTube comments?
YouTube Comments Scraper uses pay-per-event pricing: you pay for each comment or reply saved to the dataset, and platform usage is billed in addition. Failed-video rows are not charged.
| Plan | Price per saved item | Per 1,000 items |
|---|---|---|
| ๐ Free | $0.002 | $2.00 |
| ๐ฅ Bronze | $0.0018 | $1.80 |
| ๐ฅ Silver | $0.0016 | $1.60 |
| ๐ฅ Gold, Platinum and Diamond | $0.0014 | $1.40 |
Each run also has an Actor start event of $0.00005 per GB of memory, with a minimum of one event. The default memory is 1 GB, so one start event costs $0.00005.
Worked example: saving 1,000 comments and replies on the Free plan costs 1,000 x $0.002 = $2.00, plus $0.00005 for the start event, about $2.00005 before platform usage. On the Gold plan, 10,000 items cost 10,000 x $0.0014 = $14.00 plus the start event.
Replies are saved and charged as separate items, so a high maxRepliesPerComment raises the item count. You can set a maximum spend per run in Apify; the run stops cleanly when it is reached and keeps everything saved so far.
Is scraping YouTube comments free?
You can start the Actor with a free Apify account, but each saved comment or reply is charged at your plan's price, from $0.002 on the Free plan. Videos that fail, such as private videos or videos with comments off, produce error rows that are not charged. Platform usage is billed in addition.
How much does YouTube Comments Scraper cost per 1,000 results?
One thousand saved comments or replies cost $2.00 on the Free plan, $1.80 on Bronze, $1.60 on Silver and $1.40 on Gold, Platinum and Diamond. Each run adds one $0.00005 start event at the default 1 GB of memory, and platform usage is billed in addition.
Input
Give YouTube Comments Scraper one or more video links and optional filters. Only urls is required. Watch links, youtu.be links, Shorts links and plain 11-character video IDs are accepted, and duplicate videos are skipped. Entries that are not valid video links produce an uncharged error row.
| Field | Type | Required | Description | Default / example |
|---|---|---|---|---|
urls | array | Yes | YouTube video links or IDs to collect comments from. | https://www.youtube.com/watch?v=dQw4w9WgXcQ |
maxComments | integer | No | Top-level comments to collect per video. Replies do not count. 0 means no limit (up to 100000). | 10 |
sortCommentsBy | string | No | TOP_COMMENTS or NEWEST_FIRST. | TOP_COMMENTS |
oldestCommentDate | string | No | Stop at comments older than this. Use YYYY-MM-DD or a number of days such as 7 days. Switches sorting to newest first. | empty |
includeReplies | boolean | No | Also collect replies under each comment. | true |
maxRepliesPerComment | integer | No | Replies per comment thread. 0 means all replies. | 1 |
minLikes | integer | No | Keep only comments and replies with at least this many likes. | 0 |
keyword | string | No | Keep only comments containing this word or phrase (not case-sensitive). | empty |
hl | string | No | Language code for the YouTube interface, for example en. Empty means auto-detect. | empty |
gl | string | No | Region code, for example US. Empty means auto-detect. | empty |
proxyConfiguration | object | No | Optional network settings. The default works for most videos. | {"useApifyProxy": false} |
videoConcurrency | integer | No | Videos processed at the same time (1 to 20). | 3 |
replyConcurrency | integer | No | Reply threads loaded at the same time per video (1 to 20). | 5 |
maxRetries | integer | No | Retries for a single failed request (1 to 10). | 3 |
maxScanned | integer | No | Comments examined per video before stopping when filters are narrow. 0 means no limit. | 20000 |
Example input:
{"urls": ["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"maxComments": 50,"sortCommentsBy": "NEWEST_FIRST","includeReplies": true,"maxRepliesPerComment": 3,"minLikes": 1,"keyword": "tutorial"}
Comment dates are estimated from the relative text YouTube shows. The estimate is supported when the interface language is English, so set hl to en if you rely on oldestCommentDate.
Output
Results are saved to the Apify dataset as the run progresses, one item per comment or reply. The Output tab offers six views: Overview, Comments, Authors, Engagement, Video source and Errors. Export the dataset as JSON, CSV, Excel, XML or HTML from the Console or the API. A run summary is also saved as the run-summary record in the key-value store.
Comment or reply row (sample values):
{"cid": "UgxExampleCommentId123","replyToCid": null,"type": "comment","publishedTimeText": "3 weeks ago","publishedTimeEstimate": "2026-09-26","publishedTimePrecision": "week","isEdited": false,"comment": "Example comment text.","author": "@example-user","authorChannelId": "UCexampleChannelId000000","authorChannelUrl": "https://example.com/@example-user","authorAvatarUrl": "https://example.com/avatar.jpg","authorIsChannelOwner": false,"authorIsVerified": false,"isPinned": false,"replyCount": 2,"voteCount": 1300,"voteCountText": "1.3K","hasCreatorHeart": true,"videoId": "abcdEFGh123","pageUrl": "https://example.com/watch?v=abcdEFGh123","commentsCount": 4200,"title": "Example video title","isError": false}
Failed-video row (sample values):
{"isError": true,"error": "COMMENTS_DISABLED","note": "Comments are disabled (or hidden) for this video.","videoId": "abcdEFGh123","pageUrl": "https://example.com/watch?v=abcdEFGh123"}
The run summary record includes videosQueued, videosProcessed, videosFailed, commentsSaved, repliesSaved, pinnedComments, creatorHearted and elapsedSeconds.
Notes and limitations
- As a YouTube comment replies extractor and comment collector, reply rows have
typeset toreplyandreplyToCidset to the parent comment ID. maxCommentscounts top-level comments only; replies are collected on top of it.- Filters (
minLikes,keyword) apply to replies too, and replies are loaded only for comments that pass the filters. voteCountfor large numbers comes from YouTube's rounded text (for example "1.3K"), so usevoteCountTextto see the original.publishedTimeEstimateis an approximation based on the relative time and is empty when the text cannot be read.- Error codes are
INVALID_INPUT,NO_VALID_START_URLS,VIDEO_UNAVAILABLE,COMMENTS_DISABLEDandREQUEST_FAILED. - Results can differ from what you see on YouTube because of region, language and filters.
FAQ
Is it legal to scrape YouTube comments?
YouTube Comments Scraper collects only public comment data that any visitor can see. Whether your use is lawful depends on your purpose, local laws such as GDPR or CCPA, and YouTube's terms. This is not legal advice. Read Apify's overview at https://blog.apify.com/is-web-scraping-legal/ and consult a lawyer.
Do I need a YouTube account, cookies or an API key?
No. You only paste video links. The input has no field for a Google login, cookies or API key, so you can get YouTube comments without an API key and without signing in. This makes the Actor a practical alternative when you want comment data without setting up the YouTube Data API yourself.
How many comments can I scrape from a YouTube video?
To download all comments from a YouTube video, set maxComments to 0 for no limit, or choose 1 to 100000 per video. Replies are collected on top of that number, controlled by maxRepliesPerComment. The default is 10 comments and 1 reply per comment. Speed depends on the video and your settings, so test with a small sample first.
Why are YouTube comments missing from my export or fewer than expected?
Common causes: comments are disabled, the video is private or region-blocked, or your minLikes, keyword or oldestCommentDate filters removed rows. The run also stops at maxScanned examined comments, at your spending limit, or when maxComments is reached. Check the Errors view and the run log for the reason.
Can I export YouTube comments to CSV, Excel or JSON?
Yes. Open the Dataset tab after the run and download the results as CSV, Excel, JSON, XML or HTML. You can also fetch them through the Apify API. The Overview view gives a compact table, while the Comments and Authors views separate thread details from commenter details for spreadsheet work.
Can I schedule runs, use webhooks or integrations?
Yes. Apify lets you schedule runs, trigger webhooks when a run finishes and connect results to tools such as Make or n8n. To monitor new YouTube comments, sort by newest first, set oldestCommentDate to a recent window such as 7 days, and run the Actor on a schedule.
Can I use YouTube Comments Scraper with the Apify API or an MCP server?
Yes. You can start runs and read the dataset through the Apify API, and connect the Actor to AI assistants through Apify's MCP server. The API tab of this Actor shows ready-made request examples, and the full reference is at https://docs.apify.com/api/v2. Input and output work the same way as in the Console.
Why are the comment dates only estimates?
YouTube shows comment age as relative text such as "3 weeks ago", not an exact timestamp. The Actor converts this into publishedTimeEstimate and reports the unit in publishedTimePrecision, so a "month" estimate can be off by roughly two weeks. Estimates are supported when the interface language is English.
YouTube Comments Scraper not working?
First check the run log and the Errors view for the video link and reason. Private, deleted or region-blocked videos and videos with comments turned off cannot return comments. If a public video with comments fails repeatedly, open the Issues tab of this Actor with the video link and the run link, and we will look into it.
Related Actors
| Actor | Use it to |
|---|---|
| ๐ฌ YouTube Transcript Scraper | Extract YouTube transcripts, subtitles and captions in bulk, with channel, views, likes, keywords and description. |
| ๐บ YouTube Scraper | Scrape YouTube videos, Shorts, streams, channels, playlists, hashtags and search results. |
| โก Fast YouTube Channel Scraper | Scrape a YouTube channel's Videos, Shorts and Live tabs with view, like and comment counts. |
| ๐ฑ YouTube Shorts Scraper | Extract YouTube Shorts from any channel with views, likes, comments, hashtags and channel details. |
Support and disclaimer
Found a bug or need a feature? Open an issue in the Issues tab. For custom solutions, integrations or questions, contact hello.dataminds@gmail.com. YouTube Comments Scraper is independent and not affiliated with YouTube or Google; trademarks belong to their owners. It collects publicly available data, and you are responsible for complying with applicable laws and the platform's terms.
Last updated: 2026-10-17