YouTube Comments Scraper
Pricing
from $0.29 / 1,000 comment records
YouTube Comments Scraper
Public YouTube comments scraper — one typed, null-safe row per comment with author, text, likes, replies and timestamp. Search mode finds the videos to pull comments from. No API key, no login.
Pricing
from $0.29 / 1,000 comment records
Rating
0.0
(0)
Developer
Leonardo Santos
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
9 days ago
Last modified
Categories
Share
Public YouTube comments in one typed, null-safe dataset: give it a video URL and
get the comment threads — author, text, likes, replies and timestamp, each as a
clean JSON row that maps directly onto YouTube's own public vocabulary
(commentId, videoId, publishedAt, …). A search mode finds the videos to
pull comments from. No API key, no login, no download.
Why this actor?
- Comments as data, not HTML — every comment is a typed row:
commentId,author,text,likeCount,replyCount,publishedAtplus the parent video's title, channel and URL. No DOM scraping, no selectors to break. - Typed, null-safe flat rows — absent optional fields are explicit
null, never dropped rows or crashes.*Countfields are integers, not"1.2K"strings. - Price at the floor — pay per comment (or per search video), and the platform usage is on us; there is no compute bill on top.
- Self-discovering —
searchmode returns the top matching videos so you can pick which videos to pull comments from, thendetaildoes the rest. - No upstream cost — the public comments surface needs no key and no per-comment fee; you pay only for the delivered, typed rows.
Input
{"mode": "detail","videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","maxResults": 50}
mode is required — detail (comments for one video) or search (video rows
for a keyword). videoUrl (URL or bare 11-char id) or query are required for
their mode. maxResults (default 50, hard cap 100) is the total row budget and
is enforced locally — in detail mode it is the number of top-level comments;
replies are counted, not enumerated, in v1.
Output
One row per comment (detail) or per video (search); recordType
discriminates the two:
{"recordType": "comment","commentId": "Ugx…","author": "Alice","authorChannelId": "UC…","text": "Great video! Learned a lot.","likeCount": 1200,"replyCount": 15,"videoTitle": "Never Gonna Give You Up","videoId": "dQw4w9WgXcQ","videoUrl": "https://www.youtube.com/watch?v=dQw4w9WgXcQ","channelId": "UCuAXFkgsw1L7xaCfnd5JJOw","channelName": "Rick Astley","publishedAt": "2026-09-04T…Z","error": null,"scraped_at": "2026-09-06T…Z"}
Search rows carry the video shape instead (recordType: "video", videoTitle,
viewCount, durationSeconds). Dataset views (comments, videos) split the
two shapes for you.
Pricing
Pricing
Pay per event, and the platform usage is on us — the price you see is the price you pay, with no compute bill on top.
| Event | Price | What one charge buys |
|---|---|---|
| Comment record | $0.00045 | Charged once per delivered public comment row (detail mode; one dataset row per top-level comment). Rows are charged only after they are pushed to the dataset; a missing or invalid mode/videoUrl, a video with no reachable comments, an empty search, and an upstream bot-wall/5xx/timeout are free error items and never charged. |
| Video record | $0.00045 | Charged once per delivered public video row (search mode; one dataset row per search result). Rows are charged only after they are pushed to the dataset; errors are free. |
| Actor Start | $0.002 | One run, whatever it returns. |
Higher Apify subscription tiers pay less on every event (Silver −20%, Gold −35%).
Use cases
- Engagement research — how do viewers react to a launch video? Pull the comments with likes and timestamps, no login needed.
- Community analysis — topics, sentiment and repeat commenters across your own or competitors' video libraries.
- Content repurposing — mine the questions and corrections in the comments of a video to drive follow-up content.
- LLM/MCP tooling — clean, typed JSON with YouTube-native field names; no scraping or parsing the site yourself.
FAQ
Does this actor need an API key or login? No. It reads YouTube's public comments surface; there is no upstream cost. (Reachability from datacenter IPs is gated on an on-platform probe before this actor goes live.)
Which comments does detail return? Top-level comment threads — one row per
thread, newest first as YouTube serves them. Each row carries the thread's
public reply count; enumerating replies is not part of v1.
How many rows can I get? Up to maxResults (default 50, hard cap 100). The
cap is enforced locally before/instead of trusting upstream, so you are never
billed for more than you asked for.
What is a "record" for billing? One dataset row — one comment (detail mode) or one search video (search mode), each a separate PPE event.
What happens when nothing matches? A video with no reachable comments, a
search that matches nothing, a missing mode, or an upstream bot-wall becomes a
free error item with the message in the error field — never a charged empty
success.
Is this personal data? No. Only public comment fields the author chose to publish — display name, channel id, text, counts and timestamp. No email, no contact, no account-level data.
This Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by YouTube or Google LLC. It reads only public comments and video metadata.