YouTube Video Comment & Reply Thread Scraper
Get a YouTube video's comments with nested replies attached, author identity, like counts, and pinned/hearted/verified flags, filterable by keyword and minimum likes.
Open in Apify Store$0.99 / 1K on Free
Short answer
YouTube Video Comment & Reply Thread Scraper is an Apify Store Actor for YouTube data that returns 24 published output fields, including videoTitle, videoId, commentId, authorName. It lists $0.99 per 1,000 results on the Free plan (pay per event), $0.49 on the Business plan. It takes 17 input settings, none required. It covers 2 of the 8 core YouTube fields this site tracks. Last updated Oct 24, 2026.
From the public Store listing and published build schema, synced 2026-11-12.What it returns
24 fields from the published dataset schema. Export as JSON, CSV or Excel, or read the dataset through the Apify API.
recordTypecommentIdauthorNametextlikeCountreplyCountisHeartedvideoTitleparentCommentIdrootCommentIdreplyLevelthreadPositionauthorHandlelikeCountTextreplyCountTextisPinnedheartedBycreatorRepliedpublishedTimeTextpublishedAtApproxpublishedAtPrecisionvideoIdsourceInputsourceScope
Not in the schema among the core YouTube fields: channel, views, duration, published_at, url, transcript. The field matrix shows which other tools return them.
How it differs from the other YouTube Actors
Among the 17 catalogue Actors for YouTube with a published schema, only this one returns replyCount, isHearted, replyLevel, replyCountText, isPinned, heartedBy, creatorReplied.
Pick another Actor if you need
| Actor | Fields it adds | Price / 1K |
|---|---|---|
| YouTube Search Results & Entity Type Scraper | channelName, viewCount, duration, url | $0.99 |
| YouTube Shorts Metadata Extractor for Channels & Hashtags | viewCount, duration, uploadDate, url | $0.99 |
| YouTube Channel Video Catalog & Profile Scraper | viewCount, duration, url, authorMetadata.subscriberCount | $0.99 |
| YouTube Caption & Whisper AI Transcript Extractor | channel_name, transcript_language, segment_count, success | $0.99 |
| YouTube Hashtag Video & Shorts Ranking Scraper | hashtag, url, channelName, viewCount | $0.99 |
Input
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| videoUrls | array | No | [] | Watch, youtu.be, Shorts, embed, live, v/ links, or bare 11-character IDs. Every video is normalized to a watch URL internally. |
| channelUrls | array | No | [] | Channel /videos sources: /@handle, /channel/UC..., /c/name, /user/name, a bare @handle, or a UC... channel ID. Scrapes up to Max videos per source. |
| playlistUrls | array | No | [] | Playlist sources: youtube.com/playlist?list=... or a bare playlist ID. Scrapes up to Max videos per source. |
| searchQueries | array | No | [] | YouTube search terms or search-result URLs. Only video results are used, deduplicated, up to Max videos per source. |
| maxVideosPerSource | integer | No | 20 | Discovery cap for channel, playlist and search sources. 0 = every video the source exposes. |
| maxComments | integer | No | 100 | Top-level comments to examine per video. 0 = all. Comments rejected by filters still count toward this scan cap (so restrictive filters cannot paginate forever); replies do not. Both emitted comments and replies count toward Max total rows. |
| includeReplies | boolean | No | true | Fetch reply threads. Emitted as flat rows by default; use Output mode tree to embed them instead. |
| maxRepliesPerComment | integer | No | 50 | Per-thread reply cap. 0 = all replies, stopping when the continuation token is exhausted. YouTube serves roughly 9-10 on the first reply page and 44-49 afterwards. |
| maxReplyDepth | integer | No | 1 | 0 = top-level comments only, 1 = direct replies (the shape observed publicly). Values above 1 are reserved for nested sub-threads, which YouTube has not exposed in the samples used to build this actor. |
| maxTotalRows | integer | No | 5000 | Global budget for emitted comment + reply rows. 0 = unlimited. Status rows are never counted and are not billable data rows. |
Show the other 7 settings
| Setting | Type | Required | Default | What it does |
|---|---|---|---|---|
| sortBy | string | No | top | top = YouTube relevance order; newest = chronological, recommended for date cutoffs and complete windows. A date cutoff forces newest automatically. |
| commentsSince | string | No | – | Optional cutoff as an ISO date/datetime (2026-10-16) or relative duration (7d, 24h, 30m). Forces newest sort. Pinned comments are always kept; pagination stops at the first non-pinned comment older than the cutoff. |
| keywords | array | No | [] | Case-insensitive OR filter on comment and reply text. Empty = no keyword filter. A parent comment that does not match is skipped, so its replies are not fetched. |
| minLikes | integer | No | 0 | Drop comments and replies below this like count. Applied after fetching. YouTube only exposes rounded counts (K/M), so the comparison uses the rounded value. |
| onlyCreatorHearted | boolean | No | false | Keep only comments/replies that the video creator hearted. HeartedBy identifies the creator where YouTube exposes the tooltip. |
| outputMode | string | No | flat | flat = one row per comment and reply (recommended for CSV/Excel/SQL); tree = parent rows with embedded replies[] (backward compatible); both = flat rows plus parent rows carrying replies[]. |
| emitStatusRows | boolean | No | true | Write one recordType=status row for blocked, private, unavailable, comments-off, empty-token, invalid-input, partial and budget-stop cases. Status rows are never counted toward Max total rows; disable this to keep the dataset data-only. |
Example input
Built from the input form's published example values and defaults.
{
"videoUrls": [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ"
],
"channelUrls": [],
"playlistUrls": [],
"searchQueries": [],
"maxVideosPerSource": 20,
"maxComments": 3,
"includeReplies": true,
"maxRepliesPerComment": 3,
"maxReplyDepth": 1,
"maxTotalRows": 20,
"sortBy": "top",
"keywords": [],
"minLikes": 0,
"onlyCreatorHearted": false,
"outputMode": "flat",
"emitStatusRows": true
} Run it from code or an AI agent
The same run through the Apify API, with the example input. You need an Apify API token; the run is billed to your account at the Store price.
Python
from apify_client import ApifyClient
client = ApifyClient("<YOUR_APIFY_TOKEN>")
run_input = {
"videoUrls": [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ"
],
"channelUrls": [],
"playlistUrls": [],
"searchQueries": [],
"maxVideosPerSource": 20,
"maxComments": 3,
"includeReplies": True,
"maxRepliesPerComment": 3,
"maxReplyDepth": 1,
"maxTotalRows": 20,
"sortBy": "top",
"keywords": [],
"minLikes": 0,
"onlyCreatorHearted": False,
"outputMode": "flat",
"emitStatusRows": True
}
run = client.actor("nimbryxo-studio/youtube-video-comment-and-reply-thread-scraper").call(run_input=run_input)
if run is None:
raise RuntimeError("The Actor run was not found.")
for item in client.dataset(run.default_dataset_id).iterate_items():
print(item) pip install apify-client
JavaScript
import { ApifyClient } from "apify-client";
const client = new ApifyClient({ token: "<YOUR_APIFY_TOKEN>" });
const input = {
"videoUrls": [
"https://www.youtube.com/watch?v=dQw4w9WgXcQ"
],
"channelUrls": [],
"playlistUrls": [],
"searchQueries": [],
"maxVideosPerSource": 20,
"maxComments": 3,
"includeReplies": true,
"maxRepliesPerComment": 3,
"maxReplyDepth": 1,
"maxTotalRows": 20,
"sortBy": "top",
"keywords": [],
"minLikes": 0,
"onlyCreatorHearted": false,
"outputMode": "flat",
"emitStatusRows": true
};
const run = await client.actor("nimbryxo-studio/youtube-video-comment-and-reply-thread-scraper").call(input);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items); npm install apify-client
cURL
curl -X POST "https://api.apify.com/v2/actors/nimbryxo-studio~youtube-video-comment-and-reply-thread-scraper/run-sync-get-dataset-items" -H "Authorization: Bearer $APIFY_TOKEN" -H "Content-Type: application/json" -d '{"videoUrls":["https://www.youtube.com/watch?v=dQw4w9WgXcQ"],"channelUrls":[],"playlistUrls":[],"searchQueries":[],"maxVideosPerSource":20,"maxComments":3,"includeReplies":true,"maxRepliesPerComment":3,"maxReplyDepth":1,"maxTotalRows":20,"sortBy":"top","keywords":[],"minLikes":0,"onlyCreatorHearted":false,"outputMode":"flat","emitStatusRows":true}' Waits for the run and returns the dataset items (runs over 300 seconds return HTTP 408; start an async run instead).
MCP (AI agents)
{
"mcpServers": {
"apify": {
"url": "https://mcp.apify.com?tools=nimbryxo-studio/youtube-video-comment-and-reply-thread-scraper",
"headers": {
"Authorization": "Bearer <YOUR_APIFY_TOKEN>"
}
}
}
} Adds this Actor as a tool in an MCP client that takes a remote server URL (Cursor, VS Code, Claude Code) through Apify's hosted MCP server. OAuth sign-in also works without the header. Clients that only start local servers can wrap the URL with npx mcp-remote.
What a run costs
The result rate falls on higher Apify plans. Each figure is the published per-result rate times the number of results.
| Apify plan | Per 1,000 | 10,000 results | 100,000 results |
|---|---|---|---|
| Free plan | $0.99 | $9.90 | $99 |
| Starter plan | $0.82 | $8.20 | $82 |
| Scale plan | $0.66 | $6.60 | $66 |
| Business plan | $0.49 | $4.90 | $49 |
- Every run also has a start event, charged per GB of memory (minimum one): $0.10 on Free, $0.03 on Business. At its default memory of 4 GB a run starts at $0.40 on Free. Fewer, larger runs keep this small.
- The Free plan includes $5 of monthly usage (Apify pricing, checked 2026-11-11); at the Free rate that covers at most about 5,050 results, less start events and platform usage.
- Worked example: 10,000 results in one run on the Free plan cost $10.30 ($9.90 for results + $0.40 start), plus Apify platform usage (compute), billed separately by Apify.
- Pay per event. Platform usage (compute) is billed by Apify on top of the event prices. Compare other tools in the cost estimator.
Where it fits among YouTube routes
It ranks 14 of 17 catalogue Actors for YouTube on the published formula (fields, price, reliability, freshness). Its line is highlighted on the map.
- 1 YouTube Search Results & Entity Type Scraper 42 output fields, pay per event 7 of 8 core fields
$0.99 / 1K - 2 YouTube Shorts Metadata Extractor for Channels & Hashtags 38 output fields, pay per event 7 of 8 core fields
$0.99 / 1K - 3 YouTube Channel Video Catalog & Profile Scraper 49 output fields, pay per event 6 of 8 core fields
$0.99 / 1K - 14 YouTube Video Comment & Reply Thread Scraper 24 output fields, pay per event 2 of 8 core fields
$0.99 / 1K - + 7 other Store tools, combined Reference only 8 of 8 core fields
from $0.01 / 1K - API YouTube Data API v3 Public API fields not compared
Stops are fields. A ring means the field is in that route's published output schema; no ring means the line passes without it. Bold labels are the core fields for this website, the rest are fields that differ between routes. A white capsule means every data line stops there. The red line is the official API; its field coverage is not compared. A crossed red line means there is no open official API.
Official route: YouTube Data API v3
Public API. The Data API exposes public video, channel, playlist and comment data. Each project receives a daily quota measured in units.
No per-call fee is published; the constraint is the daily quota. Extra quota is not self-serve.
Other Store tools for YouTube
Reference only, from their public listings.
| Tool | Fields | Price / 1K |
|---|---|---|
| Youtube Channel Video Scraper | 23 | $1.00 |
| YouTube Video Transcript | 25 | $5.00 |
| YouTube Scraper: Videos, Channels & Search | 14 | $0.50 |
| YouTube Video Downloader | 26 | $5.00 |
| Youtube Video/Shorts Details Scraper Pro | 7 | $0.01 |
What people use it for
- Collect comment threads
- Analyze audience responses
- Filter comments by engagement
Other catalogue Actors for YouTube
YouTube Search Results & Entity Type Scraper
Search YouTube by keyword for videos, Shorts, channels, or playlists, with view counts, duration, and channel details, filterable by upload date,…
YouTube Shorts Metadata Extractor for Channels & Hashtags
Pull Shorts from a channel's Shorts tab, a hashtag feed, or specific Shorts links, with views, likes, comment counts, upload dates and channel…
YouTube Channel Video Catalog & Profile Scraper
Get a YouTube channel's profile details (subscribers, description, links, verification) together with its video, Shorts, playlist or live-stream…
YouTube Caption & Whisper AI Transcript Extractor
Get timestamped transcripts from YouTube videos in your preferred language, with optional AI transcription for videos that have no captions at…
YouTube Hashtag Video & Shorts Ranking Scraper
Look up one or more YouTube hashtags and get the videos and Shorts currently ranked under them, in order, with view count, channel, duration and…
YouTube Trending Feed Extractor by Category & Market
Get video lists for YouTube's Gaming, Music, News, Movies and Trending sections in any of 31 regional markets, with views, duration and channel…
Similar Actors
YouTube Video Metadata & Chapter Extractor
Get full metadata for any YouTube video or Short: channel info, chapters, endscreen elements, caption track list, related videos and comments,…
TikTok Comment & Reply Thread Extractor
Pull comments and reply threads from TikTok videos by URL or post ID, with pinned/hearted-by-author flags, commenter details, and like counts. No…
YouTube Channel About, Playlists & Posts Finder
Look up a YouTube channel's About page details - subscribers, views, country, join date, links - with optional playlist and Community Post…
YouTube Channel Video Feed Quick Scraper
Quickly list any YouTube channel's videos, sorted newest, most popular or oldest, with channel subscriber count, verification and optional Shorts,…
YouTube Community Tab Post & Poll Scraper
Read a YouTube channel's Community tab and get structured records for every text post, image, poll, and shared video, with vote counts and…
YouTube Playlist Contents & Channel Playlist Finder
List every video in a YouTube playlist, or discover every public playlist a channel owns, with titles, durations, thumbnails, and playlist metadata.
Questions people ask
How much does YouTube Video Comment & Reply Thread Scraper cost?
The published result rate depends on your Apify plan: $0.99 per 1,000 on Free, $0.82 per 1,000 on Starter, $0.66 per 1,000 on Scale, $0.49 per 1,000 on Business. So 10,000 results cost about $9.90 on the Free plan and $4.90 on Business, plus a start fee of $0.10 per run per GB of memory on Free. Platform usage is billed separately.
What data does YouTube Video Comment & Reply Thread Scraper return?
Its published output schema lists 24 fields: recordType, commentId, authorName, text, likeCount, replyCount, isHearted, videoTitle, parentCommentId, rootCommentId, replyLevel, threadPosition, and 12 more. A listed field is not guaranteed to be filled in every row.
What input does YouTube Video Comment & Reply Thread Scraper need?
No input is strictly required; the defaults run as is. Common settings: videoUrls, channelUrls, playlistUrls, searchQueries, maxVideosPerSource, maxComments.
What are the alternatives to YouTube Video Comment & Reply Thread Scraper for YouTube?
17 catalogue Actors cover YouTube. Close alternatives: YouTube Search Results & Entity Type Scraper; YouTube Shorts Metadata Extractor for Channels & Hashtags; YouTube Channel Video Catalog & Profile Scraper. The YouTube page compares all of them field by field.
How do I run YouTube Video Comment & Reply Thread Scraper from Python or the API?
Use the Apify API client: in Python, ApifyClient(token).actor("nimbryxo-studio/youtube-video-comment-and-reply-thread-scraper").call(run_input=...), then read the run's default dataset (run.default_dataset_id); in JavaScript the same call is client.actor("nimbryxo-studio/youtube-video-comment-and-reply-thread-scraper").call(input). Without a client, POST the input JSON to https://api.apify.com/v2/actors/nimbryxo-studio~youtube-video-comment-and-reply-thread-scraper/run-sync-get-dataset-items with your API token. Ready-to-paste code with the example input is on this page.
Sources
- YouTube Video Comment & Reply Thread Scraper on Apify Store
- Published build with input and output schema (JSON)
- YouTube Data API v3 documentation
Cite this page
Scraper Finder. "YouTube Video Comment & Reply Thread Scraper." https://scraperfinder.com/catalogue/youtube-video-comment-and-reply-thread-scraper/ (data checked 2026-11-12).
Run YouTube Video Comment & Reply Thread Scraper
$0.99 per 1,000 results. Paste the example input above, set your YouTube query, then export the dataset. Still choosing? Compare every YouTube route.