YouTube Comments Scraper avatar

YouTube Comments Scraper

Pricing

Pay per usage

Go to Apify Store
YouTube Comments Scraper

YouTube Comments Scraper

Scrape YouTube comments at scale. Get comment text, replies, author details, timestamps & engagement metrics from any video. Perfect for sentiment analysis, brand monitoring, content research, engagement tracking & AI training. Structured, export-ready data.

Pricing

Pay per usage

Rating

5.0

(1)

Developer

Shahid Irfan

Shahid Irfan

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

16 days ago

Last modified

Share

Extract YouTube comments and replies from public video pages in an automated, reliable way. Collect comment text, author profile details, likes, reply counts, pinned status, creator hearts, and video metadata for research, monitoring, and audience analysis. Set your results wanted value and the actor stops collecting as soon as that number is reached.

Features

  • Results wanted limit - Save only the number of comments and replies you request.
  • Comment and reply collection - Gather top-level comments plus linked replies when available.
  • Author details - Collect names, channel IDs, channel URLs, and profile thumbnails.
  • Engagement metrics - Extract likes, reply counts, pinned status, and creator heart signals.
  • Multi-video input - Process one or more YouTube video URLs in a single run.
  • Sorting options - Collect either top comments or newest comments first.

Use Cases

Sentiment Analysis

Study how viewers react to videos, campaigns, creator posts, tutorials, music releases, product launches, or public announcements. The dataset helps you identify repeated complaints, common praise, frequent questions, and audience language around a topic.

Audience Research

Understand what a channel's viewers care about by collecting public conversations from selected videos. Use author and engagement fields to spot highly active viewers, strong advocates, repeated objections, and topics that attract replies.

Competitor Monitoring

Track public feedback on competitor videos and compare audience response across channels, products, creators, or campaigns. Comments can reveal pain points, buying objections, requested features, and content gaps.

Content Planning

Find recurring questions, jokes, phrases, and requests from real viewers. Teams can use this data to plan follow-up videos, FAQ content, product education, community replies, and support material.


Input Parameters

ParameterTypeRequiredDefaultDescription
startUrlsArrayYes[]One or more public YouTube video URLs.
maxCommentsIntegerNo20Results wanted. Maximum number of comments and replies to save across the run.
commentsSortByStringNo"1"Sorting order. Use "1" for top comments or "0" for newest first.
oldestCommentDateStringNoEmptyOptional oldest date filter, such as 2026-07-01 or 7 days.
maxConcurrencyIntegerNo5Maximum number of video pages processed in parallel.
proxyConfigObjectNoApify ProxyProxy settings used for YouTube requests.

Output Data

Each dataset item contains one comment or reply:

FieldTypeDescription
urlStringSource video URL.
pageUrlStringLoaded YouTube video page URL.
videoIdStringYouTube video ID.
titleStringVideo title when available.
commentStringPublic comment or reply text.
cidStringUnique comment identifier.
authorStringComment author's display name.
authorIdStringAuthor's YouTube channel ID.
authorUrlStringPublic author channel URL.
authorThumbnailStringAuthor profile image URL.
publishedTimeTextStringRelative publish time shown by YouTube.
publishedAtStringEstimated ISO publish timestamp when it can be normalized.
voteCountNumberLike count shown for the comment.
replyCountNumberNumber of replies shown for the parent comment.
commentsCountNumberTotal comment count shown for the video when available.
authorIsChannelOwnerBooleanWhether the author is the video owner.
hasCreatorHeartBooleanWhether the creator hearted the comment.
isPinnedBooleanWhether the comment is pinned.
typeStringcomment or reply.
replyToCidStringParent comment ID for replies.
scrapedAtStringISO timestamp when the item was saved.

Usage Examples

Collect Top Comments

Collect 100 top comments and replies from one YouTube video:

{
"startUrls": [
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
],
"maxComments": 100,
"commentsSortBy": "1"
}

Collect Newest Comments

Monitor recent viewer feedback from a video:

{
"startUrls": [
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" }
],
"maxComments": 500,
"commentsSortBy": "0"
}

Collect From Multiple Videos

Gather a fixed number of comments across several videos:

{
"startUrls": [
{ "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" },
{ "url": "https://www.youtube.com/watch?v=9bZkp7q19f0" }
],
"maxComments": 250,
"commentsSortBy": "1",
"maxConcurrency": 2
}

Sample Output

{
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"pageUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"videoId": "dQw4w9WgXcQ",
"title": "Rick Astley - Never Gonna Give You Up",
"comment": "This song still makes people smile.",
"cid": "UgxExampleCommentId",
"author": "John Doe",
"authorId": "UCExampleAuthorId",
"authorUrl": "https://www.youtube.com/channel/UCExampleAuthorId",
"authorThumbnail": "https://yt3.ggpht.com/example",
"publishedTimeText": "2 days ago",
"publishedAt": "2026-07-16T00:00:00.000Z",
"voteCount": 1420,
"replyCount": 5,
"commentsCount": 842910,
"authorIsChannelOwner": false,
"hasCreatorHeart": true,
"isPinned": false,
"type": "comment",
"replyToCid": null,
"scrapedAt": "2026-07-18T14:00:00.000Z"
}

Tips for Best Results

Set a Clear Result Limit

  • Use maxComments to control the exact number of saved items.
  • Start with 20 to 100 results for testing.
  • Increase the limit once your input URLs and sorting settings are confirmed.

Choose the Right Sorting

  • Use top comments for high-engagement audience feedback.
  • Use newest first for monitoring recent reactions.
  • Combine several videos when you need broader audience coverage.

Use Focused Video URLs

  • Public watch URLs work best.
  • Avoid private, deleted, age-restricted, or members-only videos.
  • Test one video before running large batches.

Proxy Configuration

For reliable collection, Apify Proxy is recommended:

{
"proxyConfig": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Integrations

Connect your YouTube comment data with:

  • Google Sheets - Review comments with your team.
  • Airtable - Build searchable research databases.
  • Slack - Send alerts for selected feedback workflows.
  • Webhooks - Send results to your own systems.
  • Make - Create automated reporting workflows.
  • Zapier - Trigger follow-up actions from new datasets.

Export Formats

  • JSON - For APIs and developer workflows.
  • CSV - For spreadsheets and simple analysis.
  • Excel - For business reports.
  • XML - For system integrations.

Frequently Asked Questions

How do I limit the number of collected comments?

Set maxComments to the number of results wanted. The actor stops saving new comments and replies as soon as that count is reached.

Does the limit include replies?

Yes, the limit includes both top-level comments and replies. Each saved dataset item counts as one result.

Can I scrape multiple YouTube videos at once?

Yes, add multiple video URLs to startUrls. The result limit applies across the run, so maxComments: 500 saves up to 500 total items.

Can I collect only recent comments?

Yes, set commentsSortBy to "0" for newest first. You can also use oldestCommentDate to stop when comments are older than your target date.

Why are some fields empty?

Some YouTube comments do not show every field publicly. Missing author, date, reply, or engagement values are returned as empty values when unavailable.

Is this actor suitable for monitoring audience feedback?

Yes, it is useful for collecting public comments for feedback tracking, sentiment review, content research, and community monitoring.


Support

For issues or feature requests, contact support through the Apify Console.

Resources


This actor is designed for legitimate data collection purposes. Users are responsible for ensuring compliance with website terms of service and applicable laws. Use data responsibly and respect rate limits.