๐Ÿ’ฌ YouTube Comments Scraper avatar

๐Ÿ’ฌ YouTube Comments Scraper

Pricing

from $1.40 / 1,000 results

Go to Apify Store
๐Ÿ’ฌ YouTube Comments Scraper

๐Ÿ’ฌ 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

Data Minds

Maintained by Community

Actor 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.

FieldDescription
๐Ÿ†” cid, replyToCid, typeComment ID, the parent comment ID for replies, and whether the row is a comment or a reply.
๐Ÿ’ฌ commentFull text of the comment or reply.
๐Ÿ‘ค author, authorChannelId, authorChannelUrl, authorAvatarUrlDisplay name, channel ID, channel link and avatar link of the commenter.
โœ… authorIsChannelOwner, authorIsVerifiedWhether the commenter is the video owner and whether the channel is verified.
๐Ÿ•’ publishedTimeTextPost time as YouTube shows it, for example "3 weeks ago".
๐Ÿ“… publishedTimeEstimate, publishedTimePrecision, isEditedEstimated post date, the unit the estimate is rounded to, and whether the comment was edited.
๐Ÿ‘ voteCount, voteCountTextLikes as a number and as YouTube shows them (for example "1.3K").
๐Ÿ” replyCountNumber of replies under the comment.
๐Ÿ“Œ isPinned, hasCreatorHeartWhether the comment is pinned and whether the creator hearted it.
๐ŸŽฌ videoId, pageUrl, title, commentsCountVideo ID, video link, video title and the total comment count shown on the video.
โš  isError, error, notePresent 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

  1. Add your video links to urls and set maxComments for the sample size you need.
  2. Keep includeReplies on to capture the full conversation, then use the Engagement view for likes, replies and creator hearts.
  3. Export the comment column to CSV or Excel and feed it into your sentiment tools.

๐Ÿ“ฃ Set up YouTube brand monitoring and social listening

  1. Choose NEWEST_FIRST for newest YouTube comments only, or set oldestCommentDate to 7 days for YouTube comments after a date.
  2. 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.
  3. Send the results onward with a webhook or integration.

๐Ÿ”Ž Do YouTube audience research and ad campaign comment feedback

  1. Put a product or campaign term in keyword to get YouTube comments by keyword.
  2. Set minLikes to filter YouTube comments by likes and surface the top comments for a YouTube export.
  3. Review the feedback for YouTube community management, comment moderation research or product ideas.

๐Ÿ† Compare competitors and creators

  1. List competitor or creator videos in urls.
  2. Export every row and group by videoId and author.
  3. Compare pinned comments, voteCount and replyCount for YouTube competitor analysis of comments and YouTube influencer comment analysis.

๐Ÿค– Build text datasets for AI and research

  1. Collect comments from many videos with a high maxComments.
  2. Keep authorChannelId to separate commenters, or drop author columns before use.
  3. 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?

  1. Open YouTube Comments Scraper on Apify and click Try for free.
  2. Paste one or more video links into YouTube Video URLs.
  3. Set Max comments per video and choose how to sort comments.
  4. Turn replies on or off and set Max replies per comment.
  5. Add optional filters: minimum likes, a keyword or an oldest comment date.
  6. Click Start and wait for the run to finish.
  7. 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.

PlanPrice per saved itemPer 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.

FieldTypeRequiredDescriptionDefault / example
urlsarrayYesYouTube video links or IDs to collect comments from.https://www.youtube.com/watch?v=dQw4w9WgXcQ
maxCommentsintegerNoTop-level comments to collect per video. Replies do not count. 0 means no limit (up to 100000).10
sortCommentsBystringNoTOP_COMMENTS or NEWEST_FIRST.TOP_COMMENTS
oldestCommentDatestringNoStop at comments older than this. Use YYYY-MM-DD or a number of days such as 7 days. Switches sorting to newest first.empty
includeRepliesbooleanNoAlso collect replies under each comment.true
maxRepliesPerCommentintegerNoReplies per comment thread. 0 means all replies.1
minLikesintegerNoKeep only comments and replies with at least this many likes.0
keywordstringNoKeep only comments containing this word or phrase (not case-sensitive).empty
hlstringNoLanguage code for the YouTube interface, for example en. Empty means auto-detect.empty
glstringNoRegion code, for example US. Empty means auto-detect.empty
proxyConfigurationobjectNoOptional network settings. The default works for most videos.{"useApifyProxy": false}
videoConcurrencyintegerNoVideos processed at the same time (1 to 20).3
replyConcurrencyintegerNoReply threads loaded at the same time per video (1 to 20).5
maxRetriesintegerNoRetries for a single failed request (1 to 10).3
maxScannedintegerNoComments 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 type set to reply and replyToCid set to the parent comment ID.
  • maxComments counts 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.
  • voteCount for large numbers comes from YouTube's rounded text (for example "1.3K"), so use voteCountText to see the original.
  • publishedTimeEstimate is 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_DISABLED and REQUEST_FAILED.
  • Results can differ from what you see on YouTube because of region, language and filters.

FAQ

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.

ActorUse it to
๐ŸŽฌ YouTube Transcript ScraperExtract YouTube transcripts, subtitles and captions in bulk, with channel, views, likes, keywords and description.
๐Ÿ“บ YouTube ScraperScrape YouTube videos, Shorts, streams, channels, playlists, hashtags and search results.
โšก Fast YouTube Channel ScraperScrape a YouTube channel's Videos, Shorts and Live tabs with view, like and comment counts.
๐Ÿ“ฑ YouTube Shorts ScraperExtract 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