Youtube Comment Scraper avatar

Youtube Comment Scraper

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Youtube Comment Scraper

Youtube Comment Scraper

Scrape YouTube video comments with full metadata. Extracts comment text, author info, likes, timestamps, pinned/hearted status, and reply threads. Supports sorting by Top comments or Newest first.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(1)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

0

Bookmarked

54

Total users

13

Monthly active users

12 days ago

Last modified

Share

Scrape YouTube video comments with full metadata including author info, likes, timestamps, pinned/hearted status, and reply threads. Supports sorting by Top comments or Newest first.

Input

FieldTypeDefaultDescription
videoUrlsarrayrequiredYouTube video URLs, short links (youtu.be), shorts URLs, or plain video IDs
maxCommentsinteger100Max top-level comments per video (1–50,000). Replies don't count toward this limit
includeRepliesbooleantrueWhether to fetch reply threads for each comment
maxRepliesPerCommentinteger5Max replies to fetch per comment (0–100)
sortBystring"top"Sort order: "top" (most relevant) or "newest" (chronological)
includeModerationStatusbooleanfalseInclude pinned/hearted status in comment output

Supported URL Formats

  • https://www.youtube.com/watch?v=dQw4w9WgXcQ
  • https://youtu.be/dQw4w9WgXcQ
  • https://www.youtube.com/shorts/dQw4w9WgXcQ
  • https://www.youtube.com/embed/dQw4w9WgXcQ
  • https://www.youtube.com/live/dQw4w9WgXcQ
  • dQw4w9WgXcQ (bare video ID)

Example Input

{
"videoUrls": [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ"
],
"maxComments": 100,
"includeReplies": true,
"maxRepliesPerComment": 5,
"sortBy": "top"
}

Output

Each row in the dataset is either a top-level comment (replyDepth: 0) or a reply (replyDepth: 1). Replies appear immediately after their parent comment.

FieldTypeDescription
commentIdstringUnique comment identifier
textstringComment text content
authorNamestringAuthor's display name
authorChannelIdstringAuthor's YouTube channel ID
authorChannelUrlstringAuthor's channel URL
authorProfileImageUrlstringAuthor's profile image URL
authorIsChannelOwnerbooleanWhether the author is the video's channel owner
likeCountintegerNumber of likes on the comment
replyCountintegerNumber of replies (top-level comments only)
replyCountTextstringReply count display text (e.g., "3 replies")
publishedTimeTextstringRelative publish time (e.g., "2 days ago")
commentUrlstringDirect link to the comment (https://www.youtube.com/watch?v=VIDEO_ID&lc=COMMENT_ID)
isHeartedbooleanWhether the creator hearted this comment
isPinnedbooleanWhether this comment is pinned
isVerifiedAuthorbooleanWhether the author's channel is verified
isCreatorbooleanAlias for authorIsChannelOwner
isArtistbooleanWhether the author is a YouTube Music artist
isReplybooleanWhether this is a reply (true) or top-level comment (false)
parentCommentIdstring/nullParent comment ID (replies only, null for top-level)
replyDepthinteger0 for top-level comments, 1 for replies
videoIdstringYouTube video ID
videoUrlstringFull video URL
videoTitlestringVideo title
videoChannelNamestringVideo channel name
videoChannelIdstringVideo channel ID
scrapedAtstringISO 8601 timestamp of when the data was scraped

Example Output

{
"commentId": "UgxB...",
"text": "Great video!",
"authorName": "John Doe",
"authorChannelId": "UCxxx...",
"authorChannelUrl": "https://www.youtube.com/@johndoe",
"authorProfileImageUrl": "https://yt3.ggpht.com/...",
"authorIsChannelOwner": false,
"likeCount": 42,
"replyCount": 3,
"publishedTimeText": "2 days ago",
"isHearted": false,
"isPinned": false,
"isReply": false,
"parentCommentId": null,
"replyDepth": 0,
"videoId": "dQw4w9WgXcQ",
"videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"videoTitle": "Rick Astley - Never Gonna Give You Up",
"videoChannelName": "Rick Astley",
"videoChannelId": "UCuAXFkgsw1L7xaCfnd5JJOw",
"scrapedAt": "2026-02-11T12:00:00.000000+00:00"
}

Use Cases

  • Sentiment analysis — collect comments on product or brand videos to measure audience sentiment at scale
  • Community research — surface recurring topics, questions, and audience insights from high-engagement videos
  • Moderation dataset building — export comment threads for ML training on toxicity detection or content moderation
  • Finding pinned announcements — quickly retrieve creator-pinned comments containing links, dates, or announcements
  • Influencer engagement benchmarking — track top-comment like counts to compare engagement quality across creators
  • Reply threading for conversation analysis — reconstruct full reply chains for discourse and community interaction studies

FAQ

Why are some comments missing? YouTube loads comments dynamically. The scraper uses the internal YouTube API but may not always see all comments on very large videos due to YouTube's server-side pagination limits.

Are replies included by default? Yes, when includeReplies=true (the default). You can set includeReplies: false or reduce maxRepliesPerComment to skip or cap reply fetching.

Does this require a YouTube API key or cookies? No. The actor uses YouTube's public InnerTube API and does not require any authentication, API keys, or cookies.

What's the difference between top and newest sort? top returns comments sorted by YouTube's relevance score (a combination of likes, pins, and reply volume). newest returns comments in reverse chronological order.

Can I scrape comments for private or age-gated videos? No. Only public videos are supported. Age-gated and private videos require a logged-in session, which this actor does not use.

YouTube Scraper Suite

This actor is part of a complete YouTube data extraction toolkit. Explore the full suite:

ActorDescription
YouTube Channel ScraperChannel metadata, subscriber counts, and full video catalogs
YouTube Channel Scraper FastStreamlined channel scraper for high-volume and speed-sensitive workflows
YouTube Comment ScraperComments, replies, likes, author info, and pinned/hearted status
YouTube Email ScraperCreator contact emails from channel pages, Instagram, TikTok, and Linktree
YouTube Hashtag ScraperVideos and Shorts tagged with specific hashtags
YouTube Playlist ScraperAll videos and metadata from any YouTube playlist
YouTube Search ScraperSearch results including videos, channels, and playlists
YouTube Shorts ScraperShorts from channels or hashtags with full view and like metadata
YouTube Transcript ScraperTimed transcripts and captions with optional Whisper AI fallback
YouTube Trending ScraperRanked trending videos by category — Gaming, Music, News, Movies
YouTube Video Details ScraperComprehensive video metadata, chapters, endscreen, captions, and comments
YouTube Video DownloaderDownload videos, playlists, and channels in any quality with metadata